I was contacted by a Google recruiter. The entire process took about 2.5 weeks.
I had one technical phone interview and thereafter was asked to come for the on-site interview at Google HQ a week later. The recruiter was nice and helpful.
I'd suggest eating a breakfast or something light prior to starting the on-site interview, as there was no breakfast or snack provided while I was waiting in the check-in area for the recruiter to come get me. Once I was in the room, the interview started right away.
The on-site interview consisted of 5 interviews and one lunch. The format was typical for big tech companies, including:
The interview questions were difficult and pushed many limits. Most interview sessions were great, and most interviewers were very helpful, trying to steer and guide me in the right direction whenever I was stuck.
However, there was one interview session I'd consider the worst I've experienced. It was surprising to me how Google still had a very, very bad and arrogant interviewer. This particular interviewer made the entire session extremely stressful. I wasn't sure if this interviewer was trying to show off to a person shadowing the interview session. The entire session was unhelpful, condescending, and interrogative. I never received any helpful guidance when I asked for clarification or tried to explain my approach. It reminded me of an immature teenager who giggled at someone doing things wrong. I guess it was one of those days.
The person I had lunch with (during an interview) didn't seem to know (or care) anything about Google internally. When I asked about his day-to-day, he never had a clear response and did not show any excitement about working at Google, except for the food. I learned more about Google projects from the recruiter than from this person. I was quite disappointed.
I couldn't tell much due to the NDA, but here are the hints:
Recursion, trees, DFS/BFS, and graphs are definitely must-know topics.
Look for concepts related to finding common ancestors, the longest increasing sequence, and understanding the tradeoffs of different sorting algorithms.
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.