Waymo
Company
Software Engineer, Linux Applications
Job Description
Waymo is an autonomous driving technology company with the mission to be the world's most trusted driver. Since its start as the Google Self-Driving Car Project in 2009, Waymo has focused on building the Waymo Driver—The World's Most Experienced Driver™—to improve access to mobility while saving thousands of lives now lost to traffic crashes. The Waymo Driver powers Waymo’s fully autonomous ride-hail service and can also be applied to a range of vehicle platforms and product use cases. The Waymo Driver has provided over ten million rider-only trips, enabled by its experience autonomously driving over 100 million miles on public roads and tens of billions in simulation across 15+ U.S. states.
The platforms team is looking for a software engineer to mature our high-fidelity autonomous driving simulation. This simulation system runs in a software configuration as close as possible to the vehicle, on the same compute hardware as is used in the vehicle. Incorporating the vehicle's compute system enables high-fidelity simulations that can find rare reliability and performance issues. The team's work varies from simulation strategy to whole-system debugging.
In this hybrid role you will report into a Tech Lead Manager.
You will:
- Work with partners from perception, planning, and other onboard software teams to improve simulation fidelity.
- Work with teams to mature our simulation strategy for high confidence that we can discover even extremely rare issues before on-vehicle testing.
- Improve the efficiency, reliability, and trustworthiness of simulations.
- Bring the simulator to new hardware platforms.
You have:
- Bachelor's degree in computer science or equivalent practical experience.
- 5+ years of experience delivering complex, production-quality software.
- Proficiency in C++ and a scripting language like Python.
- Experience with applications running on Linux-based embedded devices.
- Familiarity with operating systems concepts on Linux: networking, filesystems, performance troubleshooting, device I/O, and concurrency.
- Experience driving change in very large codebases.
We prefer:
- Master's degree in computer science or equivalent practical experience.
- Familiarity with robotics concepts: inter-process messaging, logging, reproducibility, diagnostics, and fail-operational designs.
- Experience with hardware-accelerated compute workloads (e.g., GPU, ML accelerators, image/data processors)
- Experience simulating complex systems
- Experience with data center infrastructure
#LI-Hybrid
Similar Jobs
Discover more opportunities that match your interests
Software Engineer - Linux kernel
Datadog
Software Engineer II, Applications
Brain Corp
Software Engineer, BCI Applications
Neuralink
Software Engineer
Meta
Software Engineer
Meta

Senior Software Engineer, Embedded Linux
Pano AI
Software Engineer
Figure
Software Engineer
Meta
Software Engineer
Meta
Software Engineer
Jua
Looking for something different?
Browse all AI jobs