
Waymo Software Engineer interviews typically run 3–6 rounds: recruiter screen, coding, ML/domain technical, system design, and behavioral. The process spans a few weeks and distinctively blends autonomous driving domain knowledge with standard SWE coding.
$157K
Avg. Base Comp
$450K
Avg. Total Comp
4-6
Typical Rounds
2-4 weeks
Process Length
What stands out most across Waymo's software engineering interviews is how consistently candidates are caught off guard by the breadth of the loop. The pattern we see consistently is candidates preparing for a standard DSA-heavy SWE process and instead encountering ML system design, robotics domain questions, and autonomous driving context — sometimes in the same round as a graph traversal problem. One candidate described being asked about Vision Transformers and designing an ML system for pedestrian crosswalk prediction; another got ML questions in what was labeled a standard SWE loop. If you're interviewing here as a software engineer, the autonomous driving domain isn't background color — it's part of the actual evaluation.
The coding questions themselves show a clear pattern: graph problems, particularly BFS/DFS on 2D matrices, appear repeatedly, but Waymo's versions tend to have a twist that makes template solutions insufficient. Candidates who got the core idea but didn't push toward a complete, edge-case-hardened solution consistently reported that it wasn't enough. One candidate noted that even with interviewer hints on a recursive matrix problem, the bar was clearly on correctness and completeness, not just approach. We've also seen reports of a data-wrangling style coding task that felt more like navigating an underspecified codebase than solving a LeetCode problem — so the format can shift significantly depending on the team.
The process also has a real inconsistency problem that candidates should mentally prepare for. One interviewer was described as not knowing what they were supposed to ask and throwing out random technical questions for 30 minutes. Another changed an hour before the interview. The variability isn't a sign of a broken process so much as a signal that different teams at Waymo are running somewhat different loops — which means your experience will depend heavily on which team you're interviewing with and who shows up in the room.
Synthetized from 6 candidates 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.
My interview process for the Software Engineer role at Waymo had three rounds total: two technical rounds and one video interview that included both a technical discussion and a manager chat. Everything was done on HackerRank, and the overall difficulty felt average, though there were a couple of surprises. The first round started with a short introduction from both sides and then moved straight into coding. I was given two coding questions in the same round, and the interviewer really focused on edge cases, so it wasn’t enough to just get to a working approach — they wanted correct, compilable code and solid handling of tricky inputs. Another technical round was more live-coding focused in C++, with emphasis on problem solving, data structures, and core language fundamentals. That round felt like a standard LeetCode-style interview, and one of the questions was a greedy algorithm problem. The time pressure was real, so clean syntax and being able to explain complexity clearly mattered.
The final video interview was a mix of technical and managerial conversation. The technical part was more domain-specific than I expected for a software engineering interview, and one round even included an ML question, which caught me off guard because I was expecting a more traditional SWE loop. That was probably the most unusual part of the process. The manager chat was more casual and included some behavioral discussion, but it still had technical elements rather than being purely people-focused. I also had time at the end to ask questions, which felt pretty standard. The interviewers were generally kind, and HR was responsive throughout, so the process itself was smooth even though the questions were sometimes a bit broader than I expected.
Overall, I’d call it moderate difficulty: not especially algorithmically brutal, but it did require being sharp on edge cases, coding cleanly under time pressure, and being ready for domain-specific or ML-flavored questions in a SWE loop. I ended up not getting an offer.
Prep tip from this candidate
Practice coding in HackerRank-style conditions where you have to produce correct, compilable code quickly, and make sure you’re comfortable talking through edge cases as you code. Also be ready for at least one domain-specific or ML-related question even in a SWE interview, since that came up unexpectedly here.
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
Select the 2nd highest salary in the engineering department
| Question | |
|---|---|
| Empty Neighborhoods | |
| Top Three Salaries | |
| Merge Sorted Lists | |
| First Touch Attribution | |
| String Shift | |
| Minimum Change | |
| Find Bigrams | |
| Last Transaction | |
| The Brackets Problem | |
| Friendship Timeline | |
| Nearest Common Ancestor | |
| Four Person Elevator | |
| Moving Window | |
| Raining in Seattle | |
| Basic Regex | |
| Cyclic Detection | |
| Longest Increasing Subsequence | |
| P-value to a Layman | |
| Radix Addition | |
| Three Zebras | |
| Most Repetition | |
| Complete Addresses | |
| Delivery Estimate Model | |
| Sort Strings | |
| Dijkstra implementation | |
| Swapping Nodes | |
| Detecting ECG Tachycardia Runs | |
| Priority Queue Using Linked List | |
| N-gram Dictionary |
Synthesized from candidate reports. Individual experiences may vary.
A recruiter reaches out via email or phone to discuss your background, past projects, and interests. The recruiter explains the overall interview loop, including the types of rounds to expect, and may share relevant job openings.
A virtual coding interview conducted on platforms like HackerRank or CoderPad. Questions range from algorithmic problems (e.g., 2D matrix traversal, recursion) to data-wrangling or ML-adjacent coding tasks, and may include a brief CV/project discussion.
A series of virtual rounds typically covering: additional coding (BFS/DFS, graph problems, data structures in C++ or Python), machine learning concepts and ML system design (e.g., designing a stop/go prediction system using sensor inputs), robotics and autonomous driving domain knowledge, and behavioral or tech leadership questions. Rounds are generally conducted with one or two interviewers and use live coding environments.
A conversation with the hiring manager that blends behavioral questions about past experience and leadership with some technical discussion. Expect questions about your resume, team fit, and how you've handled past projects, along with the opportunity to ask questions about the role.