I applied through a recruiter. The process took 1 day. I interviewed at Google (Mountain View, CA) in Feb 2016
Interview
Went through the initial phone screen, after which passing they'll set you up with a technical interview which includes a code challenge. I stopped the process at that point since they require you to take a step down if you come to Google. The recruiter I talked with could sense my hesitation there, so she brought in someone technical to answer some of the technical questions. While I'm sure it is a great place to work, the "Google is the best place to work and everywhere else sucks" vibe really turned me off.
Interview questions [1]
Question 1
A lot of text book questions out of a BS computer science program: "what's the complexity of this search", "what is [some data structure]", and so on. Rate yourself from 1 - 10 on the following categories: databases, distributed systems, ....
I applied through a recruiter. The process took 5 weeks. I interviewed at Google (Mountain View, CA) in Feb 2012
Interview
A recruiter contacted me based on my LinkedIn profile. Following an initial interview with the recruiter, I had a phone interview with the hiring manager. This was followed by an all day onsite interview. Each interview was approximately an hour. The interviewer asked technical questions, and took detailed notes on everything I said. The interviews were with the hiring manager, three technical folks, and the recruiter.
Interview questions [1]
Question 1
Design a boggle solver. (The hidden catch was that the interviewer had not specified that the words were English. Unfortunately, I made that assumption)
I applied through an employee referral. The process took 2 weeks. I interviewed at Google (Mountain View, CA) in Nov 2015
Interview
Submitted resume through a friend. Had a phone screen interview, then an onsite interview. I was interviewed by, I think 6 people, which involved one junior engineer, a few senior engineers and a few managers. The questions they asked were generally reasonable, smart engineering questions. I had not prepared for a grueling technical interview, and since I am coming from a fairly demanding management position, I am less fluent with coding than I once was. Still I think I have a right to call myself an excellent developer, especially in the skills one gains with significant experience, such as architecture and systems optimization.
I had an off day. I definitely did not nail all the technical algorithm writing parts of the interview, but to be totally frank, the reason (other than just being "off") is that I was rusty is that very few people DO that kind of coding anymore (ie "write logic to find a cycle in a linked list"), because it's abstracted away in modern languages. It's important that developers know how low level algorithms work, but to expect them to build highly optimized syntacticly accurate algorithms for weird problems is not interviewing for the skills that will really be needed in most of these jobs. I think what it does is find the super smart just-out-of school engineers, but does a disservice to those who have moved on to higher-level engineering problems. Forcing me to do it on a whiteboard rather than giving me a computer is also the sort of thing that I would expect a progressive company like Google to have done away with by now. Who composes real code on a whiteboard in real life? Anyhow, I got turned down for my technical performance, which I genuinely resent, as it's a misjudgement.
Interview questions [1]
Question 1
In a dir. name containing an arbitrary number of "/.." parts, like "/a/b/c/d/../../e" implement an algorithm that removes all instances of /.. along with the preceding directory, to reduce away all /.. syntactically. Now adapt the algorithm to be run on a VERY long string, which must be broken into pieces and solved using MapReduce.
Yeah, not trivial.