Amazon Engineer Interview Questions | Glassdoor

Amazon Engineer Interview Questions

Updated Sep 22, 2017
5,025 Interview Reviews

Experience

Experience
58%
25%
16%

Getting an Interview

Getting an Interview
42%
22%
20%
10
2
1
1

Difficulty

3.2
Average

Difficulty

Hard
Average
Easy

5,025 Candidate Interview ReviewsBack to all Interviews

Filter

Sort: PopularDateDifficulty

Filter

Sort: PopularDateDifficulty
  1. Helpful (1199)  

    Software Development Engineer Interview

    Anonymous Employee in Seattle, WA
    Accepted Offer
    Positive Experience
    Difficult Interview

    Application

    I applied through other source. The process took 4+ months. I interviewed at Amazon (Seattle, WA) in May 2013.

    Interview

    Called out of the blue, asked if I'd be interested in interviewing. Still not entirely sure how they got my name. Had first phone interview the next week, asked no personal questions, all technical in nature. Total of 3 phone interviews and an in-person trip out to Seattle.

    Took about 4 months start to finish. The people in the in person interview were wonderful. Very smart, laid back, and understanding. Got lunch, small tour of campus, and learned what I'd be doing. Got the offer 2 business days after the in person interview.

    Sadly, I signed a NDA and I respect the terms of that. As such, I can't give you any specific questions, but I'll gladly give you the best advice I have.

    Phone Interviews :

    Phone interviews are sucky by nature. Coordinating a call from west to east coast alone is painful, add the fact that phones just take away the benefits of body language, and just make it harder to hear, and you've got a recipe for disaster. But fear not! Here are some helpful hints, some of which are obvious, some of which are not.

    1. Get ready ahead of time. I just mean, get to the area you'll be doing the interview beforehand. I'd recommend an hour or more, just to get your nerves ready. Breathe, get used to the surroundings, and get everything laid out ahead of time. Which brings me to...

    2. I know it's a "programming" interview, but for the love of all things good, have a pen and paper ready and at your disposal. Bring a backup pen. Much like a printer, the pen will fail at the worst possible time. You may also need a laptop, as I was asked to do "on the fly" programming. But close anything and everything distracting. Speaking of...

    3. Pick a spot where there are no distractions. You'll want your undivided attention on this interview. Don't have BookTweet or FaceSpace or MyGram or that crap open if you have a laptop. And I personally wouldn't pick a public space, you never know when an annoying parent will put their screaming child right beside you.

    4. Breathe. Just breathe. Take a moment, stretch, and remember you got this. If you have trouble hearing, don't be afraid to ask again. Don't be afraid to say you don't know. Do as for clarifications, and state assumptions up front. Always re-state the problem as you understand it.

    As for the content : For the love of God, know what a time complexity is, and how to determine it for any and all code you write. Know the time complexities of all sorts. Know all data structures, how to use them, and properties of each. (Insertion time, deletion, etc) Generally know what heck you're talking about. But don't talk too much. You don't want silence at any point really, but you certainly don't want to let the interviewer not get a word in. Know graph theory, tree theory, and all the fun stuff associated with more "complex" structures. Understand what your language does behind the scenes, as far as GC and compiling go. Know how your language use internal structures to manage the code/objects you write.

    **Continued below**

    Negotiation

    As a recent grad, there wasn't much room for negotiation.


  2. Helpful (554)  

    Accepted Offer
    Positive Experience
    Average Interview

    Application

    I applied online. I interviewed at Amazon.

    Interview

    An online quiz and then a phone interview. The online quiz wasn't very hard. It tested basic computer science knowledge. The phone interview was slightly harder but it was basically data structures and algorithm questions. They give you an online editor and you type responses into it.

  3. Helpful (93)  

    Accepted Offer
    Positive Experience
    Average Interview

    Application

    I applied through a recruiter. I interviewed at Amazon in April 2017.

    Interview

    The recruiter reached out to me on LinkedIn and let me know about the available positions with the team. After a brief call with the recruiter I was sent a 90 min coding test of 2 questions. I find timed coding tests pretty intimidating and I think they are also not the best way to screen people, too many ways for false positives and false negatives, would have preferred a phone interview. But after a month long of practicing at least 2 questions a day on leetcode helped me be ready for any coding challenges. Hackerrank is also another great resource for this.

    But there is also a trick here which I found out of sheer luck. I went through dozens of reviews here on glassdoor and I found another Chinese website where people post reviews/interview questions (thanks a lot google translate!). Apparently Amazon has a set of questions (I believe 5) which they use every month. Anyone who takes the coding test would get 2 of those 5 questions. I didnt want to take any chances so I found out those 5 questions that were asked previously in that month and practiced and wrote solutions for all of them. And on the day when I decided to take the test, I was gladly surprised to see 2 very familiar questions. I wrote code for both of them in about 30 mins but to my dismay one of the problem passed only 1 of the 5 test cases. I spent next hour trying to debug but I ended up passing only 2 of the 5 before the test got automatically submitted. I was disappointed and didnt have much hopes. But after couple of days the recruiter sent an email asking for 15 min technical screen. It was the same recruiter who called me earlier and this time was asking data structure questions as a technical screen. The questions were pretty basic though like HashMap vs HashTable etc.

    And after the call I was sent an invitation for the onsite interviews. I had previously received Amazon offer which I declined and I think because of that I had only 4 technical rounds this time (Or maybe they changed the process and made it shorter now?)
    On the day of the onsite the recruiter received me at the lobby and took me into a small conference room. The first round was with a hiring manager and he asked me many behavioral questions for almost 15 mins. All the questions were in a way related to the Amazon leadership principles so be sure to write stories for each of them and prepared before onsite. And then he asked me one dynamic programming question which was a variant of max subarray problem but he had put many conditions to get the subsequence so the question is not exactly the same. Although I did end up solving the problem and writing the code but I took way too many hints and I thought I messed up. The second round was also by an engineering manager who asked me behavioral questions for first 10 mins and then another dynamic programming question. I was able to solve it fast and thankfully he was very impressed. Since we had another 10-15 mins time he asked me to write object oriented design of a parking lot. I had just studied that problem on CTCI book so I was about to write the same class design but then he gave me extra conditions like electric chargeable parking space etc so I ended up doing a very different solution from that of CTCI book. Nevertheless he was clearly happy with my class design.

    The third round was with a senior engineer who asked me to design an ArrayDeque data structure. I wasn't familiar with it so she first explained the requirements and I had to write 4 functions for that data structure like get(index) etc.
    The fourth round was with a principal engineer who also asked me to design a conceptual datastructure for a stack of plates. This question seemed to be developed by him on his own so I won’t reveal the details but it involved multiple stacks. I had to write similar functions of a stack like pop(), push(), peek() etc for this datastructure.
    All the interviewers were very friendly and gave hints whenever I seemed stuck.
    I received a phone call the next morning from a (different) head recruiter and told me of the decision. The next day I was given a verbal offer on the phone with total compensation more than I asked for. They gave me a base pay more than my other offer I received the same week. Over the weekend I wrote a succinct email negotiating for better signing on bonus (I gave a number I wanted) and they not only gave me the bonus I asked for, they even increased my base pay (Always negotiate! And that single email could be the most worthy email you would write that year)
    Before you start the interview process I would advise you to finish off the CTCI book first (For Amazon concentrate on Arrays, LinkedLists, Trees and Graphs, Dynamic Programming chapters)
    Before onsite write down the stories from your previous experiences (school or professional) about each of the Amazon's leadership principles. These are very important. And keep practicing coding on leetcode or other online sites. Good luck!

    Interview Questions

    • Design data-structures, dynamic programming questions   8 Answers

  4. Helpful (29)  

    Accepted Offer
    Positive Experience
    Average Interview

    Application

    I applied through a recruiter. I interviewed at Amazon.

    Interview

    Lasted 45 minutes, very punctual, professional, wide variety of questions, well paced. More Windows questions that AWS. They want to get an idea of what you know. How do you think.


  5. Helpful (10)  

    Accepted Offer
    Positive Experience
    Average Interview

    Application

    I applied through an employee referral. I interviewed at Amazon.

    Interview

    Two online assessments and a 30 minute video interview. The first assessment consist of simple code debugging questions and some logical/pattern recognition questions. The second assessment is a work simulation and two average difficulty coding questions. The video interview was more of a casual chat with an engineer at Amazon.


  6.  

    Software Engineer Interview

    Anonymous Interview Candidate
    No Offer
    Neutral Experience
    Average Interview

    Application

    I applied online. I interviewed at Amazon.

    Interview

    first one oa which is logical testing and behavior testing, then second oa which is basically coding challenge but not hard. after these two is an phone screen or onsite.

    Interview Questions


  7. Helpful (1)  

    Software Engineer Interview

    Anonymous Interview Candidate in Seattle, WA
    No Offer
    Neutral Experience
    Difficult Interview

    Application

    I applied through an employee referral. I interviewed at Amazon (Seattle, WA).

    Interview

    Web coding screen into recruiter screen into full loop. Took a few months due to HR issues and scheduling issues from start to finish. Web coding comprised of 4-5 questions, and the full loop with 6 people in 5, 45 minute sections.

    Interview Questions

  8. Helpful (115)  

    Software Development Engineer Interview

    Anonymous Interview Candidate in Seattle, WA
    No Offer
    Neutral Experience
    Difficult Interview

    Application

    I applied through college or university. The process took 3 weeks. I interviewed at Amazon (Seattle, WA) in October 2016.

    Interview

    Had three rounds in total. I am a new grad. The first round was a debugging challenge with a quantitative test. The first round was pretty simple and anyone can clear that. The second round is a work simulation round and three coding challenge questions. This round was for 4 hours in total. A third party agency conducts this test for Amazon. Till now you wont interact with any of the SDE from amazon. The third round is an onsite where you need to work on a group assesment.

    Interview Questions

    • Debugging questions will be of 7 questions for 21 minutes. Ex: An array will be sorted in descending you need to change the code to sort it in ascending.   5 Answers
    • Coding Challenge 1) Find the longest palindromic substring from the given string. No need of DP solution.   5 Answers
    • Coding Challenge 2) You will be given N number of points as an array (CPPoint class). CPPoint class will have x and y coordinate. Find the closest k number of points from the origin.   6 Answers
    • Coding Challenge 3) You are given a linkedlist with next and arbitary pointers. Create a new linkedlist similar to the given linkedlist. You need to create a code for deep copy of a linkedlist.   7 Answers
    • Onsite Group Assesment. 1) Each team will be given three different answers for the same question. The question was to identify the best item in a given set of items. There will another point to note in the question if Item A is better than Item B and item B better than Item C, it does not mean item a is better than Item C. (Non transitive property). The goal is to identify the best solution by discussing with your team mates.   2 Answers
    • 2) This is the most important task in the group assesment where I think I would have failed. You will be given a code base with 30 Java files. There will be three milestones. Milestone 1) You need to find a way to map the products to shipping centers. The question was vague and I cant remember it exactly. This mapping can be done by identifying the cost of shipping for each area. Cost can in turn be calculated based on four different factors like air shipping, ground shipping and few others. Based on the customer requirement you need to make the products to shipping areas and return a list of product ids and their shipping cost list.   3 Answers
    • Milestone 2) Will ask to optimize by reducing the number of unfulfilled orders. The apis will be confusing and you will have two interviews during the coding session.   9 Answers

  9. Helpful (1)  

    Software Engineer Interview

    Anonymous Interview Candidate
    No Offer
    Negative Experience
    Average Interview

    Application

    I applied online. I interviewed at Amazon.

    Interview

    I had a phone interview in which I was asked technical programming questions, mainly about algorithms. The interview was conducted by an HR rep who started off by telling me she didn't know much about programming and therefore could not give me any clarifying information about questions. Her job was to ask the question and write down my answer. All in all, it was pretty terrible, as most of the questions were poorly conceived and needed more information. I assumed my inability to give confident answers to some of the questions (due to their poor construction) is why I didn't hear back.

    Interview Questions


  10.  

    Software Engineer(Internship) Interview

    Anonymous Interview Candidate
    No Offer
    Positive Experience

    Application

    I applied through an employee referral. I interviewed at Amazon.

    Interview

    Interviewer asked me about my experience (12min), an easy data structure concept(5min), an easy data structure implementation question(20min). And then we spent 10 min to talk about company and let me ask him questions.

    Interview Questions


Don't Miss Out On a Job You Love
Upload a resume to easily apply to jobs from anywhere. It's simple to set up.