I applied through a recruiter. The process took 2 weeks. I interviewed at Google
Interview
I was contacted on LinkedIn by a recruiter. They set up a phone interview, (two technical questions) which I passed, and the guy was very easty to talk to and seemed to really love working there. HR set up another phone interview the following week, which I was excited about until I heard the guys accent and my heart sank - I knew this wasn't going to go well.
He spoke with a very thick Indian accent, was completely unpersonable, and extremely short. He gave one-word answers to all of my questions, and most of what he said I couldn't understand due to his accent. He spent absolutely no time learning anything about me or breaking the ice. He called, mentioned his name (I have no idea what it was because I couldn't understand him), and said "Are you ready to start the interview?" Immediately I considered saying I was under the weather and requesting to reschedule (and hopefully get a different interviewer the next time). The fact that this guy even got hired by the company at one point (and especially is *interviewing* people) really surprises me. I mean, at some point he had to talk to someone, right? How did they understand him? I constantly had to ask him to repeat things, and he probably thought I was stupid or stalling.
It's a large company and they make mistakes, which I can forgive. I just wish I had gone through with my plan to reschedule.
Interview questions [1]
Question 1
The questions aren't difficult, but they seem to really like linked lists there (just my personal experience). I had a question dealing with reversing pairs of nodes in a doubly-linked list, one essentially implementing an LRU, and two that were simple critical-thinking problems (no data structures required).
HR is on the ball pulling guiding you through the process. However, they seek talent first, then match you to a position. You aren't likely to interview with anyone you'll work with, or learn about specific projects. SDE interviews look strictly for a particular skills. You're in or out based on those.
The process took 3 weeks. I interviewed at Google (Mountain View, CA) in Feb 2012
Interview
Phone interview included using Google Docs as an electronic white board, on which I had to write a JavaScript function and some pseudo code for a simple algorithm. That went well.
The on site interview was the opposite, except for the nice HR person who sounded supportive and encouraging. She reminded me to talk about order of complexity for each piece of code. There were six interviews, 45 minutes each.
First interview, I was asked to write a recusive function to print all the possible words from the characters the user just typed. It was simple enough, but I missed one step and did not have enough time to recover.
The second interview was another programming exercise and I nailed it.
The third was more about doing dynamic layouts using CSS and how different browsers render them.
The fourth interviewer was suppose to be the hiring manager. He took me to the cafeteria to get food and led me to our meeting room, which was hijacked by another group. We found another room which was half filled with broken furniture, not very appetizing. To top it off, he was busy looking at his cell phone and told me to just eat! I ate quickly and tried to engage him in a conversion, but was not very successful.
The fifth person told me he was a substitute, cause his boss was pulled off at the last minute. Obviously he was not prepared so he spent all the time asking me how to improve web page performance, which was his specialty so there was no way I could impress him.
I was so discouraged by this time that I just wanted to go home.
Interview questions [1]
Question 1
Browsers running javascript is single threaded, how can we make AJAX calls in the backgroung?