My Google Interview Experience [L5 Offer]
Overview
Google's L5 level represents a Senior Software Engineer position that typically requires strong proficiency in data structures, algorithms, and system design. The interview process consists of multiple stages: an initial screening (which may be waived for experienced candidates), three onsite coding rounds, a system design round, and the Googlyness behavioral evaluation. For this candidate, the entire processâfrom the first recruiter call to receiving the final offerâspanned approximately two months.
Interview Process
The interview timeline unfolded as follows:
| Stage | Description | |-------|-------------| | Initial Contact | Recruiter reached out in mid-August 2024 | | Coding Rounds (3) | Conducted within a 3-day span | | System Design | Scheduled the following week | | Googlyness Round | Conducted after system design | | Team Matching | Completed within the same week | | Offer | Delivered after team confirmation |
Notably, the candidate was able to skip the initial screening round due to having recently completed Meta's interview process. The recruiter also ensured accelerated scheduling, moving the interviews faster than the standard timeline.
Technical Rounds
Coding Round 1: 2-D Matrix Problem with DFS and Memoization
The first coding round presented a problem involving a 2-D matrix that the candidate had not encountered previously. The candidate spent time devising an optimal approach and completed the coding within 30 minutes. The interviewer then requested an alternative solution, providing a hint toward a specific approach. Both solutions shared the same time complexity but differed in space complexityâan aspect the interviewer explored in depth.
Coding Round 2: Heap-Based K Closest Points
This round focused on finding the K closest points using a heap-based approach. The candidate recognized the pattern quickly (similar to the classic "K closest points" problem) and completed the solution in approximately 20 minutes. A notable addition was the interviewer's request to write unit tests for the solutionâa practice this candidate had not previously encountered in technical interviews. Given the candidate's Java experience, writing comprehensive unit tests proceeded smoothly.
Coding Round 3: BFS/DFS on an Infinite Grid
The third coding round was rescheduled once due to the interviewer's prior commitment. The problem involved an infinite grid, initially appearing similar to the "number of islands" problem but with additional complexity. After 10 minutes of discussion and iterative refinement with the interviewer, the candidate implemented a solution with approximately 10 minutes remaining, which was sufficient to address a follow-up question verbally.
Original Source
This experience was originally published on medium.com. Support the author by visiting the original post.
Read on medium.com