Skip to content

Jobs

Waymo

Robot type
Autonomous Vehicle
Location
Mountain ViewCaliforniaUSA
Job type
Software
Posted
Sep 21, 2026
Internship

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

Job description

Software Engineering in the Hardware organization is where software meets the physical world. The Waymo Embedded Software Engineering team develops the critical, safety-critical software running at the edge of the Waymo driver, interfacing directly with steering, braking, propulsion, power distribution, and vehicle sensors. You will develop the abstractions and business logic to safely control and manage autonomous vehicles across different vehicle platforms and OEMs.

Waymo interns partner with leaders in the industry on projects that create impact to the company. We believe learning is a two-way street: applying your knowledge while providing you with opportunities to expand your…

Job responsibilities

  • 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.

Job requirements

  • 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).

Similar jobs