Amazon posted an intern offer on my school career website. I submitted my resume, was contact about 2 weeks later to schedule two 45 minute phone interview. First interview I was asked about to describe projects on my resume, then was asked to list off some data structures. Asked to list all the sorting algorithms I could think of (only listed mergesort, quicksort) and then was asked if I knew the runtimes of these. Then was a coding question which I can't remember, something to do with strings. I had to read it aloud back to him. Asked how I could improve it and the runtime. Then asked about object oriented programming and how I would represent a card game and which methods it would need. The interview ended with me asking questions. The second interview was with someone with a heavier Indian accent, he said he was a tester. He asked me the difference between an arraylist and linked list, then to write a program on paper, I cant remember what it was exactly. I was then asked how I would test the program and if there were bugs how I would deal with them. Then asked about polymorphism and inheritance. Interview ended with me asking questions. I was contacted about a week later to schedule a 3rd phone interview and they actually apologized that I had to have one. Had the interview a week later and right off the bat was asked only one programming question. It was how to find a subset in a string. I had to describe the runtime. The interview was only a half hour I believe and it ended with me just talking to the guy, he had been working there for 7 years and knew someone else who had for 13 years. Asked about the pagers, etc. The day after I was offered an acceptance. To tell the truth, I thought I ruined my chance with all interviews. I answered runtimes wrong, and admitted I didn't remember what polymorphism was. So I was very surprised that I had an offer for another interview. I also thought I ruined the 3rd interview because it took em a very long time to figure the answer--and I don't even know if i got the right answer in the end, because the interviewer had to help me. The main key is to EXPLAIN YOURSELF. I said I had difficulty with things, and how I would TRY to program it or fix it and just talked it out while I was writing it. It really helps to show how you think ,which I guess they liked in my case!