The process began with a tech recruiter who asked 10 multiple-choice questions covering various computer science topics such as Java, C++, and HTTP. This served as a quick smoke test to eliminate candidates efficiently; those with a computer science background would find it very easy.
Following this, I had two technical phone interviews. Both focused on computer science algorithms and emphasized runtime analysis.
Finally, I completed one onsite interview, which consisted of four separate interviews. These again focused on data structures and algorithms, including questions about blocking queues, heap-like structures, and string serialization.
I enjoyed interacting with all the interviewers; they were friendly and we engaged in some excellent dialogue. It seemed like a great place to work.
Aware of my interest from other companies, they expedited the offer process. The recruiters were very friendly, but they were also somewhat pushy in wanting a swift decision from me.
Implement a blocking queue in Java.
Implement a system to serialize and deserialize strings.
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.