Senior Software Engineer, Simulation
Palo Alto, CA, Pittsburgh, PA, Detroit, MI, Remote
Latitude AI (lat.ai) is an automated driving technology company developing a hands-free, eyes-off driver assist system for next-generation Ford vehicles at scale. We’re driven by the opportunity to reimagine what it’s like to drive and make travel safer, less stressful, and more enjoyable for everyone.
When you join the Latitude team, you’ll work alongside leading experts across machine learning and robotics, cloud platforms, mapping, sensors and compute systems, test operations, systems and safety engineering – all dedicated to making a real, positive impact on the driving experience for millions of people.
As a Ford Motor Company subsidiary, we operate independently to develop automated driving technology at the speed of a technology startup. Latitude is headquartered in Pittsburgh with engineering centers in Dearborn, Mich., and Palo Alto, Calif.
Meet the team:
The Virtual Test Ecosystem (VTE) team is responsible for implementing the tooling used by Latitude to perform simulations (pure virtual scenarios where we can control interactions and sweep over permutations via a descriptive scenario language) and resimulations (rerunning logs collected on-vehicle using an updated version of the autonomy stack). This includes the backend C++ simulation/resimulation frameworks that call the underlying autonomy tasks and Python-based tooling to run this at large scale in the cloud. This infrastructure enables us to do a large portion of testing before the code ever makes it on vehicle, dramatically reducing autonomy developer iteration time and allowing us to perform large scale safety testing.
We work closely and iteratively with autonomy teams to build out new sim/resim features that they need in order to evaluate their new autonomy features. Similarly, we work hand-in-hand with the offboard testing teams who are building out test coverage to ensure they can use our tooling to write the tests they need and to get feedback on how we can make this test creation more efficient. And of course we’re constantly benchmarking and evaluating the efficiency and scalability of our applications in order to reduce runtimes and cost.
What you’ll do:
- Add new features needed by autonomy teams and/or testing to the core C++ simulation / resimulation framework. This could be a more complex interaction with other actors or some feature of the map. It could also be simulating a new portion of the autonomy stack, or intentionally introducing a degradation to some portion of the stack in order to determine how downstream components react
- Work directly with autonomy and testing teams to understand their needs and pain points, then internally propose features we can add to improve our infrastructure and/or simulation realism
- Support troubleshooting with users and bug fixes when issues are identified; we work with a variety of users on a daily basis
- Analyze simulation/resimulation reproducibility (does running the same code multiple times result in the exact same behavior?) and develop tooling to root-cause whether nondeterminism is coming from autonomy tasks or from the simulation/resimulation code
- Learn the autonomy stack at a level of depth that allows you to reason about what the best way is to wire in new autonomy features as they’re developed, to be able to do some initial root-causing of crashes or issues to isolate what’s going wrong (at which point the associated autonomy team would implement the actual fix), and in general to be an effective bridge between our team and the autonomy teams
What you'll need to succeed:
- Expertise in modern C++ (C++17)
- Self-driven to write code that’s efficient, well-tested, well-documented, and conforms to our style guide
- 3+ years’ experience with developing software for autonomous vehicles
- 1+ years’ experience with developing software for some sort of simulation environment
- Bachelor's degree in Computer Engineering, Computer Science, Electrical Engineering, Robotics or a related field and 4+ years of relevant experience (or Master's degree and 2+ years of relevant experience, or PhD)
- Strong communication skills and desire to partner with internal and external team members in order to create solutions that robustly solve the problem and allow us to evaluate the safety and performance of new features
Nice to have:
- Python development experience
- AWS or similar cloud experience
What we offer you:
- Competitive compensation packages
- High-quality individual and family medical, dental, and vision insurance
- Health savings account with available employer match
- Employer-matched 401(k) retirement plan with immediate vesting
- Employer-paid group term life insurance and the option to elect voluntary life insurance
- Paid parental leave
- Paid medical leave
- Unlimited vacation
- 15 paid holidays
- Complimentary daily lunches, beverages, and snacks for onsite employees
- Pre-tax spending accounts for healthcare and dependent care expenses
- Pre-tax commuter benefits
- Monthly wellness stipend
- Adoption/Surrogacy support program
- Backup child and elder care program
- Professional development reimbursement
- Employee assistance program
- Discounted programs that include legal services, identity theft protection, pet insurance, and more
- Company and team bonding outlets: employee resource groups, quarterly team activity stipend, and wellness initiatives
Learn more about Latitude’s team, mission and career opportunities at lat.ai!
The expected base salary range for this full-time position in California is $174,000 - $261,000 USD. Actual starting pay will be based on job-related factors, including exact work location, experience, relevant training and education, and skill level. Latitude employees are also eligible to participate in Latitude’s annual bonus programs, equity compensation, and generous Company benefits program, subject to eligibility requirements.
Candidates for positions with Latitude AI must be legally authorized to work in the United States on a permanent basis. Verification of employment eligibility will be required at the time of hire. Visa sponsorship is available for this position.
We are an Equal Opportunity Employer committed to a culturally diverse workforce. All qualified applicants will receive consideration for employment without regard to race, religion, color, age, sex, national origin, sexual orientation, gender identity, disability status or protected veteran status.
ApplyJob Profile
Competitive compensation Daily lunches Employee Assistance Program Health savings account Medical, dental, and vision insurance Paid holidays Paid parental leave Professional development reimbursement Unlimited Vacation Wellness stipend
Tasks- Add features to simulation framework
- Analyze reproducibility
- Collaborate with autonomy teams
- Develop tooling for root-cause analysis
- Support troubleshooting and bug fixes
Autonomy Systems C++ Cloud platforms Compute systems Machine Learning Mapping Python Resimulation Robotics Safety Engineering Sensors Simulation Testing Tools
Experience3 years
EducationBachelor's Bachelor's degree Computer Engineering Computer Science Electrical Engineering Master's Master's degree Related Field Robotics
TimezonesAmerica/Anchorage America/Chicago America/Denver America/Los_Angeles America/New_York Pacific/Honolulu UTC-10 UTC-5 UTC-6 UTC-7 UTC-8 UTC-9