
Waymo ML Engineer candidates report LeetCode-style coding, ML fundamentals or ML coding, behavioral discussion, and—in one account—a system-design round probing autonomous-driving assumptions and edge cases.
$232K
Avg. Base Comp
$430K
Avg. Total Comp
2-6 rounds
Typical Rounds
2 weeks
Process Length
Waymo ML Engineer interviews in these two accounts center on coding and applied ML communication, but the reported formats differ substantially. One candidate described a recruiter call followed by a 45-minute LeetCode-style screen with a hard problem and a medium problem, including a lowest-common-ancestor task. That candidate then reported a final loop with coding, ML coding, system design, and behavioral rounds. Another candidate described two same-day interviews: LeetCode-style coding that leaned toward graph questions and an ML design conversation focused on core concepts and domain knowledge.
For coding, prepare to explain your reasoning while working through standard algorithmic problems; graphs and tree ancestry are the only specifically reported problem areas. For ML discussion, be ready to walk clearly through fundamentals, relevant domain knowledge, and past projects. The behavioral portion may include why you want to join Waymo and a concise account of your experience.
The system-design report was the most autonomous-driving-specific detail: the interviewer pushed on assumptions, edge cases, and how an ML system would behave in that environment. Practice making those assumptions explicit and discussing trade-offs rather than jumping straight to an architecture. The evidence is limited to two candidate accounts, so treat the different loop structures as individual reports rather than a fixed format.
Synthesized from 2 candidate reports by our editorial team.
Had an interview recently?
Share your experience. Unlock the full guide.
Real interview reports from people who went through the Waymo process.
The process started with a recruiter call, where they made it clear that C++ was required for the role, but the conversation went well. The first technical stage was a 45-minute LeetCode-style interview with one hard problem and one medium problem. I managed to solve both, passed the screen, and moved on to the full interview loop. The final stage had four rounds: coding, ML coding, system design, and behavioral. The coding rounds were intense, but I felt good about my solutions and how I explained my thinking. System design was probably the most challenging because they kept pushing on assumptions, edge cases, and how the ML system would behave in a real autonomous-driving environment. Overall, I think the interviews went well, and now I’m just waiting to hear back.
Questions asked: The first technical stage was a 45-minute LeetCode-style interview with two problems, including a Least Common Ancestor task and another medium-level problem.
Share your own interview experience to unlock all reports, or subscribe for full access.
Sourced from candidate reports and verified by our team.
Topics based on recent interview experiences.
Featured question at Waymo
Write a function to return the value of the nearest node that is a parent to both nodes.
| Question | |
|---|---|
| Car Recommendation Architecture | |
| Shortest Path Algorithms | |
| Location Frequency | |
| Pathfinder in Maze | |
| Merge Sorted Lists | |
| String Shift | |
| Job Recommendation | |
| First to Six | |
| 500 Cards | |
| Find Bigrams | |
| Get Top N Frequent Words | |
| Amateur Performance | |
| The Brackets Problem | |
| P-value to a Layman | |
| Level Of Rain Water In 2D Terrain | |
| Raining in Seattle | |
| Minimum Change | |
| Impression Reach | |
| Basic Regex | |
| Jars and Coins | |
| Type-ahead Search | |
| Lazy Raters | |
| Same Algorithm Different Success | |
| Precision and Recall | |
| Bucket Test Scores | |
| Complete Addresses | |
| Find the First Non-Repeating Character in a String | |
| RMS Error | |
| Median Probability |
Synthesized from candidate reports. Individual experiences may vary.
One candidate said the process began with a recruiter call and that C++ was identified as required for the role. Use an early conversation to clarify the team’s requirements, but this detail comes from a single report.
Both accounts included coding. One candidate reported a 45-minute screen with a hard and a medium problem, including lowest common ancestor; another said coding leaned toward graph questions. Candidates should expect to explain their reasoning as they solve standard algorithmic problems.
One candidate listed ML coding in a later loop, while another described ML design focused on core ML concepts and domain knowledge. Prepare to connect ML fundamentals to the role and communicate choices clearly; the evidence does not establish one universal format.
One candidate reported system design and behavioral rounds, with system-design follow-ups on assumptions, edge cases, and ML-system behavior in an autonomous-driving setting. Another reported questions about motivation and past experience, so concise project walkthroughs may help.