Responsibilities
- Analyze runtime performance of the application layer and identify potential resource contentions
- Optimize compute usage to fit within embedded platform constraints without sacrificing algorithm accuracy or latency
- Profile and tune performance on embedded targets under real-world operating conditions
- Collaborate closely with ML runtime optimization engineers to ensure smooth model inference execution within the stack
- Proactively design for contention avoidance and thread safety through code reviews and software architecture reviews; propose single threaded lock-free approaches where appropriate
- Deploy and validate production code on QNX, Linux-based embedded, or similar RTOS platforms
- Contribute to improving system-wide runtime, latency, and performance monitoring tools
Requirements
- Bachelors or Masters in Electrical Engineering or Computer Science or a related field
- 5+ years of experience in software development
- Strong C++ development skills with a focus on runtime performance
- Experience profiling CPU, GPU, and memory usage performance on constrained compute
- Proven ability to debug complex runtime issues and resolve onboard resource contention
Nice to have
- Exposure to ML models and runtime frameworks (PyTorch, ONNX, TensorRT)
- Experience with memory-constrained deployments and concurrent scheduling
- Prior experience with autonomous driving software stacks
- Scripting experience for performance profiling and automation
Compensation
Base salary range: $199,295-$264,500 USD annually (full-time position). Total compensation may include equity, comprehensive health/dental/vision insurance, 401k with employer match, learning/wellness stipends, and paid time off.