亚麻New Grad过经-3轮VO


People might know the usual Amazon New Grad Process steps, but for those of you who do not know anything about it, these are the 4 steps:

Online Assessment

  • OA 1 - Debugging Round [20 mins] :
    7 questions in C, C++ or Java to be solved in 20 minutes. I took this too lightly and tried solving them in a crowded environment which made me face a time crunch. I was able to get 6/7 correct. Although it is very easy to get 7/7. Lesson learnt: do not take anything lightly!
  • OA 2 - Technical Round [70 mins] :
    2 Algorithm questions straight out of Amazon Online Assessment Questions. I got Merge Two Sorted Lists and Subtree of Another Tree, both of them being LC easy. I really find myself lucky enough to get them, solved them in about 15 minutes, passing all test cases. Also, this round has an untimed survey kind of thing which asks you behaviour questions to be answered ideally keeping Amazon’s Leadership Principals in mind. They present sliders to choose options, so you do not need to type anything in. This round went well!
  • OA 3 - Work Style Simulation and Logical Reasoning Round [2.5 hours] :
    This round has various work style simulations, which tests your decision making skills given any work related situation. Be thouroughly prepared with Amazon LPs, and irrespective of what is moral or not, always stick your answers to what a “Leader with Leadership Principals” would do, imagining yourself at Amazon, given any situation. Also, after the tiring work simulation, you have 25 logical reasoning questions to be solved in 35 minutes. This one is kind of rough and I just finished by the last minute. For this, I do not think you can practice much but be sure to solve problems fast. Problems aren’t tough but you got less time to do them.

Final Interviews (3 rounds)

After successfully completing the online assessments, I was invited to a survey to fill up my availability for final 3 45 minutes each virtual interviews, with 15 minutes in-between interview breaks. A lot of people get 1 or 3 virtual interviews after their OAs. People with 1 final interview are lucky enough as they are usually asked to just explain and optimize the code they submitted for OA 2, thats it (Ridiculous!). Also, there is no knowing that people with flawless OAs have gotten 1 final interview as I’ve seen many contradictory cases. Anyways, this is what I had:

  • Round 1
    The interviewer was a young SDE from the looks of it. As far as I remember, he started of asking me some LP questions such as:
    1. Tell me about your yourself (the general icebreaker).
    2. Tell me about tim when you faced a difficult challenge.
    3. Tell me about a time when you needed help from someone during a project.Then he moved on to the coding question:
      Design Tic-Tac-Toe.
      Luckily I had solved this question in the past 2 weeks and I came up with the solution in 10 minutes. I don’t think he expected me to solve it this fast! He wasn’t well versed in Java so I explained him some lines. Be sure to always explain the approach before writing code. I know how excited anyone can get if they see a known problem, but hold your horses and explain each step clearly and then ASK whether you should start off with this approach. We had some time left so we discussed some edge cases and then he asked me to tell him about an interesting project of mine. This interview went really well for me and gave me a lot of confidence boost! Remember to stay grounded though!
  • Round 2
    The interviewer appeared to be a senior SDE but was quite friendly and firm to talk to. He joined the call late so he told me that he may have to take 10 minutes of my break between interviews. He started off with general LP questions such as:
    1. Tell me about a time when you thought of an unpopular idea.
    2. Tell me about a time when you had to decide upon something without consulting your superior.
    3. Tell me about a time when you had to face tight time constraints during a project.

After these questions, he moved on to the coding part with just 20 minutes left! And he started of with “Lets design a game”, and I got really nervous to be honest. The question was a variation of Minesweeper, I had never solved this question before! But I kept my cool and could design the APIs to form the grid with given number of mines, and was asked to write an API to solve it too. I could partially complete this because I had already used up my 20 mins, but my interviewer looked quite satisfied with the approach, and said that the solution looked good enough! I just had 5 minutes of break after this interview and I felt this round was okay but did not go as well as the first!

  • Round 3
    The interviewer was a senior SDE with a shadow interviewer who looked like a junior SDE. She told me about her work at Amazon (which was really awesome as she worked in the Prime Video Recommendations team). She started off with some behaviour questions such as:
    1. Tell me about yourself.
    2. Tell me about a time when you did not meet your deadlines for a project.
    3. Tell me about a time when you had conflicting ideas with your teammates and how did you resolve them?

After these, she moved on to the coding part with about 30 minutes left. The question was Same Tree, and yes, I sighed! I solved the question in 10 minutes with the recursive approach, and then another took another 10 minutes to solve it iteratviely as she asked for it in her follow-up. We discussed the time and space complexities, recusion disadvantages and in the end, with 5 minutes left, she asked me if I had any questions. I asked her about her tasks in some more details about Prime Video Recommendation systems and she was very happy to tell me about it. I also tried to let her know that I would love working on such projects some day! Overall, this interview went quite well too!

