Glassdoor is your free inside look at Amazon.com Software Design Engineer interview questions and advice. All interview reviews posted anonymously by Amazon.com employees and interview candidates.
Posted Mar 19, 2009 2009-03-19 07:45 PDT — 2 of 3 people found this helpful
Accepted Offer – Interviewed in Seattle, WA Apr 2007 – Reviewed Mar 19, 2009
Interview Details –
Note, this interview process was for a summer internship. The process began with a phone conversation with an HR person. The conversation consisted of gauging my interest in various groups that I could work with at amazon.
Later, I went through the first technical phone interview. This lasted about 45 minutes. I was first asked to list which programming languages I had used and how strong I was in each. I was then asked some java specific questions: What is the purpose of the static keyword? What is the difference between a String and a StringBuffer? Then, some object oriented design questions. Then some simple algorithmic questions: Find a common ancestor in a binary tree, find first non-repeated character in a string. All of these questions were answered verbally and the interviewer was satisfied with a general solution.
The second technical phone interview lasted about an hour. It began with some discussion of my resume. I was asked questions related to:
General operating system details:
- Difference between process and thread
- What does it mean for a method to be threadsafe
- Know what a stack crash is? -> what happens during a function call, how can this be exploited
Programming:
- Find unique words in text files
- Cell phone, phone book, data structure for storing numbers, so that you could type first letter and see what names it matched -> essentially looking for a prefix tree
- Have you used makefiles before -> was going to go into a tree description of that
- How would you output a tree by level
Bit-twiddling
- How could you tell if a byte only contained a 1 in the leftmost bit
- How could you count the number of ones in a byte
Design
- Email sender, need to send 100,000000 emails and you have 5 machines how could you do it efficiently
These first two interviews felt pretty relaxed. When describing the solution to a problem I would give a quick sketch, saying something like "I would hash a count of each letter" and at this point the interviewer would acknowledge that I was on the right track and just move onto another question without digging for details.
In the third technical phone interview consisted of a single programming task. I was asked to code up the solution to a simple problem and email it to the interviewer. This took about 30 minutes, I then described what the code was doing to the interviewer. I did not find the programming question hard, and this last interview felt like more of a formality. At no point did I feel like I had the burden of convincing the interviewer that I was the right candidate.
Worth noting, is that I had previously done an internship with Amazon, and this may have influenced how the interviewers were behaving toward me.
Interview Questions
Other Details - I applied through an employee referral and the process took 3 days.
Overall Positive Experience
No matter what role you play at Amazon, you are an Amazon leader. Though often differing from what most consider “conventional wisdom”, it is what makes Amazon 100% peculiar. Whether you are an Engineer, a Product… — Full Overview
Provided by employer [?]
This is the employer's chance to tell you why you should work for them. The information provided is from their perspective.
Would you like us to review something? Please describe the problem with this {0} and we will look into it.
We're sorry but your feedback didn't make it to the team. Your input is valuable to us – would you mind trying again?
Your response will be removed from the review – this cannot be undone.
Copyright © 2008–2013, Glassdoor. All Rights Reserved. Your use of this service is subject to our Terms of Use and Privacy & Cookies Policy. Glassdoor ® is a registered trademark of Glassdoor, Inc.