Software Engineer, Car Hardware Simulation
Mountain View, California, United States
Waymo is the self-driving technology company with a mission to make it safe and easy for people and things to move around. Building on software and sensor technology developed at Google, Waymo is now launching the world’s first fully self-driving transportation service that will take members of the public from A to B at the touch of a button.
Software Engineering builds the brains of Waymo's fully self-driving vehicles. Our software allows our vehicles to perceive the world around them, make the right decision for every situation, and deliver people safely to their destinations. We think deeply and solve complex technical challenges in areas like robotics, perception, decision-making and deep learning, while collaborating with hardware and systems engineers. If you’re a software engineer or researcher who’s curious and passionate about Level 4 autonomous driving, we'd like to meet you.
In this software engineering role, you'll:
- Develop and validate simulation models for vehicle platforms and communication interfaces
- Integrate simulation framework with existing and prototype hardware
- Automate test infrastructure for regression testing
- Generate initial regression tests and work cross-functionally with systems engineering and other hardware engineering groups to aid in further test generation
At a 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++
- Experience with one or more of the communication protocols typical in embedded environments: CAN bus, SPI, I2C, Ethernet, RS232, etc
It’s preferred if you have:
- Knowledge of common approaches and techniques used in simulation (i.e. cycle-based, event-based, SIL, HIL, etc) is a big plus
- Experience with operating systems, and multi-threaded and multi-process environments
- Ability to read a schematic and debug issues on an embedded device using an oscilloscope
- Strong math skills (e.g., linear algebra and differential equations)
- Exceptional C++ programming skills
- Strong software design and engineering skills
- Strong problem-solving skills, be adaptable, proactive, and willing to take ownership of complex systems
At Waymo, we don’t just accept difference - we celebrate it, we support it, and we thrive on it for the benefit of our employees, our products and our community. We are committed to equal employment opportunity regardless of race, color, ancestry, religion, sex, national origin, sexual orientation, age, citizenship, marital status, disability, gender identity or Veteran status. We also consider qualified applicants regardless of criminal histories, consistent with legal requirements. If you have a disability or special need that requires accommodation, please let us know.