Senior Software Engineer, Onboard Autonomy
Job description
About the role
Join our engineering group to build the core software systems that power autonomous vehicle navigation. You will design and implement high-performance code that enables robots to operate safely and reliably in complex environments. Your work will directly influence how these systems perceive the world and make critical decisions in real time. You will own key components of the autonomy stack that ensure dependable operation under demanding conditions. This role places you at the center of a mission to make autonomy accessible to all by scaling driver capabilities. You will collaborate closely with experts in perception, planning, and hardware to solve challenging integration problems. Your contributions will help transform cutting-edge research into robust software running on production vehicles. Together, we will advance the state of the art in safe and efficient autonomous mobility.
Key facts
What you'll do
- Architect and implement resilient software modules that form the foundation of autonomous driving systems.
- Engineer high-throughput data pipelines to process diverse sensor inputs efficiently and accurately.
- Optimize computational kernels to meet stringent real-time performance targets on embedded hardware platforms.
- Analyze complex system behaviors to diagnose performance bottlenecks and eliminate processing inefficiencies.
- Partner with perception and planning specialists to align interfaces and streamline cross-module integration.
- Evaluate emerging algorithms and determine their suitability for deployment in safety-critical contexts.
- Define and enforce coding conventions, testing strategies, and documentation standards across the autonomy stack.
- Validate software components through rigorous testing methodologies to ensure stability and correctness.
- Mentor junior engineers by providing clear technical guidance and fostering a culture of quality and precision.
- Explore innovative approaches to improve reliability, scalability, and maintainability of core infrastructure.
- Coordinate with operations teams to gather insights from deployed systems and inform future software enhancements.
- Translate ambiguous product requirements into concrete technical designs that balance performance and safety.
- Contribute to the long-term architectural vision by identifying opportunities for refactoring and abstraction.
- Support the development of tools that accelerate experimentation and streamline the development lifecycle.
Requirements
- Bring professional experience in C++ software development spanning multiple years in demanding environments.
- Demonstrate a background in robotics, autonomous vehicles, or other high-complexity systems requiring rigorous engineering.
- Show proficiency in designing software for safety-critical applications where failure is not an option.
- Commit to working on-site at our Mountain View headquarters to enable close collaboration and rapid iteration.
- Exhibit strong problem-solving skills with the ability to deconstruct complex systems into manageable components.
- Communicate effectively with both technical and non-technical stakeholders to align on goals and constraints.
- Embrace a mindset focused on reliability, performance, and correctness in every aspect of software delivery.
- Engage actively in code reviews to share knowledge and uphold the highest standards of code quality.
Nice to have
- Hands-on experience with real-time operating systems and their constraints in embedded contexts.
- Familiarity with sensor fusion, path planning, or localization algorithms commonly used in autonomous systems.
- A record of contributions to large-scale robotics software projects that impact production deployments.
- Understanding of functional safety principles and their application in automotive or robotic platforms.
- Experience with simulation frameworks and tools used to validate autonomous behavior at scale.
- Knowledge of machine learning pipelines and their integration into safety-critical control loops.
- Participation in open-source communities related to robotics, autonomy, or real-time computing.
Skills & tools
- C++
- Autonomous driving software stacks
- Real-time systems architecture
- Version control and collaborative development workflows
- Debugging and performance profiling techniques
- Containerization and orchestration technologies
- Testing frameworks and continuous integration systems
Practical notes
Nuro is currently focused on licensing automated driving software for robotaxis and personally owned autonomous vehicles. Please ensure your application reflects your experience with safety-critical robotics systems. On-site presence at the Mountain View headquarters is required to enable seamless teamwork and efficient project execution. This role operates on a full-time basis with expectations for deep engagement during standard business hours. Applicants from diverse backgrounds are encouraged to apply, provided they meet the outlined requirements. The hiring team will review submissions on a rolling basis to identify candidates who can contribute to immediate and long-term project needs.
About the company
Nuro is a self-driving technology company on a mission to make autonomy accessible to all. Founded in 2016, Nuro is building the world's most scalable driver, combining AI with automotive-grade hardware. The company partners with leading enterprises to deploy reliable autonomy in everyday scenarios, improving mobility and reducing the burden of driving. By focusing on specialized vehicles and purpose-built systems, Nuro aims to deliver solutions that are both safe and scalable. Its engineers work at the intersection of software, hardware, and artificial intelligence to create products that redefine how goods and people move. The company values collaboration, rigorous analysis, and a long-term perspective on technological impact.