Amazon.com
3.4 of 5 2,795 reviews
www.amazon.com Seattle, WA 5000+ Employees

Amazon.com Software Development Interview Questions & Reviews

Updated Apr 14, 2014
All Interviews Received Offers

Getting the Interview 

46%
18%
15%

Interview Experience 

63%
25%
10%

Interview Difficulty 

1,183 candidate interviews Back to all interview questions
Relevance Date Difficulty
in
140 people found this helpful

Accepted Offer

Positive Experience

Difficult Interview

Software Development Engineer Interview

Software Development Engineer
Seattle, WA

I applied through other source and the process took 4 months - interviewed at Amazon.com in May 2013.

Interview Details – 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**

Interview Question – In person interviews :

Day before :

If you've made it this far, first off, congrats. Take a step back and realize you're already among the best. Relatively few people actually make it this far, but you're not off the bat yet. You'll very probably be doing a 3 day/2 night stay. I had to fly across country, (E to W coast.) and that trip alone is enough to stress anyone out. But once you FINALLY get there, just get to your hotel. Public transit is pretty easy from the airport to downtown, but take a cab if you prefer.

Honestly, the best thing you can do this first day, is just get your bearings. Drop your stuff off in the hotel, and find just some normal (for you) food. Don't get all exotic and try something you've never had. Don't get alcohol. I sound probably like your mother. Sorry. But just try to find where you'll be interviewing. Get a feeling for how long it'll take to get there in the worst case scenario.

Once you've done all that, I'd hang out in the room, review some of the above stuff a bit, and try to hit the hay by 10 at the latest.

Day of:

Breathe. I went for a nice little jog in the gym across the street. Helped to relax me a bit. Whatever helps you do that, find it and do it. Eat a light and again, KNOWN breakfast. If you've never eaten it before, DO NOT do it that day. I'd recommend something simple, toast, fruit etc. Dress well, not full out suit, but I wouldn't show up in a tank top and shorts. (Though, one of my interviewers was in shorts... so???) I just did khakis and tucked in button down with rolled up sleeves.

I walked there, it was about a 15 minute walk and showed up about 40 minutes early. I wouldn’t personally go any earlier than that, but there’s a starbucks downstairs, so that might be a good place to relax a bit before you go upstairs. The receptionist greeted me, and got me all checked in. Once you sit down, this is an **ideal** time to turn off your cell phone. And I mean off. Few things are more detrimental to an interview than having that random alarm you set go off in the interview. Just turn it off. All the way off. It’ll be OK, your texts will be there when you’re done I promise.

The first person I met with wasn’t an interviewer. She was just to talk to me a bit, walk me to the room I’d be in for the rest of the day, and chat with. Ask this person your questions. We got coffee, sat down for a bit and just chatted. She asked what I did, I asked what she did etc. She told me about who I’d be meeting with that day, and my general timeline after the interview. Super nice.

The next 5 hours were just random questions about CS in general. Be prepared to write a lot of code that day (on a whiteboard), and know your crap. You’ll be asked all kinds of fun questions, probably very specific to the domain of the team interviewing you. Know the same stuff from above.

In these interviews, it’s best to show your confidence, and show them your knowledge, but more importantly your potential. You’ll very probably know 75% to 80% of the content they ask right off the bat. The rest may require some thinking out loud and vocalizing your thought process. Don’t stare at the board blankly. Talk to them, ask questions, bounce ideas off them, and just be a normal person. Pretend you already have the job, and they’re just there as a code reviewer/fellow engineer. I promise, it’ll go quickly, and by the end, you won’t believe how much knowledge you were able to just spout out.

That being said, I’ll quote one of the engineers, “The best thing you can do is to just get something working.” And he’s right. Just get an implementation down. Don’t necessarily write the most naive approach or the brute force approach (as a general rule, anything with a O(n^2) or worse run time isn’t worth writing down), but the next best idea, just go with it. Don’t over engineer it at first, just start. And then yall can optimize together. They’re great people, and they just want to see how you think.

Finally, just be yourself. Show them you like coding, and it’s what you want to do with them. Don’t be afraid to interact with them like they’re just old coding buddies. Make them laugh, have fun, but not too much. Remember, they’re still ultimately responsible for your next job. Just be you, and be confident. You go this in the bag already.

Most importantly, go out and celebrate when you're done. :D
  View Answers (12)

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

Was this interview helpful?  
Yes | No
Flag Interview  |  Add Employer Response

1 person found this helpful

No Offer

Neutral Experience

Average Interview

Software Development Engineer I Interview

Anonymous Interview Candidate
Seattle, WA

I applied through a recruiter and the process took 3 weeks - interviewed at Amazon.com.

Interview Details – It was a group interview that took place at their Seattle campus, together with around 25 other interviewees.

