I applied through an employee referral.
The process took 72 days from application to rejection email.
The process consisted of an initial first interview with one of the engineers on the team. This interview included a programming challenge (Leetcode 200: Number of Islands), some questions about my experience and background, and some questions about deadlocks and the hardware architecture of a system I worked on.
After passing this, I was moved onto the final interview loop. This loop included four hour-long interviews with the team and hiring manager. These interviews included:
I thought the interviews overall went pretty well, and I was surprised to receive a generic rejection email three days afterward. I will likely not be applying to Amazon again.
The recruiters were very supportive and responsive. However, the process was too long, and I received no feedback on why I was rejected, so I can't justify going through it again.
LeetCode 200: Number of Islands
LeetCode 126: Word Ladder II
LeetCode 23: Merge k Sorted Lists (This one was slightly altered to be files of log entries (entry objects) with a date property rather than linked lists of nodes with values)
System Design: Design a caching system for delivering virtual machine images to customers.
Design a class for a dynamically resizing array, which is initialized to 100 elements at first. The user should be able to append and pop from the end of the array.
Can you explain the concept of a deadlock?
The following metrics were computed from 3 interview experiences for the Amazon Software Development Engineer role in San Diego, California.
Amazon's interview process for their Software Development Engineer roles in San Diego, California is extremely selective, failing the vast majority of engineers.
Candidates reported having very good feelings for Amazon's Software Development Engineer interview process in San Diego, California.