Remote job
Senior Perception Software Engineer
Job details
About this role
Role overview
A senior perception software engineer develops and productizes perception components for autonomous systems. The role spans the software lifecycle, from design and implementation through integration, verification, debugging, and deployment of deep neural network models to embedded platforms.
Responsibilities
- Design, implement, and integrate perception software into functional systems. - Deploy perception neural network models to embedded platforms and improve their robustness, efficiency, and reusability. - Write testable code, develop verification plans, and contribute to quality assurance. - Analyze system performance using real and synthetic benchmark data, then debug and improve existing software. - Document requirements and software behavior, and keep delivery aligned with project plans and engineering standards.
Requirements
- Bachelor’s, master’s, or doctoral degree in computer science or a related field, or equivalent experience. - 12+ years of software engineering experience on embedded platforms for real-time applications. - Strong C++ and Python programming skills. - Experience with test-driven development and disciplined, design-based software development. - Familiarity with software engineering tools, requirements documentation, and cross-functional collaboration.
Nice to have
- CUDA or SIMD experience. - Hands-on deployment of deep learning models for real-time embedded applications, including work with frameworks such as TensorFlow or PyTorch. - Experience using simulated data to improve model accuracy or integrating and testing software on hardware or robotic platforms.