I applied online at my school's job/internship site and got offered an on-campus interview. It consisted of two half-hour long sessions (with two different developers) where I was asked to solve a few different programming problems. While I'd like to keep the exact contents confidential, I think it's safe to say DATA STRUCTURES, DATA STRUCTURES, DATA STRUCTURES. If you know data structures, you will probably be fine. By "know", I mean common structures (hash table, linked list, array, stack, queue, heaps, binary trees, self-balancing binary trees) and space/time complexity for various operations.
I didn't get a strong grasp of the people/office/work culture just from this interview experience, but later on I talked to a manager in my intended division and received a generally positive impression (although my overall impression is that Amazon likes to work its employees hard).