Waymo is an autonomous driving technology company with a mission to make it safe and easy for people and things to get where they’re going. Since our start as the Google Self-Driving Car Project in 2009, Waymo has been focused on building the World’s Most Experienced Driver in hopes of improving the world's access to mobility while saving thousands of lives now lost to traffic crashes. Our Waymo Driver powers Waymo One, our fully autonomous ride-hailing service, as well as Waymo Via, our trucking and local delivery service. To date, Waymo has driven over 20 million miles autonomously on public roads across 25 U.S. cities and conducted over 20 billion miles of simulation testing.
Hardware Engineering is a diverse, innovative, and collaborative group of electrical, mechanical, reliability, software and vehicle engineers. We design, build, and perfect the products which are the eyes and ears of Waymo's autonomous driving technology, and integrate those products into vehicle platforms. We're seeking curious and talented teammates to keep us moving in the right direction.
We are looking for a strong software engineer to help us develop a sophisticated high-performance and high-fidelity simulation system, and apply it to a wide range of scenarios. The ideal candidate can operate on multiple levels: from working with physical hardware to creating high-quality complex software architectures.
In this role, you'll:
- Develop new Software-in-the-Loop and Hardware-in-the-Loop frameworks and simulators
- Create sophisticated, high-fidelity software models of the world and vehicle
- Build a fleet of automated HIL/SIL testers, representing a full self-driving vehicle
- Work cross-functionally with systems engineering and other hardware engineering groups to utilize HIL/SIL tools for self-driving technology development
At the minimum, we'd like you to have:
- BA/BS degree in Computer Science, related technical field, or equivalent practical experience
- 5+ years of industry experience with C/C++
- Strong software design and engineering skills and ability to navigate large codebases.
- Familiarity with embedded programming concepts.
- Strong problem-solving skills, be adaptable, proactive, and willing to take ownership of complex systems.
It's preferred if you have:
- First-rate C++ programming skills.
- Experience integrating dissimilar hardware and software components into simulation framework(s).
- Experience with communications protocols typical in automotive environments: CAN bus, SPI, I2C, Ethernet, RS232, etc.
- Experience with operating systems, and multi-threaded and multi-process environments.
We appreciate your interest in Waymo. Waymo is an equal employment opportunity employer. Waymo’s policy is not to discriminate against any applicant or employee based on race, color, sex, religion, national origin, age, disability, military status, genetic information or any other characteristic protected by law. Waymo also prohibits harassment of applicants or employees based on any of these protected categories. Waymo will also consider for employment qualified applicants with criminal records in accordance with applicable law. Waymo also makes workplace accommodations for qualified individuals with disabilities as required by applicable law.