Google | L4 | India | April 2021 [Offer]
Position: SE3, with a product company
Education: M.E. (Computer Science)
I got contacted by a Google APAC recruiter in December 2020. She was extremely cordial.
We had a call, where we discussed my experience, education, projects etc.
She also gave me a detailed walk through of the hiring process.
Scheduled my Telephonic interview in Jan.
Signed NDA, so I cannot give out the questions, but will cover the broad areas.
I was attending an interview for the first time since my placements ~4 years back.
I was quite nervous :p
Two questions were asked (LC Medium), one from stream manipulation and the other was basically a sorting question with a little twist.
Solved both in the stiplulated time. Got a call from the recruiter in few hours, feedback was good and progressed to the onsites.
Post telephonic further processes were handled by Google India recruiter. He is extremely cordial too, very helpful. I scheduled my onsites, in March. (had to reschedule once in between, they are very flexible in this and won't mind, just let them know in advance)
I had 4 coding/problem solving rounds and 1 googlyness round. System design is not mandatory for <=L4. I opted for coding and not system design. All rounds as 45 mins.
All these questions had follow ups, I am combining them and covering the broad area.
Round 1> Questions based on text fitting on screen with a little twist. (LC M) greedy & follow-up bin search.
Round 2> Questions on sub-sequences and text. (LC M) coded sub-optimal approach, discussed optimal approch, could not code.
Round 3> handle large file of bytes. (Not in LC) Hard question.
Round 4> Googlyness round, questions were asked from past experiences. Important projects, handling unwarranted situations etc.
Round 5> Graph BFS. (LC M)
Round 3 was nullified because of logistical issues. Had to go through another coding round.
Round 6> (replacement for 3) A NP-Hard problem. Not the usual interview types. Discussed for a long time. Coded a very buggy solution.
Next day Recruiter called me and shared feedback. Feedback was not good for one round (Not a surprise!) but overall positive. So moving to HC. Shared a pitching doc(achievements, promotions, transcripts etc.), filled it out. You have to provide your highest degree transcripts if they are <3 years.
Recruiter also arranged a fit call with a HM, who was interested in my profile. This call is used to see whether your interest alligns with that of the team. Talked about projects, experience etc. detailed discussion on the projects the team is working on, had a few queries, got them cleared.
I was interested in the team, the HM too wanted to move ahead. So team mapping was done.
After ~2 weeks since my last interview, the recruiter called me and informed that HC has approved my packet for L4. He also explained me the benefits, insurance etc. Asked me about my expected comp, the next step from here would be comp committee and exec approvals. BTW, sometime people are rejected after HC as well
The updates got a bit delayed because of the flaring Covid situation, got the first offer in a couple of days, negotiated.
Revised offer rolled out next day, accepted.
Few learnings / observations :
Google or any company for that matter, is not looking for just smart people, they are looking out for smart people who can work in teams.
If someone is a great problem solver, but bad in explaining/conversing, it will be difficult for him/her.
Focus on DSA (No-Brainer) There is no winning strategy, what works for me, might not work for someone else.
Keep upsolving, quantity does not matter, quality does.
Enjoy solving the problems, dont go overboard and set daily targets, that said, try to keep continuity (I am very bad at this, so I suffer).
Leetcode premium helps. Dont go for any other paid content, enough free material is already available.
Please practice speaking out when you code.
From my experience as an interviewer, in pressure situations people tend to go mum, this will surely hurts chances. If I need some silent time, I tell the interviewer, "Can I think for a couple of minutes?"
Lead the conversation. Create the environment as if you are discussing something with your peer/senior, this lowers the pressure.
Specifically for FAANG, make it a habit to go to >90%ile in time when you are practicing in leetcode. They are very picky about optimality.
Try not taking hints as much possible, always dry test. If there are issues you should be the one finding them.
Google recruiters will allow you time to prepare, take the time. Sometimes the process might seem tedious and long, especially the many committees/approvals, but these committees are their to help them remove the false positives. The process usually goes for many months, dont lose your steam :D
For me the entire process (recruiter call to HC) took 4+ months.
Your recruiter will help you a lot through out the process.
Intellectual humility and comfort with ambiguity are traits Google looks out for.
For Google, its better to have a competitive offer in hand, often gives you an edge during comp discussions.
Note: Google is not interviewing on google docs lately. They ask your preferred lang at start of the process, and gives you a coder pad (Interview portal)
Similar to sublime/notepad++. No auto-completion, but takes care of indentation.