I applied through university. The process took 4 months. I interviewed at Amazon (San Francisco, CA) in Oct 2016
Interview
Applied on their website. Got back to me a week later with a coding challenge. It was about an hour long and involved debugging some sample code. It was pretty easy and I was able to complete it even though I was not entirely sober. They video tape you the entire time. Heard back that I passed and moved on.
After a coding challenge as a first step, most companies usually move to a phone screen. This was not the case with Amazon. I was invited to complete another coding challenge online. This challenge would also be video taped and IT WAS 4 HOURS LONG.
Seriously Amazon? 5 hours of video taped online challenges just to even to speak to someone who works at your company? We are all busy students. How much time do you think we have? As if your corporate culture wasn't bad and abrasive enough, even your interview process is awful. It's appalling that competitors like Google and Facebook have such friendly processes that involve working with a recruiter at every step and Amazon can't even be bothered to make candidates feel welcome. Clearly they are just looking for code monkeys who can stand such poor treatment because they will not complain once they are hired and are subject to Amazon's corporate culture.
Luckily, I had multiple offers at other firms where I was respected as an engineer and a human being. Good riddance.
Interview questions [1]
Question 1
The coding challenge had very basic coding errors, such as off by one, missing braces, etc.
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.
First round with hr screening - 2 leetcode questions then hr manager screening then the loop which consists of 4 interviews each an hour long. The 4 interview questions they asked where three medium leetcode questions. And one system design interview question about how to shadow deploy a test software to millions of users.
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.