A Google recruiter pinged me on LinkedIn for a possible opening at Kirkland. Soon after talking on the phone with the recruiter, a phone screen was scheduled. I did well, and within two weeks, an onsite was arranged.
Although the question quality and interviewers were great, I found the Google interview very unorganized. Sure, Google does not want interviewers to talk to each other to avoid spreading influence. That is good. But there needs to be some coordination beforehand.
For example, I interviewed for a developer role, and none of the questions asked to me were on design or problem-solving. About 80% of the questions required recursion use, and some were arcane (reverse Polish notation, twisted graph).
I don't know what Google interviewers measure by asking such questions. To an extent, they were good questions (I could not find any in a book), but when 80% of questions require recursion use (discouraged in any production-quality code), they test little about a candidate's suitability for a job. I even gave the feedback to the recruiter, and she was nice enough to acknowledge the issue.
Although I did not get an offer (fumbled on a couple of questions, including RPN), I found the interview very intellectually stimulating.
Given a graph, find if it represents a tree.
Priority inversion, and how to solve it.
Develop an iterator (has_next, next).
Find the longest word in a dictionary, such that the word can be built one character at a time, and all substrings are words in the dictionary. A new character can be added anywhere.
Discuss data structures for reading URL->File content (crawler data e.g.) and remove duplicates.
Find a number in a sorted array with duplicates in O(log n) time.
Card game: given 4 cards. If by +,-,/,* and () you can make 24, you win. Write a program to play this game.
The following metrics were computed from 22 interview experiences for the Google Software Engineer role in Kirkland, Washington.
Google's interview process for their Software Engineer roles in Kirkland, Washington is extremely selective, failing the vast majority of engineers.
Candidates reported having good feelings for Google's Software Engineer interview process in Kirkland, Washington.