There’s are many rumors out there about Google interviews, but believe me these are not very tough.And with proper preparation you can crack it.
The hiring process at Google takes a long time.Generally around 3 months.The hiring process for Software Engineer position at Google is structures like this :
1.Resume shortlisting unlike Amazon , Google pays special attention to you academics .So if you have very good scores you are ahead of others.
2.An online coding round .It’s just like other companies .You can expect standard questions here.
3.One or two telephonic interviews , where both the interviews are elimination rounds.The standard of questions asked in these round is almost similar to those asked in onsite interviews. Generally you will also be asked to write code on a shared Google doc.So be prepared for that.
4.If you were lucky and talented enough to clear all the above rounds you will be called for in house interviews at Google.Where you can generally expect 5-6 interviews with Google engineers.You will be grilled here on every front of software engineering.The interviewers are not allowed to share their feedback with each other during the hiring process.It means one interviewer doesn’t know how you performed in the previous interview.So here’s a good opportunity for you if you screwed up in one interview don’t loose hope and try to give your best in the next interview.
5.Once this is done your feedback from each of the interviewers will be submitted to a hiring committee .Which will make the final hire/no-hire decision.
So the questions comes on what factors interviewers at google judge a candidate?
The feedback generally is broken down into four categories
Analytical Ability ,Coding,Experience and communication skills.You are given an overall score of 1.0 to 4.0.By each interviewer.
If you got very high rating by some interviewer an bit low rating by others then that can increase your probability of getting hired than all interviewers giving you average ratings.
Which areas I should pay special attention to?
Google is a web based company so for sure expect some questions on scalability .
There are few other topics which sometimes candidates don’t give much importance but are asked in Google interview :
- Bit manipulation you will be asked a question on bit manipulation for sure
- Caching and memory limits : I’ve heard from many candidates that questions like implement LRU cache,external sorting etc are asked in almost every other google interview.
- ;Design questions : while some companies may not ask you design questions , but Google is not from those companies you will definitely be asked one or two design questions
Any tips for those preparing for Google?
- Prepare you data structures and algorithms very well. You should be able to code basic data structures and write code for basic algorithms in at least on language
Practice Design problems : Head first design patterns is a good book for this purpose
- Practice writing code o white board
What approach I should follow to answer a problem?
Here a post detailing the correct approach you should follow to answer and interview Problem.