The process took 1 day. I interviewed at Google in Oct 2010
Interview
The recruitment process was very quick. Once I applied online I received a call from Google offices in order to set up the interview.
It consists in a phone interview during which you share a Google doc with your recruiter. It firstly ask you something about your background, your past experiences and work. Then you get into 1 or 2 questions that involve programming skills.
The interviewer was very nice and patient and helped me a lot finding the solution.
Interview questions [1]
Question 1
Create a Java class that receives a collection of collections as parameter and provides basic iterator functions, that is next() and hasNext().
The inner structure (collection of collections) must be hidden by the external interface. The next() method must thus iterate over all the elements of all the collections, starting with the next one if the current ends.
I applied through college or university. The process took 1 day. I interviewed at Google in Nov 2010
Interview
Met with two Google engineers, one at a time. As an EE major I was not prepared to answer the technical questions. You must be an avid coder and understand algorithm efficiency calculations. I do not recommend a non-CS major to apply for a software engineering position unless you really do program a lot on your spare time. What I did not appreciate from the interviewer was how they had no intention of offering any positive feedback or encouragement at the end of the interview. He did not try to hide the feeling that he felt I was wasting his time.
Interview questions [2]
Question 1
Take an array of numbers and replace each item with the product of all the other items in the array.
I applied online. The process took 2 months. I interviewed at Google in Nov 2010
Interview
I had a pretty frustrating interview experience with Google, in particular with their recruiter.
I applied online and a Google recruiter contacted me about a week later asking if we could talk over the phone about openings at Google. I replied immediately, but it took nearly 2 weeks for him to respond to my email (I even pinged him a week later, but no repsonse). He scheduled a call, and I took that afternoon off from work for the interview. He didn't call. I emailed him about half an hour after the scheduled time to make sure I had the right time. No response. A week later, he finally emailed again saying he could do the call the next day. No apology or explanation. Finally, we had the call and it wasn't even an interview. He just explained the process (which I'd read all about online) and asked if I had any questions. No questions about my background or resume. We setup a phone interview for a week later.
The phone interview was about average (except again, no questions about my background or resume - straight into technical questions). I work for one of the big software companies & have conducted several technical interviews myself. The interviewer was pretty good, although there was one question in particular that he didn't explain very well and it took a couple of minutes to clarify what he was looking for. He started with a couple of C++ questions about the "static" keyword and about threading/deadlocks. He then went into coding questions. He didn't ask me to code anything, just to come up with the algorithms, and give the complexity in big O notation. We went through about 5 such questions, most of which had follow up questions to see if I could make a more efficient algorithm given different assumptions. I was getting positive feedback and felt that I did quite well. I felt it was at least a very good sign that we went through so many questions.
About a week after the interview, I emailed my recruiter a quick message that politely asked if he had heard anything back about the interview and to inquire how long it would typically be until I got an answer. No response. Another week went by, and no response, so I followed up again. Nothing. After more than 3 weeks, I emailed another recruiter who had helped setup the phone screen, asking if she could do anything for me. About 15 mins later, Jeff called back and said that they decided I wasn't a good fit. I asked for any bit of feedback, but citing confidentiality, there wasn't a single bit of information he could give me. He asked me to contact him if "anything changes in my situation". Not sure what that means, since I have no clue why I wasn't hired in the first place. I currently work at another major software company which is just as competitive, and I have earned the highest possible achievements in every annual performance review. I am even in a leadership program for the top % of employees. But apparently not good enough to pass the first Google phone screen :)
What bothered me most was not the no-hire. I understand that the Atlanta office only a very small number of developers. Not getting any feedback or reason for the no-hire was frustrating, but the most upsetting was the way I was treated by the recruiter during this whole process. His time was clearly much more important than my time. Spending 30 seconds to reply to an email was asking too much. I don't think I will be applying for a job at Google again.
Interview questions [1]
Question 1
Describe a situation in which you could have a deadlock in an application with only one thread.