Staff Software Engineer, Linux

AI overview

Collaborate in a small team of engineers to develop system software for pioneering autonomous vehicles, focusing on Linux Kernel drivers and high-performance embedded systems.

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.

Waymo Onboard Infrastructure is responsible for low-level software and infrastructure on various components of the Waymo self-driving system. The team's scope covers everything from low-level system software to high-bandwidth data logging, IPC (low-latency and high-throughput), performance analysis, and full-system debugging. We work with the Hardware, Compute, Sensor, Perception, Behavior and Machine Learning teams to build the most performant and low-latency self-driving solution in the industry.

In this role, you will work on the System Software Team. The System Software team owns the primary compute node of Waymo's on-vehicle compute platform – an integrated embedded system. If you enjoy building embedded systems using novel compute hardware and working with engineering teams that will be direct consumers of your work, you'll be a great fit for this role.

In this hybrid role, you will report to the Technical Lead Manager.

You will:

  • Work on a small team of System Software and Linux Kernel Engineers to develop system software components from early prototyping to production launch of autonomous vehicles
  • Develop and test Linux Kernel drivers and other components such as middleware services for high-performance embedded systems including custom ASICs and accelerators
  • Work with a variety of engineering teams and SoC partners to take on ambiguous problems

You have:

  • BA/BS degree in Computer Science, or relevant technical field or equivalent practical experience
  • Proficiency in C and C++
  • 5+ years of programming experience in an asynchronous environment with multiple processes, threads, timers, and interrupts
  • Experience with Linux kernel and device driver development
  • Working knowledge of hardware bring-up and debugging

We prefer:

  • Working knowledge of complex hardware-accelerated compute pipelines (GPUs, ML accelerators, image/data processors)
  • Experience with bootloaders or programming in a BIOS
  • Experience with building and maintaining testing infrastructure for OS and other low level code
  • Experience with performing safe and robust software and firmware updates

#LI-Hybrid



Waymo is revolutionizing mobility with autonomous vehicles, offering safe and convenient ride-hailing services powered by renewable energy.

View all jobs
Ace your job interview

Understand the required skills and qualifications, anticipate the questions you may be asked, and study well-prepared answers using our sample responses.

Staff Software Engineer Q&A's
Report this job

This job is no longer available