Day 0 — I apply to seven different Software Engineer positions in the Bay Area simultaneously via their website.
Day 0 — 38 minutes later, I receive an email from a Recruiter (call him R1), who's also an Engineering Manager (?). He asks when we can talk over the phone about "matching me up with the right opportunities at Google." I send a timestamp back.
Day 2 — Phone call with R1, about ten minutes. He asks to tell him about myself, what my background is, what I'm interested in, why I want to work for Google, etc. He ends by telling me we'll set up a phone interview, which I intentionally schedule for a couple weeks later. (R1 asks me to choose a programming language for the interview, and mentions that he'll be sending me a syllabus to prepare.) Recruiting Coordinator 1 (RC1) emails me the details of the phone interview, which we confirm.
Day 9 — Still no syllabus. I email R1. He sends me a verbatim excerpt from the Steve Yegge blog post you've already read.
Day 15 — Phone interview day. 25 minutes into the schedule time slot, no call. I email RC1. Auto-reply: that account no longer exists. Great. I wait a bit longer. I give R1 a call; no answer, leave a voicemail. He replies within the hour, says he's sorry, asks for availability to reschedule. I reply.
Day 23 — Phone interview finally rescheduled for day 28, by new Recruiting Coordinator (RC2).
Day 28 — Phone interview, take two. Interviewer (a Software Engineer) asks me a little about myself, then moves on to the questions (I won't go into details, due to the NDA). About twenty minutes of basic Q&A about my language of choice (nothing remotely advanced). Then he asks me to describe (just out loud) the 'find' method of a common data structure. Then he modifies the problem definition slightly, and asks me how I would change the 'find' method. This seems fairly straightforward to me. He asks me to implement it in Java in a shared Google Doc. I do. I step through it with some examples. That's about it. I hang up: I think I nailed it.
Day 36 — I email RC2 to check for any feedback. She defers to R1, who within minutes invites me on site to interview. I send my availabilities. I receive confirmation of my interview from RC2. I confirm, and send back two filled out forms (application + NDA; travel form).
Day 37 — I make my travel arrangements through their travel agency. They pay for my flight, lodging for the night before and night after, rental car for the duration, transportation to the airport, and food for the duration. (I easily add two more days at my own expense.)
Day 37 — R1 emails me to tell me he's leaving Google. R1 introduces R2 (not an engineer, this one).
Day 38 — R2 emails introductions and asks when we can talk by phone.
Day 42 — Introductory email from RC3, with two documents which are, again, verbatim excerpts of Steve Yegge's famous blog article.
Day 43 — Phone call with R2, describes the on-site interview; nothing I didn't already know, except (fairly useless) one-line bios of my four interviewers. Eventually I start wondering why I'm seeing and hearing "Google/YouTube" when it used to be "Google," so I ask. I find out I'm apparently applying for YouTube now and no one bothered to tell me. R2 also tells me she won't be able to make it to greet me on the day of my interviews, so R3 (also not an engineer) will be replacing her.
Day 54 — On-site interviews. I show up to the wrong lobby, having assumed there was only one. (Pro-tip: check your email from the Recruiting Coordinator for the exact building and address.) Luckily, I was early enough to make it to the right building on time. Interview, interview, lunch, interview, interview. No breaks at all between interviews. Interviewers either give you a blank expression with no feedback as you talk or else hold your hand all the way to the solution. No middle ground. Half the interviewers didn't seem to want to be there. Thought I did kind of okayish in three, badly in one. Very hard to tell over all, but I was pretty sure I wasn't getting an offer.
Day 57 — Within three minutes of each other, emails from both R2 and R3, asking to talk over the phone. I sort out the disorganization, get a call from R3, and am informed I will not be moving on. The only feedback I can get is that my "coding" is lacking, which doesn't make much sense to me.
Day 58 — On to other companies.
(Day 73 — Still no reimbursement of expenses...)