Got two emails from a Google recruiter based on academic institutions I had listed in my Google+ profiles.
I gave the recruiter a call and he called me back the same day. We had a 20 minute conversation about my current experience and about what I was looking for in a future job. He then said he would like to set up an interview in the next couple of weeks. He also requested I send him a copy of my resume.
8 days later I got an email from an interview coordinator. The interview was setup for 6 days from when this interview coordinator contacted me.
The interview was to be conducted over the phone and use a Google doc. I sent an email back to the interview coordinator asking if I could setup a Google hangout interview instead, since I don't have a headset that attaches to my phone, but I do have a webcam and headset that attach to my computer. (I watched an interview preparation video on the Google jobs page that suggested that I have a headset, and not to use speaker phone). The interview coordinator sent me instructions for the Google hangout interview; these instructions said the interviewer would contact me with the URL for the hangout.
I spent the weekend before my interview preparing, I practiced coding every sort and search function, some patterns that I haven't used in a while, etc., as I finished my undergrad 5 years ago, and expected the interview to be quite academic, based on feedback I've read on this site. Also reviewed OO principles, etc. I thought I would be in pretty good shape for the interview.
The time for my interview came around, and no email from the interviewer containing the Google hangout link. I figured I would give the interviewer 10 minutes before I took any action. 15 minutes later, still no email. So I emailed my recruiter. I got an email back from him almost immediately saying he would contact the interviewer. I then got an email from the interviewer with the hangout link. I clicked the link and it said I did not have permission to join the hangout. I also noticed the interviewer had not joined the hangout. I then got a call from the interviewer. He said that he hadn't ever used hangout before in an interview and so we should just do the interview over the phone, as that was his preference. I asked him to give me a minute to try to get the audio worked out on my end as his voice was muffled to the point I could barely understand him. Nothing I did fixed this, so I asked him if he was on speaker, he said "yes". I asked him if he could go off of speaker because I couldn't hear him. He did and then I could hear him perfectly, but both of us had to hold our phones, which was quite uncomfortable.
He continued by saying that he just had one question for me, and that it would probably take me the duration of the interview to complete. He pasted a java function into the Google doc (as I am most familiar with java). He explained briefly what the function was supposed to do, but said there were errors in the code and that it didn't currently accomplish the goal and that he wanted me to identify and fix the errors.
I won't specify what the code did, but I will specify that it dealt with a domain I was only vaguely familiar with. I started walking through the code with the interviewer to understand the flow of data through the function. The code was quite simple, and with some help from the interviewer identified the first issue. The issue was an incorrect mathematical function. For example the line of code was supposed to produce f(x) = y, but it was not producing y. The function was not difficult, but I couldn't figure out what the mathematical manipulation of variables should be to produce the desired outcome. The interviewer then went on to say that we had only 15 minutes left in the interview, and that we should move onto to see if we can find more issues. So we stepped through some more code assuming the first issue was working correctly. Then I found the next issue, it was exactly like the previous issue. This time the function was a little simpler, but still not something you could solve in less than 5 minutes. I tried a few different things, talking the interviewer through exactly what I was thinking. Then the interviewer said that our time was up, but that he would give me an extra five minutes to solve the current function, as I was getting pretty close. In the five minutes, I solved that function. He then asked if I had any questions about Google that would be appropriate for an engineer that it was likely the recruiter couldn't answer. I asked two questions and then we ended the call.