I applied online. The process took 3 weeks. I interviewed at Amazon (Seattle, WA) in May 2013
Interview
I applied online and got an email from a recruiter, asking me to take a coding test online. That had three questions on implementing regular linked list, tree, matrix functions you'd find in Career Cup or geeksforgeeks. Two weeks after this, the recruiter invited me for an on site interview at their Seattle office, air fare, hotel etc. all paid for obviously.
There were about ten candidates that day, and we all went through 4 one on one interviews of 45 minutes each. I am not going to violate the NDA by mentioning specific questions here. The process however was very smooth. We started off at 12 noon with lunch, where we had a chance to casually chat with the engineers who would later interview us. This really helped clear the tension a bit. ;) All four interviewers were extremely friendly, and the interviews were more like a discussion/conversation on solving a problem and coding it, rather than a question answer session. There was nothing excessively difficult, but almost every interviewer checks your ability to think in terms of high level design, apart from coding, data structures and algorithms. So expect some system design questions where you'll have to come up with classes, establish relations between them, and probably code a couple of interesting member functions.
Couple of days later, I got a call from the recruiter informing me that they were willing to make an offer, even got the offer letter later that day.
Applied on amazon.com. After 1 month, a HR emailed me a online assessment. There are three questions and need to be done in about one and half hour(I could not remember this). After that, the HR noticed me a onsite interview. There are 4 rounds, and 45 mins for each.
I applied through college or university. The process took 2 days. I interviewed at Amazon (Waterloo, ON) in Feb 2013
Interview
Applied online, followed by a half hour phone screen, and then after that, I had four 1:1 interviews with technial recruiters on various teams. They asked standard algorithm-based questions, focusing on amortized analysis and runtime/space efficiency concerns. Basic algorithms were mostly theoretical with little actual coding required.