Waymo

Senior Staff Software Engineer, Simulator Efficiency

Mountain View, CA, USA; San Francisco, CA, USA Full Time

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.

Sim efficiency has recently risen as a high priority area for the SimEval team. My team is under-invested in performance. The team needs a senior person who can look across the entire simulator stack for opportunities to build more efficient systems. This person also needs to interface will with the sim infra and DUE teams. This person should initiate processes for better measuring sim performance as well as set the direction for engineers across multiple engineering teams. Example problems to solve: is Open Loop eval sufficiently supported by the simulator; where is more investment needed? Simulator performance measurement: Clarify measuremetn of SimD vs SimQueue and what is needed for improved tracking. Performance bottlenecks: Identify major performance bottlenecks in the simulator both in standard CPU/Compute as well as TPU or related areas. 

The Simulator Team at Waymo builds state-of-the-art simulations of realistic environments for testing and training the Waymo Driver. We develop industry-leading simulation solutions using advanced ML algorithms that measure and enhance the performance of the Waymo Driver. The Simulator platform is complex and evolving. To ensure that Waymo's Simulation and Evaluation system can scale with new developing Simulation technologies as well as Waymo's growth, this technical leadership role will look across multiple teams and guide strategy for the entire Simulator software stack. This can be everything from low-level optimization up through higher level configuration, all with an eye towards improved utilization across various resources (CPU/RAM/TPU/GPU). You will lead the Simulator Platform's efficiency efforts and represent the team in wider Waymo performance-related efforts.

In this hybrid role, you will report to a Director, Software Engineering 

You will:

  • Develop Simulator's architecture improvements and frameworks that maximize performance and compute utilization.
  • Evolve compute usage of simulation to enable continued scaling where the system runs efficiently in our data centers.
  • Collaborate with evaluation and infrastructure teams to identify and improve compute performance bottlenecks across the stack
  • Design, build, and optimize the simulator to enable high throughput and high compute utilization for both single instance simulation and large scale simulations.
  • Developing necessary high scale performance evaluation, debugging and software change management processes
  • Optimizing system resource usage to simulation at scale: minimizing CPU utilization and latency, minimizing RAM consumption, intelligently determining which computations should happen on CPU, GPU, and TPU.

You have:

  • BS/MS in Comp Sci, EE, Robotics, Physics, Math, or related field (or equivalent experience)
  • Proven track record of setting technical vision, driving multi-quarter roadmaps, and delivering impactful data projects as a technical lead for senior engineering teams, with demonstrated ability to influence across organizational boundaries.
  • Excellent communication skills, with the ability to articulate complex technical designs, trade-offs, and strategies to diverse stakeholders, including senior leadership and partner engineering, data scientists, and product teams.
  • 6+ years experience on large scale or high complexity system
  • Solid software management experience in infrastructure/systems/performance domain optimizing end to end system for high performance metrics
  • Extensive experience acting as technical lead in performance/software infrastructure domain
  • Proficient in C++
  • Define roadmap/portfolio of projects optimizing for end results overall across all aspects of the problem space
  • Setup collaboration structures across team boundaries

We prefer:

  • Experience in robotics
  • Experience in low level optimization techniques, frameworks (SIMD/CUDA) and ML performance/frameworks
  • Experience in large scale evaluation techniques/data science and building performance metrics/tooling
  • Experience in large scale software re-architecture projects

The expected base salary range for this full-time position across US locations is listed below. Actual starting pay will be based on job-related factors, including exact work location, experience, relevant training and education, and skill level. Your recruiter can share more about the specific salary range for the role location or, if the role can be performed remote, the specific salary range for your preferred location, during the hiring process. 

Waymo employees are also eligible to participate in Waymo’s discretionary annual bonus program, equity incentive plan, and generous Company benefits program, subject to eligibility requirements. 

Salary Range
$281,000$356,000 USD