Hey everyone, sharing my Google L3 interview loop details. While I can't share exact questions due to NDA, but still a bit:
Interview Breakdown:
- Phone Screen: Medium-level array/string tracking problem. It involved managing frequencies or states efficiently. Dry run with edge cases (empty inputs, large bounds) was key.
- Coding Round 1 (Dynamic Programming / Matrix): A grid-based problem where you had to find an optimal path under specific constraints. Sounded like a graph problem at first, but memoization/DP was the way to hit the optimal O(M×N) complexity.
- Coding Round 2 (Graph / Trees): Advanced tree/graph traversal (DFS/BFS variant). The catch was tracking the "state" of nodes dynamically while exploring. Standard algorithms won't work out of the box; you need to modify the traversal logic.
- Coding Round 3 (Heaps / Design-heavy DSA): Focus was on low-level data structure optimization (think Read/Write optimization). Involved choosing the right combination of HashMaps and Priority Queues (Heaps) to keep operations at O(1) or O(logN) for a streaming data input.
- Googliness: Standard behavioral round. Heavy focus on handling ambiguous requirements, project ownership, and how you handle architectural disagreements within a team.
Current Status & Query:
Update- Got a call from recuiter and he mentioned that I have cleared the interview and now in team matching phase.
For candidates who cleared recently in India, how long is the team matching phase taking right now? Any advice on how to nudge the recruiter or speed up the process??
Thanks, and good luck to everyone preparing!