The first part of the interview was quick. I applied online (via their careers page I think) and received a phone call within a week to schedule a phone interview.
The phone interview was pretty much what I expected, wasn't very difficult. They ask questions about your resume and experience and follow up with technical questions. Mostly CS theory questions like data structures and big-O notation. They also ask you to do some small coding exercises using collabedit.com. They gave me a problem to solve (can't recall what it was now) and after I answered they asked me to implement the algorithm using my language of choice.
A few weeks later I was flown to Seattle for an in-person interview. The position I was interested in is in California, but the in-person interview was still in Seattle... this was weird for me.
Anyway, the in-person interview was exhausting to say the least. It went from 10:30 to 3:30 if I recall. We didn't even really break for lunch. I *had* lunch -- we walked to a nearby restaurant -- but it was with an interviewer who quizzed me the whole time. It was an endless string of interviewers coming in and out. Each one with a slightly different flavour. This part is mostly what I expected, but the exhausting thing was that none of them were allocated enough time for their questions. I was essentially rushed for 5 hours straight. Before leaving, every single interviewer said "I usually take the time now to let you ask some questions, but as you can see the next interviewer is already waiting outside" and then he'd shake my hand and leave. I never did get a chance to ask my own questions.
I left the on-site interview feeling like I was not given a chance to show them how I could be an asset to the company. I few minutes after leaving the building and thinking back on my day, I had several "OH! That's what they wanted to hear.. dammit." moments which to me indicates a weakness in the interview process (or maybe just my interview skills).
The next day I got an email saying that they would not be making an offer.