This is a little late but I hope it will help someone else! I am so grateful that this site and community exists. Seriously.
Status: New grad, BA CS
Position: SDE1 at Amazon
Location: Seattle, Washington
Date: Dec 10, 2019
Interview Process
Interviews
(Note: I will not go into specifics as they will probably not help in future interviews)
The first 15 or so minutes of each interview were dedicated to leadership principle questions.
1st round:
The rest of the interview was dedicated to a technical question. I have never seen this question, and I am pretty sure it was made by the interviewer, but it was very abstract. Ultimately it was a data structure design question. I think the purpose of it was to see if I would be able to take an abstract problem and break it down until I resolved all ambiguities and understood it well enought to create a data structure that would solve the problem.
2nd round:
This was a system design question. What made this one challenging were the constraints.
3rd round:
The technical question was a leetcode question with a twist that made it more challenging. I had never done the question before but I solved a problem that had a similar theme. I expected something like this a little more than the previous two as many people had said Amazon asks a lot of graph algorithm questions.
General Thoughts
I thought that my interviews went really well. I was surprised that got two design questions. Of course these were object oriented design as opposed to system design. However, I think it helped that I had been practicing system design questions such as LRU Cache and Search Autocomplete. Practice design questions! Even if you're applying as an undergraduate.. In my opinion, they can be a little more fun than the algorithmic questions anyways.
You should probably have at least three projects that give you enough ammunition to "crack" the first 15 minutes of each interview. I did not spend time practicing for the LP questions because I felt that it would be more organic to just answer. I don't know if that will work for everyone, but I felt that it did for me.
I also openly discussed my thought process while attempting to solve each question. Given the time constraint in the design interviews, I could tell that the interviewers were not looking for the most optimal solution. I think what helped me the most was asking questions to understand the specifications and openly discussing my choices. In fact, during the first interview, I did not finish writing up my solution but i had discussed enough details that the interviewer felt good about my approach.
Overall I enjoyed my interview experience! I felt that all the leetcode-ing, mock interviews, and coding challenges were hard but well worth it.
The topics that I reviewed the most were:
Also, try to work with a group of friends! I found this super helpful. Mock inerviews are really awesome when preparing.
Best of luck on your interviews!