What Google Looks for In a Coding Interview
What Google looks for in coding interviews, the 4-criterion rubric, where most engineers lose points, and how to train each skill.
What you will learn
The four criteria Google's interview rubric actually scores
Why verification is the hardest criterion and how to train it
Where most candidates lose points without realizing it
Which coding patterns Google tests more than other companies
Most engineers think they know what Google looks for coding interview evaluation: correct code, written fast. That's one of four criteria. Google interviewers score problem decomposition, coding clarity, verification, and communication. Engineers who write clean solutions but can't explain their reasoning routinely score lower than candidates who narrate a slightly imperfect solution while proving each step correct.
That gap between "solved it" and "demonstrated the reasoning" changes how you should prepare.
What Google Looks for in a Coding Interview
Google's interview rubric evaluates four criteria: problem decomposition, coding clarity, verification, and communication. The rubric isn't secret. Google's hiring documentation references these criteria publicly. Most candidates still prepare as if "solve the problem" is the only metric. Most preparation platforms are optimised for problem-solving, not for the other three criteria, so candidates train what the platform measures, not what the interviewer measures. Each criterion tests something different.
- Problem decomposition: Is the ability to break a problem into the right subproblems before writing any code. Google interviewers watch for whether you identify the core constraint, separate it from the noise, and articulate your plan before touching the keyboard. Jumping straight to code, even if the code is correct, signals weak decomposition.
- Coding clarity: Is what most people think the whole interview is about. Write readable code with meaningful variable names and handle edge cases. This criterion matters, but it's one of four.
- Verification: Is the hardest one to score well on. It means proving your solution is correct at each step, not after the fact. Trace variable state through edge cases mentally. Identify where the algorithm could break and explain why it doesn't. Don't wait for the interviewer to ask "what about an empty array?" Address it before they need to.
- Communication: Means explaining why you're making each decision as you go. "I'm using a hash map here because I need
O(1)lookup for the complement" counts. "I'm writing a for loop" doesn't.
What Google Looks for in Coding Interview Verification
Verification is the hardest criterion to train because most practice environments don't require it. On LeetCode, you write code, hit Run, and the test cases tell you whether it works. That builds a habit of external verification. Google interviews require internal verification: proving correctness through reasoning before the code executes. Most candidates underestimate how much this affects their score.
Take the Punctual Arrival Speed problem, a Google-tagged problem on Codeintuition that uses minimum predicate search. Given a list of distances and a fixed number of hours, find the minimum speed at which you can arrive on time, rounding each segment's travel time up to the next integer.
Most candidates recognise this as a binary search problem. Necessary, but not sufficient for a strong Google score. Verification means walking the interviewer through why binary search on the answer space works here.
Python
The four verification steps that earn the score:
- 1Identify the monotonic predicate: "If speed S works, every speed greater than S also works." That's the invariant that makes binary search valid on this answer space.
- 2Trace the boundary condition: At speed 1, total time equals the sum of all distances. At the maximum distance value, each segment takes at most 1 hour.
- 3Explain the discard logic at the midpoint: "If total time exceeds the limit, every speed at or below this midpoint also fails, so we discard the left half."
- 4Address the edge case: the last segment doesn't require rounding up, which changes the ceiling calculation for that segment specifically.
Done aloud while coding, this covers decomposition (identified the predicate structure), verification (proved the invariant and traced boundaries), and communication (narrated each decision). The code is fifteen lines. The reasoning around it is what earns the score.
“Binary search finds the answer. Proving why binary search is valid here is what Google scores.”
Where Most Candidates Lose Points
The four criteria create four distinct failure modes. Most candidates fail on one or two, not all four.
The most common is silent solving. You understand the problem, write the correct solution, but don't explain your reasoning. The interviewer sees correct code but can't evaluate your thought process. This fails communication and partially fails decomposition, because the interviewer can't tell whether you identified the right subproblem or just pattern-matched from memory.
Then there's skipping decomposition. You jump to code within the first two minutes. Even if the code is correct, the interviewer didn't see you break the problem down. For harder problems, you missed the chance to show the most valuable skill: identifying what kind of problem this is before deciding how to solve it.
No edge case verification is another common miss. You write a solution that handles the main case but don't trace what happens with empty inputs, single-element arrays, or boundary values. On predicate search problems, forgetting to check the ceiling division edge case on the last segment comes up often.
The subtlest failure is pattern recall without reasoning. You recognise the pattern from practice and apply it correctly, but when the interviewer asks "why does this work?" you can't articulate the underlying invariant. You applied a known solution to a recognised shape without demonstrating that you understand why it's correct. That's the gap between near transfer and the kind of reasoning Google specifically tests.
What Coding Interview Patterns Google Looks for Specifically
Google's pattern emphasis is distinct from Amazon, Meta, and other top-tier companies. Based on problem tagging data across 450+ company-tagged problems, Google leans heavily on predicate search, a pattern where you binary search on the answer space rather than on a sorted array.
Problems like Punctual Arrival Speed, Trip Completion Frenzy, and Minimum Shipping Capacity all carry Google tags. They require a different mental model than classic binary search. You're not searching for an element. You're searching for the boundary where a condition flips from false to true.
Google also tests backtracking (8 company tags across problems like N-Queens and Sudoku), counting through hash tables (9 tags), and sliding window variants (6-7 tags for both fixed and variable). But predicate search is where Google diverges most from other companies. Amazon tests broader pattern diversity. Meta tests more graph and backtracking problems. Google disproportionately rewards the ability to reason about search spaces.
If you're specifically targeting Google, spending time on predicate search patterns (both minimum and maximum variants) has higher ROI than adding more generic medium problems to your count.
Building the Skills Google Actually Evaluates
Three of the four dimensions (decomposition, verification, communication) are process skills. You can't learn them by solving more problems. You learn them by practising the process around problem-solving.
Decomposition improves when you train pattern identification explicitly. Before solving any problem, you should be able to name the pattern it belongs to and explain why. If your preparation doesn't include identification training, decomposition stays implicit. The identification lesson for minimum predicate search on Codeintuition, for instance, teaches the structural triggers that signal "this is an answer-space binary search" before you attempt any problems.
Verification improves when you practise tracing variable state mentally, step by step, before running code. Hold a small program in your head and step through it as if you were the computer. The 500+ visual walkthroughs on Codeintuition trace every variable at every step. They train you to eventually do the same thing without the visuals.
Communication is the one most people neglect entirely. It improves when you practise solving under realistic constraints. Google gives you 45 minutes, no hints, and no problem title. If you've only ever practised in environments where the problem category is visible and you can retry indefinitely, the interview conditions create a mismatch. Codeintuition's Interview Mode hides the problem name, limits your execution attempts, and enforces time pressure by difficulty, which forces narration because you can't rely on trial and error.
For the complete picture on FAANG interview preparation, including how these four criteria fit into a broader preparation roadmap, see our FAANG coding interview preparation guide.
The Searching course covers all five search patterns from first principles, including the predicate search variants Google specifically emphasises. The free Arrays and Singly Linked List courses let you experience the same three-phase teaching model (understand the invariant, identify the triggers, apply under pressure) on foundational patterns before moving to the search patterns Google prioritizes. Start there and see if learning why a pattern works before applying it changes how you approach the four criteria Google actually scores.
That Punctual Arrival Speed walkthrough above was fifteen lines of code. The reasoning around it, identifying the monotonic predicate, tracing boundary conditions, explaining the discard logic, catching the ceiling division edge case, covered all four criteria on Google's rubric. That's what training the rubric, not just the code, produces. The solution isn't the hard part. Proving it's correct while you build it is.
Do you want to master data structures?
Try our data structures learning path made of highly visual and interactive courses. Get hands on experience by solving real problems in a structured manner. All resources you would ever need in one place for FREE