Google | L4 | India
Anonymous User
7026

YoE: ~5

It was a nice sunny afternoon when my phone rang and someone claimed to be a Google recruiter at the other end. For a moment, I was like....huh?! Then I quickly recollected that I did randomly apply for some position while browsing through Google careers page (with no hope of receiving a call).

After brief introductions, the recruiter queried about my preparation level. For a moment, I realized I hadn't coded a single basic algorithmic problem in the last 5 years or so :P. I informed the same and suggested that I'd reapply again after some preparation and hung up the call.

While gathering my thoughts from the call, I realized that I may never ever get a shot at this again. And I had nothing to loose!
After half an hour, I rang back the recruiter, asked detailed process and then took 1 month prep time for the screening round :D

It will take me a longer essay to write what went through that one month. But I did start giving interviews at other places as well. In the hindsight, those served as good mocks for me. Let's cut to the chase now....

Screening Round

Similar to: https://leetcode.com/discuss/interview-question/2122202/google-screening/1485062

Feedback: Inclined positive. Recruiter pointed out my mistakes and cleared for subsequent rounds.
Took 3 weeks' prep time and got all the rounds scheduled. Focused mostly on increasing speed during this.

Round 1 (DSA)
Similar to: https://leetcode.com/problems/lru-cache/
Feedback: Below Average
(I find it funny now coz I had given a working code for similar problem couple of days back in a separate interview and got selected there; but as you know...Google is Google :P)

Round 2 (Googlyness)
Standard behavioural questions.
Feedback: Positive

Round 3 (DSA)
Similar to: https://leetcode.com/problems/range-module/
Feedback: Positive

Round 4 (DSA)
A problem on string manipulation using hashmap. Should be LC medium.
Feedback: Average

Verdict: Rejected (For all those hoping for a happy ending, alas.... :( )

My Two Cents:
Below are my thoughts based on the experience & feedback received:

  • Time management is of utmost importance. They give you 45 mins but realistically, you'll only have 20-25 mins for actual coding.

  • Diligent evaluation is done on these parameters: Coding, optimal DSA, communication, Solution Design & Efficacy (coding speed)

  • Time & Space Complexity: Know your time complexities crystal clear. I was a bit careless while explaining the same. Must have costed me some points.

  • Dry Run: Ensure that you've got sufficient time left for a dry run. Preferably, dry run yourself before pitching the final solution to the interviewer.

  • Resolve Ambiguity: Clarify all ambiguities before rushing through the solution approach and coding part. Sometimes, interviewer will purposefully leave the problem ambiguous.

  • Minimize Errors: Feedback from the recruiter made me realize that the interviewers did note each & every minute errors I made. So think before you speak and keep your code as clean & error free as possible.

  • Be prepared with standard behavioural questions for Googlyness round. Apart from the coding rounds, clearance of this round is a necessary but not sufficient factor for overall evaluation.

  • If I were to appear again, this is how I'd try to structure my time: (5 min)-Intro; (10-15 min)-Problem Statement discussion & Solution approach; (20 min)-Coding+Dry run; Remaining 5 min (You'd be really lucky to get that :P )

In the end, it was a bitter sweet experience for me. Sweet because I enjoyed the process. It can be a bit harsh compared to other organisations' recruitment structure but that is something you got to live with. Btw...I did end up receiving multiple offers from other places just because of my prep for these rounds ;-)

At last, a big shout out to the LeetCode community! I never really felt alone in this battle :-)

Comments (6)