Skip to content
Related Articles

Related Articles

Amazon WOW Interview Experience

Improve Article
Save Article
  • Difficulty Level : Hard
  • Last Updated : 04 Mar, 2022
Improve Article
Save Article

I applied for the role of SDE I through Amazon WOW drive 2020. There were a total of 5 rounds (1 coding test + 4 interviews). Originally interviews were supposed to be offline but because of the coronavirus pandemic, I gave my interviews online.

Round 1: Round 1 was an online coding round consisting of 2 coding questions and 28 MCQs based on C, C++, Java, data structures, algorithms, and core subjects. The first coding question was to convert the infix expression to postfix and the second was to find the mean, median, and mode of the given array. This round was for 1 hour 30 minutes.

I solved both the coding questions completely. After getting shortlisted, a total of 4 interviews were to take place, each being eliminative in nature. The time for each was fixed to 60 minutes each and each of them involved writing the complete code on an IDE link shared by the interviewer. For each question, time complexity has to be told.


Interview 1: The interviewer started directly by giving coding questions.

  1. Alternate reversal of linked list in a group of size k. Like the first group should be reversed, the second group should be the same, the third should be reversed, the fourth should be the same, etc.

    Example : 

    Input : 1->2->3->4->5->6->7->8,  k=2
    Output : 2->1->3->4->6->5->7->8
  2. There are two strings given to find the matching and non-matching characters.

    Example :

    Input : s1 = abc s2 = abd 
    Output : matching = 2 non-matching = 1

I was able to solve both the questions in around 55 minutes. The interviewer seemed satisfied. I got a mail for the second interview after 2 days and the interview was scheduled after 2 days.

Interview 2: Started with the interviewer’s introduction and then my introduction and then 2 coding questions.

  1. Reach from one start string to the destination string in a minimum number of steps provided some set of intermediate strings cannot be reached. The string consists of numbers starting from 0 to 9 and it works like a suitcase lock where from 0 there can be two options 1 or 9, similarly, from 1 we can go to 2 or 0. 

    Hint: Use BFS constructing graphs of strings.


    Input : 
    Source = 123
    Destination = 456
    steps = 9
  2. Find a maximum of the difference between maximum and minimum of all subarrays of size k. In this interview, I was able to write code for both questions in just 25 minutes(Good luck maybe :-). Got mail for the third round the same day and the interview was on the next day.

Interview 3: 

  1. Given a family of ants, in which female and male ants are there, interactions b/w family members are given i.e., it is given who interacts with whom, find if it is a good family and a family is good if only two different genders interact. 

    Example : 

    Input: number of ants = 6, Interactions = { 1-2, 3-4, 5-6}
    Output - Good family
    Input : number of ants = 6 Interaction = {1-3, 3-5, 1-5}
    Output - Bad family
  2. Next greater element

    And questions on os(Explain Banker’s algorithm with an example, Thrashing, Deadlock, Semaphore, etc), DBMS(ACID properties), oops, and projects.

The first question seemed very new to me. After thinking a lot I was able to get that there shouldn’t be any odd cycle in the graph formed from interactions. I tried writing code but the interview wasn’t very much satisfactory. Then he moved to the next question. As the second question is a very common question, I instantly started telling the solution, by which the interviewer asked do you know this question and I said yes. He asked me to write code in just 2 minutes without any bugs, And I wrote it, but he could find one bug out of it 😐

After this interview, I didn’t expect a call for the next interview. But luckily I got the mail after 6 days for the next round to be scheduled the next day.

Final Interview: Started with the introduction, project questions, and behavioural questions. Like, Give an example where you spent some time and figured out something on your own.

  1. Given two arrays move an element from one array to another only if the average of both the arrays become greater than the previous average find which element can be moved
  2. Some BFS related questions don’t remember exactly
  3. Minimum element in the stack without using another stack

In the first question, I got nervous and couldn’t come up with an approach. The interviewer was very friendly and helped me to understand the approach and then asked me to write the code. The next two questions I was able to solve.

After around 15-20 days, I got mail that I have been selected as a SIDE at Amazon. I would suggest being patient and calm during the interview. Think out loud. The interviewer is there to help you out.

Best of luck!!

My Personal Notes arrow_drop_up
Related Articles

Start Your Coding Journey Now!