I appeared for a phone screen about a month ago. I was asked one question about Arrays and Strings, which I implemented on a shared Google Doc, explaining complexity, etc.
The interviewer then asked me to design an algorithm for another question and explain its runtime complexity.
Couple of days later, I got a call from the reviewer inviting me for an onsite interview.
I took a date for about 3 weeks later and prepared using the "Cracking the Coding Interview" book and LeetCode.
The onsite interview had 5 rounds, not including lunch. One of them was System Design. The other four were regular data structures and algorithm questions.
One thing to be aware of is that the interview will always start with an easy question. The idea is that they expect you to quickly code it so you can move on to medium/hard questions.
It is expected that you will be able to completely code the 2nd or 3rd question as well.
You should also try to show off coding skills, like writing quick test code (e.g., JUnit) or using algorithm names if possible.
With the System Design question as well, throw in library names or design patterns.
The bottom line is that at the end, you might think you did well because you answered all questions asked, but you still may not have impressed the interviewer.
Data Structures, Graphs Traversal, Tree Traversal
The following metrics were computed from 748 interview experiences for the Google Software Engineer role in Mountain View, California.
Google's interview process for their Software Engineer roles in Mountain View, California is very selective, failing most engineers who go through it.
Candidates reported having very good feelings for Google's Software Engineer interview process in Mountain View, California.