Skip to content
The board
Internship
Hardware

2027 Summer Intern, BS/MS, Embedded, Software Engineer

Waymo · A)

Pay
$60–$70/hr
Where
Mountain View, CA, USA
Posted
2 days ago

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.

Software Engineering in the Hardware organization is where software meets the physical world.

What you'd do

  • Develop high-quality vertically-integrated C++ software systems (on-vehicle firmware and off-vehicle simulation/tooling) running at the edge of the Waymo driver.
  • Contribute directly to the bring-up, validation, and debugging of next-generation compute platforms, peripheral drivers, and hardware-software interfaces for new vehicle platforms.
  • Write robust unit tests (such as gTest) and Software-in-the-Loop (SIL) simulation fixtures to validate edge-case handling, system robustness, and fault containment.
  • Analyze field data logs, vehicle telemetry, and simulation results to identify root causes and improve firmware performance.
  • Participate in cross-functional engineering workflows, design discussions, and code reviews alongside experienced embedded and systems engineers.

What they want

  • Enrolled in a BS or MS program in Computer Science, Computer Engineering, Software Engineering, Information Systems, or a related technical field.
  • Strong programming foundation in C or C++, with a solid understanding of data structures, pointers, and memory management.
  • High curiosity, a continuous learning mindset, and the enthusiasm to explore unfamiliar hardware architectures, tools, and codebases.
  • Demonstrated problem-solving ability, debugging skills, and comfort navigating ambiguity when working with evolving platforms or prototypes.
  • Familiarity with Linux development environments, command-line tools, and version control systems (e.g., Git).
  • Embedded Systems and Real-Time Programming: Hands-on experience developing software for microcontrollers (such as ARM Cortex-M or Cortex-R), bare-metal environments, or RTOS with resource-constrained execution.
  • Hardware Bring-Up and Lab Debugging: Practical experience with board bring-up, hardware-software integration, and lab instrumentation such as oscilloscopes, logic analyzers, and multimeters.
  • Testing and Quality: Experience with C++ unit testing frameworks like Google Test (gTest) and test-driven development methodologies.
  • Open Source and Student Team Experience: Active involvement in collegiate engineering teams (such as Formula SAE, Formula Electric, Baja SAE, robotics clubs) or open-source projects demonstrating dedication to crafting high-quality modern C++ software.
  • Scripting and Tooling: Proficiency in Python for test automation, telemetry data analysis, or build scripting.