Skip to main content

Google Interview Guide (2022)


Average salary of a Software Engineer (SWE) in the US:


SWE II (L3): 190K SWE III (L4): 268K Sr. SWE (L5): 358K

Interview Process


Here is what to expect in a Google interview for software engineers:

  • Recruiter Pre-screen (20-30 mins) – Non-technical chat about your resume and background. Get ready to answer questions like Why Google? Why are you leaving you current job? What is your biggest achievement?
  • Technical Phone Screens (2 interviews, 45-60 mins) – One or two phone screens with your hiring manager, or a Google employee. You will solve a coding question related to data structures and algorithm on a shared Google Doc. Some questions on your background.
  • Onsite Loop (4-5 interviews) – Coding and System Design questions. Writing the solution on whiteboard. Expect questions related to slightly harder data structure and algorithms. The goal of System Design questions is to come up with high level design architectures for real life products.

Google evaluates candidates on 4 criteria:

Googleyness Googleyness means putting the user first, being friendly, approachable, humble, doing something nice for others, being proactive, and keeping your eye on the goal. You will be gauged for being a team player and having a bias for action.

General Cognitive Ability Your ability to solve problems and explain your thought process. Expect open ended questions like how would you optimize this further? The interviewer wants to know how you learn and adopt to a situation; don’t forget to discuss your solution.

Leadership Google defines leadership as the ability to take on tough problems and step back when it's not needed. They will try to gauge if you can mobilize a team to solve a difficult problem. Get ready to answer questions like, how have you demonstrated leadership when you weren't the manager? how have you dealt with trade-offs and ambiguity?

Role-related knowledge Is your technical expertise sufficient to drive impact at Google? How will you grow and scale with the company? Sample questions: Tell me about a recent/interesting project you worked on? How would you design a task scheduling system?

Interview Tips


1) Data Structures - Practice data structures like Strings, Heaps, HashTable, Tree, LinkedList, Stack, Queue, Graph, and Trie. 2) Algorithm - Practice Recursion, Dynamic Programming, Quick-Sort, Breadth-first search, and Depth-first search. 3) Explain your thought process - Extremely important. Practice describing your solution and design decisions clearly and concisely. 4) Collaborate – Don't forget to discuss tradeoffs, present multiple solutions, and take hints from the interviewer.

Top Coding Patterns


Islands Sliding Window Merge Intervals Topological Sort Longest Common Substring

Top recent Google tagged Coding Questions on LeetCode


Happy Number (easy) Minimum Meeting Rooms (medium) Number of Islands (medium) Merge Intervals (medium) Course Schedule (medium) Number of Closed Islands (medium) Making a Large Island (hard) Employee Free Time (hard) Alien Dictionary (hard) Minimum Windows Subsequence (hard)

Top Google System Design Questions


Design a Web Crawler Design Google Docs Design a Messenger Design a YouTube like Video Streaming Design Google Maps

Reference

1) Grokking the Coding Interview: https://lnkd.in/gkjFsTxa 2) Grokking Dynamic Programming: https://designgurus.org/course/grokking-dynamic-programming 3) Grokking the System Design Interview: https://lnkd.in/g4Wii9r7 4) Google Interview Guide: https://careers.google.com/how-we-hire/