General Timelines:

  1. 7th September: Applied to New Grad SDE
  2. 20th September: Recieved OA1
  3. 22nd September: Completed OA1, Received OA2
  4. 27th September: Completed OA2, Received OA3
  5. 30th September: Completed OA3
  6. 3rd October: Received mail regarding successfully passing OA rounds
  7. 11th October: Received mail regarding survey to schedule final 3 interviews. Scheduled interviews on 25th October (needed some time to prepare!!)
  8. 25th October (Friday): Final 3 Inteviews
  9. 30th October (Wednesday): Received offer on the candidate portal after 4 long anxious days!!


The company I was interning in laid off all employees and went defunct in San Francisco, in April, and I could only work there for 4 months their, although my internship time was for 8 months. After getting unemployed, I started with Leetcode somewhere around April mid. I have been grinding it till October and have completed around 330 problems, specially from Amazon’s list. The harsh truth about interviewing is that you really need to be thorough with the problem patterns and grind them, no other way to get a successful job. Some takeaways from my story when I look back are:

  • Things happen for good, you should just persist through time and good things will happen to you too.
  • Practice in a BFS fashion, broad topics first, top 100 interview questions first, then target the company/topic lists. Know your problem solving patterns.
  • Youtube is an excellent source. Thanks to some really good channels such as Back to Back SWE, Tushar Roy, happygirlzt, and a lot many more, helped me get clearer solutions to problems that seemed tough to solve.
  • If you’re preparing for Amazon, give 35% of your time to prepare for Leadership Principals (2 stories for each of the 14 LPs). Trust me, you do not want to go unprepared on them. Refer to this guy’s amazing channel on Youtube Dan Croitor.
  • Even easy LC questions seems tricky after solving 200+ questions too, so you’re not alone.
  • Quality of questions matter, not quantity. After reaching the 250 mark, I repeated all the questions and solved them again. You discover new ways to solve them and learn more! The problem patterns seep into your brains that way.
  • Don’t try to memorize the questions but the most common ones get memorized automatically. Templates such as Binary Search, BFS, DFS, LL traversals, Backtracking templates, etc should be really well revised!
  • There comes a time of burnout when you don’t feel like progressing (I faced one). While applying and studying, you get a lot of rejects and no progress as such but do not ever forget your end goal! Work towards it, I know how hopeless one can feel during the journey.
  • Try to enjoy life. I did not to be honest. It looked like a routine to me, although it helped but do not just make Leetcode your life! I had my friends and family to remind me about this!
  • I still am in no way a good coder, but I like to think myself so much better than I was months ago!
  • Checkout Leetcode’s Discuss channel often for more experiences and questions. You wouldn’t get the same but it surely helps!

I know that was a long post but this is it, my full experience and journey into getting an offer from Amazon. Interviewing is a lot about luck, trust me, but the only thing in your hand is practice and perseverance. I was lucky but prepared.
Goodluck with your journey!



1st Round

  • Tell me about yourself
  • Behavioral questions
  • Find the longest subsequence in a string that has k distinct elements

The interviewer was a young SDE2. He was very nice, engaging and accomodating. I figured out the optimal solution but didn’t have time to write code so he asked me to explain my solution.

2nd Round

  • Tell me about yourself
  • Behavioral Questions
  • Graph question (not on leetcode)

We started out interview early. He was also a nice guy. We were talking about the location and weather for a few minutes. He gave me a follow up coding question which also I solved. I think he was the bar raiser because he said he was from another department.

3rd Round

  • Behavioral questions
  • Design a library catalog filter

He clearly told me he was looking for code maintainability, reusability, variable names and structure. He kept guiding me with hints during the process. I don’t know how this went because this could go either way.

Yesterday, I checked my student portal and found that the status of the job changed from under consideration to moved to another job and my application was submitted to another unlisted SDE job. But in my normal jobs portal, it says ,No longer under consideration .


第一轮 -
LP - Tell me about a time where you had to make a decision based on limited information and how it impacted the outcome.
Coding - You are given a list of documents you have to tell top 10 words and their frequency and how many documents that word occurred.
I discussed with the interviewer that can input be List of list of string, he agreed and I created my own class for output. I used two hashmaps and one hashset.
I know there must be a better solution for this problem but at that time I came up with this

第二轮 -
LP- Tell me about a time where you had limited time and how it impacted.
Coding - Validate if a given tree is a BST.
Very supportive interviewer.

第三轮 -
LP- Tell me about a time where you did not know something and how you tackled it(Something related to it)
Design - Interviewer told in starting he was not looking for speed or time efficiency, but a code which is readable and can be extended easily in future. You are given a thousands of kindle books, each book have metadata like title, page count, author. Design a filter that can filter based on title and pages.
I designed an Abstract class filter that can take input Metadata object and concrete class can be like titleFilter or pageCountFilter which have exact filtering logic.
Follow up was what if we want to filter based on both title and page count, I naively replied pass output of one to next filter which was causing iterating over list twice, i came up with new solution but that kind of broke my design. And we ran out of time anyway.

I got lucky that I got easy questions, overall interview experience was nice. They do not expect you to run the code, try to communicate whatever you are thinking and let them know your approach before you implement it.

Congrats!!! I read though all text you wrote, it was great! Can I ask you a questions?
What if you got stuck on an interview question during VO? The best way to face it?