I applied through a recruiter. The process took 5 days. I interviewed at Amazon (Los Angeles, CA) in Feb 2013
Interview
I was contacted by an Amazon recruiter via LinkedIn. I interviewed with them previously (unsuccessfully) and looks like they had me in their database.
The recruiter told me that they have a hiring event in LA and if I am interested, I can try. Of course I was interested. I have been obsessed with this job for a very long time. I failed once, but I learned a lot since. I decided to give it a try.
The event was in three days. Sure, I read up on some algorithms, but there is not much one can do in this kind of time. What I knew would have to be enough for success or failure.
They interviewed people in the hotel in LA. You get a separate room, and interviewers walk in, and each one of them gets about 45-50 minutes with you. They ask some theoretical questions (for example, design some classes for a chat system) and some whiteboard coding.
As to the coding, there was a lot of recursion and binary trees. There was nothing extremely hard or undoable, no NP-hard problems I was afraid of. I had 4 technical interviews and one talk with the recruiter. The interviewers were great - friendly and pleasant.
I got through without glaring errors or missed questions. But I feared that I was not brilliant enough for them. I was right.
Interview questions [1]
Question 1
It was hard to answer behavioral / situation questions. I am very bad at selling myself. It is probably good to practice these:
Describe a simple but great idea that you have successfully implemented.
Describe what you would improve in your current team.
Describe the biggest challenge that you faced in your work.
Describe the situation when your team could not make a deadline and how you handled it.
Recruiter reaches out after applying through Amazon careers, no referral. Had an initial OA, then after a month had four rounds in two days - three coding one system design. Each round had 30 min behavioral and 30 min coding.
Interview questions [1]
Question 1
Questions were mainly hashmap, sliding window and interval related.
The phone screen went longer than expected, focusing heavily on implementation details. The interviewer really grilled me on my approach to a Least Recently Used (LRU) cache, asking how I'd combine a hashmap with a doubly linked list. I felt well-prepared since I had gone through system design examples on PracHub, which made me comfortable discussing eviction policies. The later rounds included more technical questions and behavioral interviews, but in the end, I received an offer, though I ultimately decided to decline. Overall, I’d say the process was average, with solid questions.
Interview questions [1]
Question 1
Design and implement a Least Recently Used (LRU) cache supporting get(key) and put(key, value) in O(1) average time. Walk through combining a hashmap with a doubly linked list, eviction policy when capacity is exceeded, and how you'd extend it to handle thread-safe concurrent access.
Interview by recuriter, Phone interview over Chime with one easy Leet code problem and 2 behavioral questions. Although the interviewer was very casual at the start of the conversation, it quickly changed into behavioral questions at the start.
Interview questions [1]
Question 1
Encoding optimization algorithm and talk about a project you did recently.