Do you know that Amazon launched a new program called “Best Fit” that allows software engineers to apply once and get considered for thousands of jobs across the company? This makes it easier to find a job that best fits your working styles and interests. Currently, Amazon has over 10,000 open positions for software engineers in the US. In 2021, they had a total of 1,608,000 full and part-time employees. The engineering roles at Amazon are challenging and competitive to land. In fact, it’s very common for it to take multiple attempts to secure a role at Amazon and other FAANG companies. So, it should go without saying that getting hired into one of these sought-after roles requires a great deal of dedication. You’ll need to focus both on improving the skills you can offer and perfecting your interview technique, but it’ll all be worth it.
A software engineer working at Amazon explained why he loves working for this customer centric tech giant:
“At former companies, I didn’t have a choice on what I worked on. Amazon offered me multiple job opportunities, and I chose to work directly with customers. I can now point out something to my kids and say, ‘I am working on that’, with pride.”
Amazon has standard criteria for selecting candidates for any position. If you don’t know the engineering interview process in Amazon, don’t worry. You are at the right place where we’ll guide you about the whole process and various questions (technical, system design, and behavioral) asked in different phases that will help you nail the interview.
Amazon Engineering Interview Process
Amazon continues to improve people's standard of living and significantly contributes to the economies of many countries. Jeff Bezos, the former CEO at Amazon.com says:
"We see our customers as invited guests to a party, and we are the hosts. It's our job to make the customer experience a little bit better."
Amazon's engineering interview process usually takes four to eight weeks and typically follows these steps:
- Submitting a resume, cover letter, and referrals
- Getting an HR recruitment call or email if shortlisted
- Performing online assessments
- Having one to two phone screen interviews
- Having four to six on-site interviews
- Debriefing - interviewers making a unanimous decision
- Receiving your offer letter
Carrus Coach and former Amazon Bar Raiser Teresa Fung highlights that the process can vary slightly between the levels. Online assessments are commonly applied to L4 and L5 applicants; Once they pass OA, it is possible to move straight to the final loop, or have a phone interview in between before reaching the final loop.
Step # 01 - Submitting a resume, cover letter, and referrals
Amazon offers the following six categories of roles for Software Engineers.
Salary range per level is regionally based, and adjusted according to the living cost for that particular location. For example, the same SDE position in Seattle vs NYC can have a 20-25% salary difference. All average base salaries referenced below are based on the average across the USA. For a more precise indication of average pay in your region check out levels.fyi and filter by location.
Level 4: Software Development Engineer I (SDE I)
Level 4 engineers begin with debugging and writing test cases, as they possess basic computer knowledge. Gradually, they improve their problem-solving skills and start developing software and computer systems.
A former Software Development Engineer had this to say about their time at Amazon:
“Good people, good workplace culture. Great lunch, learnt a lot during the job. Would recommend people working here.”
Average Base Salary: $133,000 per year
Level 5: Software Development Engineer II (SDE II)
Level 5 engineers monitor Level 4 software development engineers. Their job revolves around debugging, ownership, and application security.
“Amazon is an exceptionally good place to grow as an engineer”, says an Amazon Software Development Engineer, “You will be given interesting work and excellent pay. Work life balance has a reputation of being hit or miss at the company (mind has been good), so that’s something to watch out for. Regardless, after a few years at Amazon, you will come out a far more skilled individual and companies will be lining up to hire you.”
Average Base Salary: $164,000 per year
Level 6: Senior Software Development Engineer (SDE III)
The level 6 engineers must be well-versed with build processes, coding standards, code reviews, testing tools and technologies. They are technical leaders and drive business growth through best engineering practices.
An Amazon Senior Software Development Engineer offered these insights :
“Lots of teams with lots of different work. The experience can be vastly different across teams. Really good work environment and very good benefits and promotion structure.”
Average Base Salary: $173,000per year
Level 7: Principal Software Development Engineer (Principal SDE)
A Principal Software Development Engineer is shouldered with higher responsibilities. They are in charge of large teams of software engineers and make important architectural and technical decisions.
Average Base Salary: $172,736 per year
**Amazon has significantly increased their compensation recently (February 2022). Unfortunately at this stage insufficient data is available for us to provide revised base figures for SDE L7 and above.
Level 8: Senior Software Engineer (Principal)
Senior Software Engineers carry even more responsibility and offer greater impact on technical decisions compared to Level 7 SDEs.
Average Base Salary: $193,219 per year
Level 10: Distinguished Software Development Engineer (Distinguished SDE)
The Distinguished Software Development Engineers serve as Vice Presidents at Amazon. They have a proven track of maintaining successful technical projects and a large-scale organizational influence.
Average Base Salary: $219,000 per year
Step # 02 - HR recruitment call or email
If your resume is shortlisted, you’ll receive an HR recruitment email or call. The HR interview will focus on understanding your interests and how you would be a good fit for the company. You’ll be asked to solve an online assessment if the recruiter is satisfied with your answers. Afterward, a technical screening will be scheduled based on the job profile that you applied for.
Step # 03 - Online assessments
The online assessment is a crucial part of Amazon's hiring process and usually includes the following three sections.
Assessment 1 - Debugging
You’ll be assigned a set of seven debugging questions with an allotted time of 20 minutes. Each question will contain a problem and a code snippet that contains a bug. You’ll have to fix the bug in each question before the time expires. Budget roughly 2.5 minutes per question, which leaves you a small buffer (approx 2 mins) for any that take slightly longer. It sounds quick, but this should be plenty of time for you. The trick is not to panic if you get stuck on one question and feel time ticking by. If you find this happening, skip the question and come back to it at the end. You can solve this assessment in either of these three coding languages.
Assessment 2 - Coding Questions
This assessment consists of two Amazon Software Development Engineer (SDE) interview questions based on data structures and algorithms. You’ll be given a limited time (around 30 minutes) to solve each question. You can compile your code as many times as you want before submitting the solution. You can use any of the following languages to solve this assessment.
Teresa Fung, former Amazon Bar Raiser, Engineering Manager and Interview Coach, offered the following tips when it comes to acing your technical interview.
“The technical interview does not focus particularly on a trivial structure (e.g. queue/stack) or approach (e.g. tree vs graph). It focuses on the broader Computer Science Fundamentals, namely Data Structures and Algorithms. Given the problem can be solved in numerous ways, it's up to you (and your creativity) to choose which data structure and algorithm to apply in your solution. Finally, the interviewer is looking for a working solution, which is not equivalent to an optimized solution. With this said, spend your time wisely in making your solution work before making it efficient.”
Assessment 3 - Work Simulation and Logical Reasoning
This assessment consists of two parts. Ensuring you’re familiar with the 16 Amazon Leadership Principles and comfortable incorporating them into your approach to problem solving will be highly valuable here.
- In the first part, you’ll be presented with an interactive video simulation of a day in the life of an Amazon SDE. You’ll be faced with everyday scenarios that could occur in an SDE role and evaluated based on your responses. This part will take about two hours to complete.
- In the second part, you’ll be given 24 multiple-choice questions based on logical reasoning. The questions will test your problem-solving skills, and you’ll have about 35 minutes to complete this part.
Step # 04 - Phone Screen Interviews
If you pass the online assessments, you’ll be invited to one or two technical phone screens. In this step, you’ll be asked various technical and behavioral questions. These sessions last 45 minutes to 1 hour. Typically, you’ll be asked data structure and algorithm questions in the technical part. For the behavioral part, you can expect questions like:
- Tell me about yourself.
- Why do you want to join Amazon etc.
For a more in-depth look at what type of questions to expect in your Amazon behavioral interview, check out our article: ‘The Top Amazon Interview Questions You Need to Know’.
During this round, you must express your understanding of Amazon's leadership principles and how you would apply them to problem solving and decision making.
Step # 05 - On-site interviews
If you ace the phone screen, you’ll be invited to spend an entire day at one of Amazon's offices, or nowadays, have a series of video calls. You’ll participate in four to six interviews of 60 minutes each. You’ll be evaluated based on coding knowledge, system design skills, and behavioral questions in this round.
- In three or four of your interviews, you’ll have to solve coding questions on a whiteboard.
- In one or two interviews, you’ll be asked system design questions.
- The interviewers will ask behavioral questions in all interviews. You must invest in adequate preparation for these questions as each interviewer will evaluate your understanding and personal application of the Amazon leadership principles based on these questions. Using the STAR method to refine and practice your storytelling for behavioral interviews is guaranteed to set you up for success.
For a more in depth guide on effectively using the STAR interview method to ace your behavioral interview, check out our 6 part STAR series.
Finally, the last interview at Amazon is called the Bar Raiser round. The interviewers will not be from the team you’ve applied to join. They evaluate the overall candidate quality rather than specific team requirements. Bar raisers consider your likelihood for success both in the targeted role and long-term at Amazon.
Step # 06 - Debriefing
This is the final round led by Bar Raisers who are skilled and trained interviewers unique to Amazon’s interview process. Many skilled software engineers are rejected during Amazon’s interview process as they can not clear the Bar Raiser interview. The job of the Bar Raiser is to facilitate debriefing sessions to drive data-based hiring decisions and to assess candidates based on Amazon’s long-term goals.
Andrew Hamada, a former employee at Amazon says:
“Overall I think the BR program is an important, valuable part of Amazon's hiring process. It allows the company's thirst for self-improvement and cultural alignment to scale further than it might otherwise. I didn't have deep interviewing experience, but I was a part of 40-50 interview loops during my time at Amazon and in nearly every instance, the bar raiser improved the discussion by:
- Keeping people focused on the most important information
- Forcing interviewers to reconsider their feedback in different contexts
- Discovering hidden hiring motives (like a serious near-term need) and responding appropriately
- Serving as a reminder that every new hire should be better than 50% of the people currently in the role
- Countering group think and bandwagoning”
Generally, Amazon has up to 5 interviewers on loop in the interview, including the Bar Raiser and the hiring manager.
- The Bar Raiser ensures that the interview is conducted properly and the candidate is assessed based on the right parameters.
- The interviewers meet to compare their observations and recommendations about candidates after conducting the interviews.
- Based on the shared information, the interviewers vote whether to hire a candidate or not.
- The candidate is given an offer when the Bar Raiser considers all the information presented and reaches a consensus with the hiring manager.
Step # 07 - Getting an Offer Letter
The HR recruiter will present you with an offer if you pass all rounds. This step usually takes a week, but can sometimes take longer.
You need to practice various coding, system design, and behavioral questions to ace your Software Development Engineer interview at Amazon. Below are examples of the type of questions that you must consider while preparing for the interview.
Amazon Software Development Engineers must display strong problem-solving skills. As an SDE you’ll be tasked with using code to crack some of the complex challenges that the company faces.
Below are some common coding question types along with their respective frequencies.
- Hash Tables - 2% (least frequent)
- Stacks and Queues - 2%
- Searching and Sorting - 2%
- Linked Lists - 10%
- Strings and Arrays - 38%
- Trees and Graphs - 46% (most frequent)
Trees and Graphs (most frequent)
Some example coding questions related to trees and graphs:
- Decide if a given binary tree is a search binary tree.
- Construct a binary tree given in order and preorder traversal of a tree.
- Compute the maximum path sum given a non-empty binary tree. In this problem, the path must contain at least one node and not go through the root.
- Design an algorithm for serializing and deserializing a binary tree. You need to ensure that the binary tree can be serialized to a string, and the string can be deserialized to the respective tree structure.
- Suppose you are given a list of nodes labeled from 0 to n-1 and a set of undirected edges. You have to write a function for checking whether these edges make up a valid tree.
Strings and Arrays
Some example coding questions related to strings and arrays:
- Say you are given an array of positive numbers from 1 to n. You have to find two missing numbers in the array.
- Assume you are given a string s, and its maximum length is 1000. You have to find the longest palindromic substring in s.
- Suppose you have an array for which the kth element is the given stock's price on day k. You have to design an algorithm to find the maximum profit given that you can complete at most one transaction. Remember that you can not sell a stock before you buy it.
- *Keep in mind race conditions, i.e., two separate processes that can potentially hit the same node/element.
Some example coding questions related to linked lists:
- Given two sorted linked lists, you have to merge them and return them as a new sorted list. You have to make the new list by splicing together the nodes of the first two lists.
- Assume a node from a Circular linked list that is sorted in ascending order. You have to write a function for inserting a value insertVal into the list such that it remains a sorted circular list. The given node may not necessarily be the smallest value in the circular list and can reference a single node in the list.
- Suppose a linked list whose each node contains an additional random pointer that points to null or to any node in the list. You have to return a deep copy of the list.
Searching and Sorting
Some example coding questions related to searching and sorting:
- Suppose you are given an array of integers, sort the array in ascending order.
- You have to write an efficient algorithm that searches for a value in an mxn matrix. The matrix has integers sorted in ascending order in each row and column.
Stacks and Queues
Example coding question related to stacks and queues:
- You have to design a stack that can support push, pop, and retrieve the minimum element in constant time.
Hash Tables (least frequent)
Example coding question related to hash tables:
- If given a non-empty list of words, you have to return the k most frequent elements. You have to sort your answer by frequency (from highest to lowest). If there are two of the same frequency words, the word with lower alphabetical order comes first.
System Design Questions
Some system design questions you can expect to face in the Amazon engineering interview are provided below. You can also watch the Amazon video guide that will help you in answering these questions.
- How would you design an electronic voting system?
- What approach would you use to design a warehouse system for Amazon.com?
- How would you design a Dropbox?
- What strategy would you use to create a distributed cache system?
- How would you design Amazon's database containing customers, orders, products, etc.?
The primary purpose of the Amazon behavioral interview questions is to focus on your understanding and application of Amazon's leadership principles. A sample of the behavioral questions you should be prepared to answer are covered below. For a deeper dive on the topic, check out our article on the top Amazon interview questions you need to know.
- Can you tell which company has the best customer service and why? This question covers the Customer Obsession principle.
- Tell me about a situation when you sacrificed a long-term value for completing a short-term task. This question covers the Ownership principle.
- Describe a scenario where you broke a complex problem into smaller sub-parts. This question covers the Bias for Action principle.
- Can you describe a situation where you received criticism for your work? This question covers the Are Right, A Lot principle.
- Tell me about the most innovative idea you've ever had. This question covers the Invent and Simplify principle.
Likewise, there are many other behavioral questions mapped to the leadership principles.
How to Prepare for the Amazon SDE Interview?
You can crack the Amazon Software Development Engineer Interview if you stick to the following tips.
- Learn about Amazon's leadership principles and the company culture.
- Aim for 10 to 15 mock interviews to analyze your interview style, identify any weaknesses and perfect your answers. Mock interview preparation is without a doubt the best way to ace your interview because it’s the closest thing to a real interview, without the high stakes of landing your dream job. The process allows you to practice the stories and answers you’ve prepared and a great coach will give you direct feedback that you can use immediately. People see a dramatic improvement in confidence, communication style and the quality of their examples even after one hour of mock interview prep.
- Get a firm grasp on the concept of data structures and algorithms and learn to code in any programming language.
- Solve different problems and ask your peers to help you with interview preparation. You can use sites like HackerRank and LeetCode that have countless sample coding questions you can practice on.
- Prepare your answers to the typical behavioral questions, and practice your storytelling techniques.
In A Nutshell
You can ace Amazon's Software Development Engineer interview if you showcase leadership skills, effective communication, technical skills, and professionalism. If you wrongly answer a question that the recruiter asks, do not feel shy in accepting your mistake. Own it. Your soft skills and ability to articulate your past successes are equally as important as technical skills.
Looking to prepare for the Amazon interview? Take the guesswork out of interview preparation with the help of former Amazon hiring managers. Book a session with an Amazon expert today!
- The Amazon Flywheel Explained
- Amazon's Leadership Principles | What you need to know for the interview
- All About Bar Raisers: Amazon’s Essential Element to the Hiring Process
- How to Nail The Amazon Writing Assignment
- Insights into Amazon’s Compensation Philosophy & Salary Negotiation Tactics
- Does Amazon Offer Work-Life Balance?
- How to Use the STAR Method to Nail Your Interview at Facebook, Google and Amazon
- Top Tips on Nailing the Technical Interview from ex-Amazon & ex-Google Engineers