Google | L3/L4| India | May-June 2021 | [No Offer]

Education: B.tech from Tier 1 college in India
Years of Experience: 5 years
Company: Google
Title/Level: L3/L4
Location: India

I was first contacted by a Google recruiter back in Aug 2020, but due to pandemic situation could not appear back then, was contacted again 2 months back in April.The whole process took about 2 months.

  1. Phone Screen: Would rate it as LC- Medium, it was a matrix based question where you have to call an external api on each element to know if its valid or not, utlimately return the maximum allowed value from the matrix, follow up - how to solve it for infite size 2d matrix.I was able to get to the optimal solution, wrote the code in time, missed an edge case though, interview looked satisfied.

After two days the recruiter called me saying I have passed the phone screen and they would want me go for the onsite.I had 3 ds/algo and 1 Behavioral round each lasting for 45 minutes.

  1. Oniste 1: The interviewer jumped to the question without even introducing himself, question was based on graph LC- hard, basically it boiled down to finding cycle in directed graph.Initially I struggled to identify it as a graph problem, after a small hint got to the solution, wrote the dfs solution made a silly mistake of passing global visited set in dfs call and not backtracking, later pointed by the interviewer, other than that I thought I did well, I found the interviewer unexpectedly unfriendly, it was rather tricky to convert it to a graph problem, I had never seen any similar problem before, I was feeling good about coming up with the solution.
    Feedback: slow coding, use of global var instead of local in dfs call, needed hint initially.

  2. Onsite 2: This was my best round , again LC-medium/hard matrix path based graph problem- boiling down to applying bfs with priority queue or dijkstra's, I was able to identify the problem as soon as the interviewer finished pasting the question, told my approach, he seemed happy and asked me to write the code, could not give the optimal solutuon for the second part that needed to precompute the distance between two valid cells that can be visisted during bfs.
    Feedback: slow coding, close to optmized solution

  3. Onsite 3: The interviewer seemed friendly and asked me about my work for about intial 10-15 minutes it was all chit-chat, there were two part of the question, first part could be done using map, I told him my approach and he asked me to skip the code and jumped to second part, it was based on heap, after thinking for some some time I came up with max heap based solution which I was not very confident with, interviewer said I was going in the right direction but I ended up with brute force time complexity due to choosing max heap over mean heap, since we had already spent some time initially in chitchat, I was checking the clock constantly and got nervous, I messed up this round instead of using min heap I picked max heap, question was not very hard and I would label it as LC- medium leaning towards hard, right after the interview I realised my mistake when I drew it on paper.Interviewer did not give any hint at any time during the whole interview.
    Feedback: slow coding, wrong choice of data structure, unoptmised solution.

  4. Onsite 4(googliness): The interviewer started right with the question, he asked me a few situation based questions, it was overall a good discussion and we finished before time.I think I did pretty well in this round.
    Feedback: very positive

After a few days the recruiter informed me that they are not going ahead with me at this time, which I was also kind of expecting based on my not so good permformance in 2 of the coding rounds.

I had started using leetcode more regularly 3-4 months back, I have solved about 220 problems over the last year(around 100 in last 2 months), mostly medium.

Overall it was good experince but went on for 2 months which I felt was tiring.The most important thing I learned specific to google is that they want you to be almost 100% on top of the solution in coding rounds, you need to be fast in writing code, choose right data structure, come up with the exact time complexity of you algorithm, your solution should not be sub optimal, I was being too optimistic and thought could get through if I perform at 70%-80% .They note down every little detail that you did wrong in the interview which could decide your interview fate.I was not expecting all hard question going by old L3 interview experinces on LC, I felt dificultly level was little high I even saw same question asked to L5 that I was asked in one of the onsite,I guess google could ask same difficulty level questions irrespective of the level being interviewed for, so luck also plays a decent part here.
I hope this helps in some way.

Comments (4)