Breakdown:
- 8am-9am: A quick tour around campus, meet and greet
- 9am: Sat in a big room with 3 interviewers, Had breakfast, Broken up into small groups to work on a problem
- 10am-5pm: Coding, lunch, and 2 short one-on-one interviews in between
- 5pm-6pm: Wrap-up, Q&A with Amazon employees

Provided/To Reimburse:
- Accommodation (2 nights)
- Basic allowance ($65 on food per day etc...)
- Transit (Round-trip to Seattle, and taxi within Seattle)

Interview Question – Base on the code that you've written so far, what can you add or modify to improve it?   Answer Question

Was this interview helpful?  
Yes | No
Flag Interview  |  Add Employer Response

Accepted Offer

Positive Experience

Difficult Interview

Software Development Engineer II Interview

Anonymous Employee
Seattle, WA

I applied online and the process took 5 weeks - interviewed at Amazon.com in August 2013.

Interview Details – I submitted my resume to several open positions on their website. Within a couple of days I was contacted by a recruiter who wanted to set up a phone screen for a position that I actually had not applied to.

The phone screen problems consisted of a fairly simple array manipulation problem and a word game problem that I solved with a trie-like structure. The interviewer asked for ways my solution to the word game could be optimized and I gave him one which he seemed to like.

I was expecting to have another phone screen, but the next email I got from my recruiter was an invitation to fly to Seattle to interview on site. This email requested a bunch of information for booking the trip as well as what my expected salary and current salary were. I declined to answer the question about my current salary (which didn't seem to be a problem), but for the expected salary, I checked here for what their typical range was for the position I was being considered for and gave them one number that was somewhere in the 85th or 90th percentile of that range.

I signed an NDA for the on site interview stuff, but I will say that the book "Cracking the Coding Interview" by McDowell was EXTREMELY helpful. That book explained their entire interview process and had several examples that were similar to the questions they asked both in the phone screen and the on site interviews. One thing that is peculiar about Amazon's interviews is that they ask some behavioral questions that weigh pretty heavily in the decision-making process. When answering the behavioral questions, give answers that tie back into their core values (they'll send you information about their core values if you are invited on-site). "Cracking the Coding Interview" has some good examples of those behavioral-type questions as well as some good tips on how to prepare for them.

A good portion of the people I interviewed with had pretty thick accents, which made things a little more difficult. They all seemed pretty intelligent and very down-to-earth. Nobody seemed put off that they had to do the interview or anything, and they all claimed to really enjoy working for Amazon.

I was called the day after I interviewed on site and was told that they would be making me an offer. At that point the recruiter (which was a different recruiter than the one that initially contacted me, but was the person that set everything up for the on-site interview) asked me what my current salary was and told me what I could expect in terms of salary and bonuses. They had an official offer finalized within about 3 days.

The total time from submitting my resume online to accepting an offer was only about 5 weeks, so it was pretty quick.

Negotiation Details – The negotiations started with the number I gave as my expected salary before I had the on-site interviews. The recruiter that was putting together the offer (it seemed that she was the one crafting the details and then it was put before a committee or something to be approved) indicated that the number I gave as a base salary was just a bit higher than what I'd probably get. She explained that a large portion of their compensation package was equity. She initially indicated that the base salary they would offer would be about 85-90% of what I had asked for. She also wanted to know what my current salary was. Since I was pretty comfortable with the numbers she was giving, I told her what my current salary was, but indicated that I lived in a much cheaper place to live than Seattle. I told her that my biggest concern would be the raised cost of living compared to where I was living currently.
When she got back to me with the final offer, it ended up being right around 95% of what I had asked for as a base salary. They also included a very large signing bonus and a big chunk of equity that would vest in a couple of years.
The offer also included 2 weeks of vacation that accrue with each pay period, as well as an additional 6 days of leave that are available at the beginning of each year. I asked about getting 3 weeks of vacation, but it was explained that it might not be a good idea to ask for that much for the first year (everyone gets 3 weeks plus the extra 6 days after they've completed a year). I explained that I just wanted to be sure to have enough vacation to take a week at Christmas since I would be starting late in the year. She talked to my future manager and made sure that was alright.
No other negotiations were had as the rest of the offer sounded pretty good and was quite a bit better than what I was currently getting (cost of living considered and all).

Was this interview helpful?  
Yes | No
Flag Interview  |  Add Employer Response

No Offer

Positive Experience

Difficult Interview

Software Development Engineer Interview

Anonymous Interview Candidate
Seattle, WA

I applied through a recruiter and the process took 4 weeks - interviewed at Amazon.com in October 2013.

Interview Details – I had 2 phone interviews, then a web-cam interview and programming session, then a 6 hour long web-cam interview with 6 different people. The last step was intense and exhaustive. I talked to developers, managers and the director of the department. All of them was about my background experiences, some programming questions and problem solving sessions. Questions were not as difficult as the ones that exists on internet, but related to work group is developing. They do not require any particular language for solving problems, language is irrelevant for them, what they want to see is how you think and work. No brain teasers asked :)

