I applied through a recruiter. The process took 1 week. I interviewed at Amazon (San Francisco, CA) in Nov 2012
Interview
The hiring process is extremely quick. I had a phone interview with HR, another phone interview the next day with a dev, and flew out the next Friday for an on-site. The entire process was very professional, and I was delighted that at the end I hadn't spoken to a single person with terrible English speaking skills (as is common in the industry).
The interviews are *extremely* easy for a top-tier tech company. Sadly I think they're far too easy, and a lot of not-so-good engineers get through.
Interview questions [1]
Question 1
The "most difficult" question I had was finding the intersection of two arrays. Seriously. The rest were even easier. I'm not kidding.
Interviewed for silicon team. Have only been asked about the domain specific knowledge in 1st round and system design in 2nd round and C coding in 3rd round.
The interviews were 50 mins each.
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.