A recruiter found me through GitHub and LinkedIn and emailed me one day. I agreed to go through the interview process for an SRE position. Since I was not actively looking for a job, the interview process was quite long and drawn-out, but I didn't mind.
I was given a choice between Java, C++, and Python for the interviews. I chose Python for its terseness. In hindsight, it probably doesn't matter as long as you can write valid code in your language of choice.
There was an initial 1-hour phone interview where another SRE asked an algorithm question, and I had to type up the code for it into a Google Docs page. I recommend getting a headset for this if you don't already have one.
The problem was easier than I expected, but I stumbled around a bit before finishing the complete solution. I solved it within 45 minutes, but it could've gone better. Some interviewers have a way of making you nervous.
Since the first phone interview could've gone better, the recruiter decided to have me do a second phone interview. This one went much better. The engineer was easier to talk to, and I solved the question with relative ease. I also had about 15 minutes to chat afterwards.
Then, I was called to do an on-site interview at the headquarters in Mountain View. There were 5 interviews, each 45-60 minutes long, with a different person each time. Each of the questions had a simple brute-force solution, and I got to at least the brute-force solution for all of them.
The bulk of the interview is then taken up by trying to find a more efficient solution. The interviewer will give hints on which path to head down to find the more efficient solution. Without hints, some of the efficient solutions would take a lot of time to come up with. Overall, most of the interviews went well. There were a couple of questions that I couldn't complete due to time constraints.
Four of the five interviewers were a pleasure to talk to. But then there is that one guy who acted like I pissed in his wheaties. Pretty poor social skills. Unfortunately, bad feedback from one guy is probably enough to dissuade the hiring committee.
One thing that surprised me is that no one asked questions about my resume. In fact, I'm pretty sure no one read it. As far as I know, no one looked me up on GitHub to see my past projects (I have a few successful and non-trivial ones too). It seemed like the entire hiring decision was based on whether or not I would be a good TopCoder competitor.
Overall, the interview process left a bad taste in my mouth. Being pummeled by algorithm questions with clever solutions isn't the best way to judge a candidate. Nobody was asking the questions that actually matter.
The following metrics were computed from 25 interview experiences for the Google Site Reliability Engineer role in Mountain View, California.
Google's interview process for their Site Reliability Engineer roles in Mountain View, California is extremely selective, failing the vast majority of engineers.
Candidates reported having very good feelings for Google's Site Reliability Engineer interview process in Mountain View, California.