Interview Question – They asked about the most difficult problem I had to solve in my past jobs, this was a difficult questions because I did not work on projects that are as complex as Amazon's systems and finding an impressive problem was very hard for me. Must be prepared about these questions beforehand.   Answer Question

Was this interview helpful?  
Yes | No
Flag Interview  |  Add Employer Response

No Offer

Neutral Experience

Software Development Engineer Interview

Anonymous Interview Candidate

Interviewed at Amazon.com

Interview Details – I am doing the first round interview. It has 3 parts, coding , reasoning assessment and working style assessment.
After the first round applicants will be asked to fly to Seattle for the next found.
I got the chance through campus career fairs.
Amazon's questions can be prepared by looking the cracking coding interviews.

Interview Question – Didn't expect there will be reasoning and working style assessment.   Answer Question

Was this interview helpful?  
Yes | No
Flag Interview  |  Add Employer Response

No Offer

Negative Experience

Easy Interview

Software Development Engineer I Interview

Anonymous Interview Candidate

I applied through an employee referral and the process took 2 weeks - interviewed at Amazon.com in March 2014.

Interview Details – I ask my friend to refer me. The recruiter contact me like 2 weeks later. They send me a link which is an online assessment. As you know, there are 3 problems and they are very easy to solve. I actually run my code using leetcode and pass all of the cases. However, I failed. My friend told me it's possibly because I don't write a good explanation beside my code.

Interview Question – Not hard.   Answer Question

Was this interview helpful?  
Yes | No
Flag Interview  |  Add Employer Response

No Offer

Neutral Experience

Software Development Engineer Interview

Anonymous Interview Candidate

Interviewed at Amazon.com

Interview Details – online assessment and onsite

Interview Question – system design and some detailed concepts   Answer Question

Was this interview helpful?  
Yes | No
Flag Interview  |  Add Employer Response

No Offer

Neutral Experience

Average Interview

Software Development Engineer II Interview

Anonymous Interview Candidate
San Francisco, CA

I applied online and the process took 2+ weeks - interviewed at Amazon.com in August 2013.

Interview Details – At first, it's a phone interview. but not got phone call at the appointed time until waiting for another 10 minutes.
The questions in phone interview is for algorithm test, and the first one is to revert a sentense which is a common one. Unfortunately my answer not accepted by interviewer, so did not pass the phone interview.

Was this interview helpful?  
Yes | No
Flag Interview  |  Add Employer Response

No Offer

Neutral Experience

Difficult Interview

Software Development Engineer I Interview

Anonymous Interview Candidate
Seattle, WA

I applied through college or university and the process took 5 days - interviewed at Amazon.com in February 2014.

Interview Details – Contacted by University Recruiter. Sent to Seattle offices for their group interviews. The questions were not too hard, but it is important to start with a simple working solution and then iterate to a more complicated solution due to the time constraints.

Was this interview helpful?  
Yes | No
Flag Interview  |  Add Employer Response

No Offer

Positive Experience

Difficult Interview

Software Development Engineer Intern Interview Interview

Anonymous Interview Candidate

I applied online - interviewed at Amazon.com in January 2014.

Interview Details – I applied online and was contacted by the HR to schedule the interview.
Both the interviewers were nice and it was a very good experience.

Interview Questions

  • Q. Remove duplicates from an sorted array inplace. He was expecting a linear time solution for this.   View Answer
  • Q. A question on BFS.   Answer Question
  • Q. Reverse a linked list without modifying the existing list.   View Answer
  • Q. write code to detect if an array contains any duplicates?   View Answer

Was this interview helpful?  
Yes | No
Flag Interview  |  Add Employer Response
RSS Feed Embed
Interviews for Top Jobs at Amazon.com

Worked for Amazon.com? Contribute to the Community!

Amazon.com Videos

Loading...

Amazon.com – Why Work for Us?

Not ready to apply yet? Click here to join our Talent communities, where you can learn more about us and stay up-to-date with Amazonian opportunities! Full Overview

Provided by employer [?]

The difficulty rating is the average interview difficulty rating across all interview candidates.

The interview experience is the percentage of all interview candidates that said their interview experience was positive, neutral, or negative.

Your response will be removed from the review – this cannot be undone.

Glassdoor is your free inside look at Amazon.com Software Development interview questions and advice. All 1,183 interview reviews posted anonymously by Amazon.com employees and interview candidates.