Submitted my resume to their job application website after seeing a listing on a hiring board. Was contacted a couple days later by an enthusiastic recruiter. A day or two after that, the recruiter contacted me again and said that I was up for consideration and would be moving to the next step, online interview questions. After buying a webcam, I visited the interview website, recorded some responses to some general questions (career aspirations, interest in Amazon), then started with the two technical, problem solving questions. After typing, compiling, correcting, and submitting my answers (all via the website), I recorded short descriptions regarding my choice of solution and what my thought process was.
After waiting a week to get a response (apparently the manager they tasked to review my responses was sick) they called me and told me they would like to fly me in to Seattle to conduct some 1:1 interviews. I was scheduled for a date 2-weeks out, set up my reservations with the travel agent, and started reviewing different Computer Science topics to refresh myself.
Flew in to Seattle, walked to the office building (so I knew where it would be the next day), then settled down to relax before the interview. The day-of, arrived at the building the requested 15-minutes early, signed in at the front desk, and waited 10 minutes for the recruiter. Was escorted upstairs with one additional applicant. I did get a brief look at the office setting. Dress code was casual, there were common-areas and a kitchenette where employees were hanging out and conversing.
After a short lunch/meet and greet with the interviewers and another HR staffer, we were split into separate meeting rooms and had 4 1-hour interview sessions. The questions were difficult, but nothing unexpected if you've interviewed at a software-focused company before. The process seemed to go well, but in retrospect I was probably just too stressed to notice any subtle hints from the interviewers that I was not impressing them. The interviewers were nice, asked probing and sometimes guiding questions. They take lots of notes, they are constantly typing your responses, and the code you write, into their laptops.
After the interviews, the recruiter told us they'd probably be able to let us know within a couple days. I sent an email after a week, never got any response. I've heard some companies refuse to contact people they don't want to hire out of some sort of lawsuit fears, and apparently Amazon is one of those companies. I did get my travel expense reimbursement, so at least I know the company is still around. The lack of any response was really the only part of the experience that was not friendly. Considering I'm not applying for jobs because I'm bored, I would have appreciated a response of some sort. I don't know how I would have felt if I had lost another job opportunity because I wanted to wait one extra day for them to get back to me.
As for the trip:
Amazon did not provide a rental car (not that I'd want to drive in downtown Seattle during rush-hour). I should have familiarized myself with public transportation options. The light-rail to the airport to a block from the hotel they reserved for me was less than $3, though I took a $47 taxi ride TO the hotel. If you take a Taxi, make sure to ask the driver for a receipt (and make sure they fill it out to avoid any hassles).