Senior Software Engineer, Collision Avoidance
Required skills
- C++
- robotics
- collision avoidance
- parallel autonomy
- collision detection
- perception
- planning
- control
- state estimation
- latency optimization
Nice to have
- ML models
- edge environments
- tracking applications
- accuracy vs. compute tradeoff
Role summary
Nuro is seeking a Senior Software Engineer specializing in Collision Avoidance to contribute to their self-driving vehicle technology. This role involves working on the Parallel Autonomy System and Collision Detection System, focusing on accuracy and low-latency requirements. Responsibilities include ML-based perception, object velocity estimation, latency optimization, data curation tooling, and system design across perception, planning, and control. The ideal candidate has a BS in a relevant engineering field, strong C++ coding skills, and experience deploying software in robotics products. Preferred experience includes deploying ML models in edge environments, state estimation, and optimizing accuracy vs. compute tradeoffs.
Who We Are
Nuro believes self-driving vehicles are the most immediate and profound opportunity for AI to drive positive change in the physical world. Safer streets, more time for what matters, and easier access to the world around us, that’s why we’re building a universal autonomy platform: self-driving for all roads and all rides.Founded in 2016, Nuro is a physical AI company developing Level 4 autonomous driving technology for a wide range of vehicles, use cases, and markets. Powered by the Nuro Driver™, our universal autonomy platform enables the global mobility ecosystem to deploy autonomy at scale, from robotaxis and logistics fleets to personal vehicles.With years of real-world deployment experience and a flexible, partner-led business model, Nuro is working toward a future where millions of autonomous vehicles powered by our technology help make everyday life safer, easier, and more connected.Nuro has raised over $2B in capital from Uber, NVIDIA, Google, Softbank, Fidelity, T. Rowe Price, and other leading investors.
About the RoleSafety and redundancy is one of the key requirements to Nuro Driver™. In this role, you will contribute to our Parallel Autonomy System and Collision Detection System to protect our passengers and other road participants from the unknown unknowns. Here, you’ll be challenged to provide utmost accuracy while working with exacting latency requirements, where millisecond counts.
About the Work
About You
At Nuro, your base pay is one part of your total compensation package. For this position, the reasonably expected pay range is between $193,930.00 and $291,150.00/year for the level at which this job has been scoped. Your base pay will depend on several factors, including your experience, qualifications, education, location, and skills. In the event that you are considered for a different level, a higher or lower pay range would apply. This position is also eligible for an annual performance bonus, equity, and a competitive benefits package.
At Nuro, we celebrate differences and are committed to a diverse workplace that fosters inclusion and psychological safety for all employees. Nuro is proud to be an equal opportunity employer and expressly prohibits any form of workplace discrimination based on race, color, religion, gender, sexual orientation, gender identity or expression, national origin, age, genetic information, disability, veteran status, or any other legally protected characteristics. #LI-DNP
Sample Nuro interview questions
- 1
Build a service discovery mechanism for distributed systems.
system designmedium - 2
Maximum Depth of an N-ary Tree Find the maximum depth of an N-ary tree. Input: root = [1,null,2,null,3,null,4] Output: 4 Explanation: The tree is essentially a straight line, requiring a traversal that reaches a maximum depth of 4 layers.
codingmedium - 3
Merge Overlapping Intervals Merge overlapping intervals in an array. Input: intervals = [[1,4],[4,5]] Output: [[1,5]] Explanation: The intervals touch exactly at the 4 mark, so they are successfully merged into a single continuous interval.
codingmedium - 4
Lowest Common Ancestor on an N-ary Tree Find the lowest common ancestor on an N-ary tree. Input: root = [1,null,2,3,4], p = 2, q = 3 Output: 1 Explanation: Both nodes 2 and 3 are direct children of the root node 1, making 1 the lowest common ancestor.
codingmedium - 5
Split Array into Consecutive Subsequences Split an array into consecutive subsequences. Input: nums = [1,2,3,4,4,5] Output: FALSE Explanation: The numbers can form [1,2,3,4], but the remaining leftover group [4,5] is too short to form a valid sequence of length 3.
codingmedium
Get started to unlock a personalized interview prep pack for this role.
Similar roles
- Senior/Staff Software Engineer, Applied ControlsNuro · Mountain View · Onsite
- Autonomy Engineering Recruiting ManagerNuro · Mountain View · Onsite
Agentic AI Director of Software EngineeringJPMorganChase · Columbus, OH · Onsite
Associate Embedded Software Engineer, Early CareerViasat · Carlsbad, CA · Hybrid
Director, Software EngineeringUnitedHealth Group · Eden Prairie, MN · Hybrid
Senior Bioinformatics Software EngineerBaylor Genetics · United States · Onsite
