Status: ~6 years of experience in Android Development, College Dropout
Position: SDE-III at Google
Location: Bengaluru, KA, India
Date: Sept - Nov 2023
Interview process and format
Recruiter reachout out in late August on LinkedIn.
- Phone call with recruiter (45 minutes)
Was asked about the previous experience and questions about career plans for future.
I asked for some time to prepare for interviews as it's been a while. Interviews started after 3 weeks from initial phone call with recruiter.
-
Technical phone screen (1 hour)
Asked one question, and then a follow up on top of it.Given a list of words in a dictionary, write a function that incrementally sends auto correct suggestions based on user input. Followed up with questions on optimization and different strategies to rank suggestions.
-
Technical phone screen 2 (1 hour)
Asked to implement a Trie datastructure and implement fuzzy word auto complete given a prefix. Followed up on how to make it thread safe and given an input of a text file, automatically correct spellings using fuzzy search and write corrected output to a new file. -
Technical phone screen 3 (1 hour)
Asked about the implementation of a data structure called BK-Tree, commonly used in autocorrect and providing suggestions. But this time implementation was given already by the recruiter and I was asked to turn it into a DataStructure As A Service, such that it remembers different users. Asked how can I shard the data across users with common language. [Couldn't do this, cause I don't have BE experience]
Got information from the recruiter that my performance wasn't up to the mark and my level was being reduced from L4 to L3. I asked the recruiter how is a question about backend system design relevant for a mobile engineer, and I was scheduled another round
-
Technical phone screen 4 (1 hour)
Algorithmic question about BFS on a Grid. You have a group of friends with whom you want to watch a sport match. Find out if there are enough vacant seats such that you can sit together as a group. [Catch was that interviewer asked me explicitly to start with brute force approach and then explain about why I chose BFS and my intuition. Was told that this problem can be solved with better TC using Segment Trees at the end] -
Googliness round (1 hour)
By far the most easiest round I had. Was mostly grilled on scenario based behavioural questions. Just be natural and you'll do great there. -
Team fitment call with EM (1 hour)
Had a candid conversation about the team, the culture, product that the team is working on, challenges that they're trying to solve in the near future, etc., -
Team fitment call with TL (1 hour)
Was asked more questions on my previous experience, more about tech stack we were using in my previous company, about the reasons why I made certain decisions in a given scenario, etc.,
After two weeks, recruiter reached back that overall my feedback was positive for L3 but for L4 I need more improvement in the DSA. I was asked to submit my documents. After two more weeks, I was told initial numbers, which were lower than what I was previously making. Couldn't push due to lower level, even after I got two competing offers.
So expressed my gratitude for the opportunity but said I will not be able to proceed with these initial numbers. Recruiter came back saying HM asked for one more round of Technical Phone Screening.
- Technical phone screen 5 (1 hour)
This was straight up Leetcode problem. Given the root of a binary tree, count the number of nodes equal to average of subtree. This is a medium question to be solved by DFS and after I solved it, was asked what will happen if I used BFS instead.
After two weeks I followed up with recruiter, and got to know that they are not going to change the numbers offered initially. Google's offer was 26% cut in my existing base pay, and I have competing offers which are giving me 32% hike. Didn't choose Google because of that.


