Google L4 | Banglore
Summary
I interviewed for a Google L4 position in Bangalore, completed two online rounds and two onsite rounds, and received a positive verdict moving to the team match stage.
Full Experience
Online Rounds
Round 1 (DSA)
Given:
- Movies with ratings
- Similarity graph between movies
Task:
Return the top K movies similar to a given movie.
Follow‑up:
Optimize the solution to achieve close to O(log K) time complexity and O(K) space complexity.
Round 2 — Googliness / Behavioural
Mostly standard behavioural questions around collaboration, conflict resolution, ownership, etc.
Onsite Rounds
Round 3 (Design + Coding)
Given APIs:
insertAd(string content, int score)getAd()
Requirements:
getAd()should always return the highest scored ad- After returning an ad, decrease its score
- Consecutive same ads should not appear
Follow‑up:
Introduce a cooldown/gap before the same ad can appear again while keeping operations close to O(1).
I was able to code the follow‑up as well.
Round 4 (Graphs/Grid)
Find all lakes in a grid given one land cell.
Initial version was straightforward (water surrounded by land), but the interviewer added a twist:
- What if there is land inside the lake?
I explained the approach verbally, but due to time constraints the interviewer didn’t ask me to code it.
My verdicts according to me:
- 1st: SH
- 2nd: H/SH
- 3rd: SH
- 4th: H/LH
With 4 years of experience, what do you think are the chances for L4 at Google?
Would really appreciate insights from people who’ve recently gone through the process.
Final Verdict : Positive (Moving to team match)
Interview Questions (3)
Top‑K Similar Movies
Given a set of movies each with a rating and a similarity graph linking movies, return the top K movies that are most similar to a specified movie. The follow‑up asks for a solution close to O(log K) time and O(K) space.
Ad Ranking System with Cool‑down
Design APIs insertAd(string content, int score) and getAd(). getAd() must always return the highest‑scored ad, decrease its score after returning, and ensure consecutive identical ads are not shown. A follow‑up requires introducing a cooldown period before the same ad can appear again while keeping operations near O(1).
Lake Detection with Internal Land
Given a grid representing water and land, find all lakes (water regions surrounded by land). The twist added during the interview is handling cases where there is land inside a lake (i.e., islands within a lake).