Machine learning engineer interviews at Amazon are really challenging. The questions are difficult, specific to Amazon, and they cover a wide range of topics.
The good news is that the right preparation can make a big difference and can help you land an ML job at Amazon. We have put together the ultimate guide below, to help you maximize your chances of success.
Here's an overview of what we'll cover:
- Process and timeline
- Example questions
- Preparation tips
What's the Amazon machine learning engineer interview process and timeline? It normally follows the steps below and takes about four to eight weeks to complete:
1.1 What interviews to expect
- Resume screen
- Recruiter phone screen
- Online assessment (in some cases)
- Phone screens: one to two interviews
- Onsite: four to six interviews
Next, we’ll dig into each of the steps in more detail.
1.1.1 Resume screen
First, recruiters will look at your resume and assess if your experience matches the open position. This is the most competitive step in the process, as millions of candidates do not make it past this stage.
So take extra care to tailor your resume to the specific position you're applying to.
If you’re looking for expert feedback, get input from our team of ex-FAANG recruiters, who will cover what achievements to focus on (or ignore), how to fine tune your bullet points, and more.
1.1.2 Recruiter phone screen
In most cases, you'll start your interview process with Amazon by talking to an HR recruiter on the phone. They are looking to confirm that you've got a chance of getting the job at all, so be prepared to explain your background and why you’re a good fit at Amazon. You should expect typical behavioral and resume questions, like "tell me about yourself," "why Amazon?" or "tell me about your current project."
If you get past this first HR screen, the recruiter will then help schedule the next step in the process. Your recruiter will usually let you know who you are interviewing with and what type of interviews you should expect, and they will share resources to help you prepare for them.
1.1.3 Amazon online assessments
Amazon primarily uses online assessments (OAs) for internship and new graduate positions, but also sometimes for experienced positions. Your recruiter will notify you if one is assigned to you.
There are different types of Amazon online assessments, but the one most common for machine learning candidates is a set of two data structure and algorithm questions. Each question needs to be solved within a certain amount of time (e.g. 30mins). And your code must compile for the two questions in order to move forward in the interview process.
1.1.4 Technical phone screen(s)
If you’ve passed the HR recruiter screen, you'll be invited to one or two technical phone screens. This step is called the "phone screen", but most of the time it takes place over video chat using Amazon Chime, which is the company's video conferencing product. Each interview will last 45 to 60 minutes. You'll speak to a peer or a potential manager, and they'll ask you a mix of technical and behavioral questions.
For the technical part of the interview, you can expect typical data structure and algorithm questions, which you'll have to solve in an online collaborative text editor such as collabedit. The editor won't have syntax highlighting or autocomplete features, which you'll need to get used to during your interview preparation.
Though you’re interviewing for a machine learning role, your recruiter will likely share a list of software development topics that Amazon asks about in interviews. It is unlikely that you’ll be asked system design or machine learning design questions at this step. For the behavioral part of the screen, be sure to express your understanding of Amazon’s Leadership Principles (more on that in section 2.4).
1.1.5 Onsite interviews
If you crack the phone screen, the next step is to spend a full day at one of Amazon’s offices and participate in four to six interviews. These interviews will last 45 to 60 minutes and will be one-on-ones with a mix of people from the team you’re applying to join, including peers, the hiring manager, and a senior executive.
You can expect the following types of interviews:
- Coding interview, where you'll solve algorithm and data structure questions, similar to those you'd encounter in a software development engineer interview.
- System design interview, where you'll be asked to create a high-level design for a modern technology system like AWS, Amazon.com, etc.
- Machine learning design interview, where you'll need to suggest an approach for how to solve a problem using a machine learning solution.
- Behavioral interview, where you can expect questions about your background, accomplishments, and your motivation for applying to Amazon.
While you’re onsite, you’ll typically have one or two coding interviews, one system design interview, one or two machine learning interviews, and a behavioral round. However, the exact breakdown will depend on the exact team and role that you’re applying for.
Finally, one of your last interviews will be with what Amazon calls a “Bar Raiser.” These interviewers are not associated with the team you’re applying for, and focus more on overall candidate quality than specific team needs. They get special training to make sure Amazon’s hiring standards stay high and don’t degrade over time, so they are a big barrier between you and the job offer. For a complete guide to the Amazon bar raiser interview, take a look here.
1.2 What exactly is Amazon looking for?
At the end of each interview, your interviewer will grade your performance using a standardized feedback form that summarizes the attributes Amazon looks for in a candidate. That form is constantly evolving, but we have listed some of its main components below.
The interviewer will file the notes they took during the interview. This usually includes the questions they asked, a summary of your answers, and any additional impressions they had (e.g. communicated ABC well, weak knowledge of XYZ, etc.).
B) Technical competencies
Your interviewer will then grade you on technical competencies. They will be trying to determine whether you are "raising the bar" or not for each competency they have tested. In other words, you'll need to convince them that you are as good as or better than the average current Amazon MLE at the level you're applying for.
The exact technical competencies you'll be evaluated against vary by role. But here are some common ones for MLE roles:
- Problem solving
- Statistical evaluation
- Data processing
C) Leadership principles
Your interviewer will also grade you on Amazon's 16 leadership principles and assess whether you're "raising the bar" for those too. Each interviewer is given two or three leadership principles to grill you on.
D) Overall recommendation
Finally, each interviewer will file an overall recommendation into the system. The different options are along the lines of: "Strong hire," "Hire," "No hire," "Strong no hire."
1.3 What happens behind the scenes
Your recruiter is leading the process and taking you from one stage to the next. Here's what happens at each of the stages described above:
- After the phone screens, your recruiter decides to move you to the onsite or not, depending on how well you've done up to that point
- After the onsite, each interviewer files their notes into the internal system, grades you, and makes a hiring recommendation (i.e. "Strong hire," "Hire," "No hire," "Strong no hire")
- The "Debrief" brings all your interviewers together and is led by the Bar Raiser, who is usually the most experienced interviewer and is also not part of the hiring team. The Bar Raiser will try to guide the group toward a hiring decision. It's rare, but they can also veto hiring even if all other interviewers want to hire you.
- You get an offer. If everything goes well, the recruiter will then give you an offer, usually within a week of the onsite, but it can sometimes take longer
It's also important to note that recruiters and people who refer you have little influence on the overall process. They can help you get an interview at the beginning, but that's about it.
Okay, now that we've covered the interview process, let's dig into the four types of interviews that you'll encounter:
- System design
- Machine learning design
Below, we've put together a summarized list of example questions for each of these interview types. We've also provided a few notes about them, which should help you get a better idea of what to expect.
Amazon’s machine learning engineers solve some of the most difficult problems the company faces with code. It's therefore essential that they have strong problem solving skills. This is the part of the interview where you want to show that you think in a structured way and write code that's accurate, bug-free, and fast.
Here are the most common question types asked in Amazon coding interviews and their frequency. The percentages and examples come from Glassdoor data on Amazon software development engineers but should apply to machine learning candidates as well.
- Graphs / Trees (46% of questions, most frequent)
- Arrays / Strings (38%)
- Linked lists (10%)
- Search / Sort (2%)
- Stacks / Queues (2%)
- Hash tables (2% of questions, least frequent)
Below, we've listed common examples used during Amazon software development engineer interviews for each of these different question types. To make these questions easier to study, we've modified the phrasing to match the closest problem on Leetcode or another resource, and we've linked to a free solution.
Finally, we recommend reading our guide on how to answer coding interview questions to understand more about the step-by-step approach you should use to solve these questions, as well as our list of 49 recent Amazon coding interview questions for more practice.
Example Amazon machine learning engineer interview questions: Coding
- Graphs / Trees (46% of questions, most frequent)
- "Given preorder and inorder traversal of a tree, construct the binary tree." (Solution)
- "Given a non-empty binary tree, find the maximum path sum. For this problem, a path is defined as any sequence of nodes from some starting node to any node in the tree along the parent-child connections. The path must contain at least one node and does not need to go through the root." (Solution)
- "Design an algorithm to serialize and deserialize a binary tree. There is no restriction on how your serialization/deserialization algorithm should work. You just need to ensure that a binary tree can be serialized to a string and this string can be deserialized to the original tree structure." (Solution)
- "Given n nodes labeled from 0 to n-1 and a list of undirected edges (each edge is a pair of nodes), write a function to check whether these edges make up a valid tree." (Solution)
- "Given a list of airline tickets represented by pairs of departure and arrival airports [from, to], reconstruct the itinerary in order. All of the tickets belong to a man who departs from JFK. Thus, the itinerary must begin with JFK." (Solution)
- Arrays / Strings (38%)
- "Given an array of integers nums and an integer target, return indices of the two numbers such that they add up to target. You may assume that each input would have exactly one solution. You may not use the same element twice." (Solution)
- "Given an array nums of n integers, are there elements a, b, c in nums such that a + b + c = 0? Find all unique triplets in the array which gives the sum of zero." (Solution)
- "Say you have an array for which the ith element is the price of a given stock on day i. If you were only permitted to complete at most one transaction (i.e., buy one and sell one share of the stock), design an algorithm to find the maximum profit. Note that you cannot sell a stock before you buy one." (Solution)
- "Given a string s, find the longest palindromic substring in s. You may assume that the maximum length of s is 1000." (Solution)
- "Convert a non-negative integer to its english words representation. Given input is guaranteed to be less than 231 - 1." (Solution)
- Linked lists (10%)
- "Given a linked list, reverse the nodes of a linked list k at a time and return its modified list. k is a positive integer and is less than or equal to the length of the linked list. If the number of nodes is not a multiple of k then left-out nodes in the end should remain as it is." (Solution)
- "Merge two sorted linked lists and return it as a new sorted list. The new list should be made by splicing together the nodes of the first two lists." (Solution)
- "You are given an array of k linked-lists lists, each linked-list is sorted in ascending order. Merge all the linked-lists into one sorted linked-list and return it." (Solution)
- "A linked list is given such that each node contains an additional random pointer which could point to any node in the list or null. Return a deep copy of the list." (Solution)
- Search / Sort (2%)
- "Given an array of integers nums, sort the array in ascending order." (Solution)
- "Given a 2d grid map of '1's (land) and '0's (water), count the number of islands. An island is surrounded by water and is formed by connecting adjacent lands horizontally or vertically. You may assume all four edges of the grid are all surrounded by water." (Solution)
- "Given an array of meeting time intervals consisting of start and end times [[s1,e1],[s2,e2],...] (si < ei), find the minimum number of conference rooms required." (Solution)
- Stacks / Queues (2%)
- "Design a stack that supports push, pop, top, and retrieving the minimum element in constant time." (Solution)
- "Given n non-negative integers representing an elevation map where the width of each bar is 1, compute how much water it is able to trap after raining." (Solution)
- Hash tables (2% of questions, least frequent)
- "Given a non-empty 2D array grid of 0's and 1's, an island is a group of 1's (representing land) connected 4-directionally (horizontal or vertical.) You may assume all four edges of the grid are surrounded by water. Count the number of distinct islands. An island is considered to be the same as another if and only if one island can be translated (and not rotated or reflected) to equal the other." (Solution)
Amazon products have millions of monthly active users. Amazon's engineers therefore need to be able to design systems that are highly scalable. While the coding questions we've covered above usually have a single optimal solution, the system design questions you'll be asked are typically more open-ended and feel more like a discussion.
This is the part of the interview where you want to show that you can both be creative and structured at the same time. In most cases, your interviewer will adapt the question to your background. For instance, if you've worked on an API product, they'll ask you to design an API. But that won't always be the case, so you should be ready to design any type of product or system at a high level.
As with coding interviews, the system design questions you'd face as a machine learning engineer should be similar to those asked in normal Amazon software development engineer interviews. As a result, we'd recommend using the SDE questions below to prepare. For more practice, take a look at our list of 31 system design interview questions.
Example Amazon machine learning engineer interview questions: System design
- How would you design a warehouse system for Amazon.com?
- How would you design Amazon.com so it can handle 10x more traffic than today?
- How would you design Amazon.com's database (customers, orders, products, etc.)?
- How would you design TinyURL?
- How would you design Dropbox?
- How would you design a parking payment system?
- How would you design an electronic voting system?
- How would you design a distributed cache system?
So far, the interviews we've covered (coding and system design) have overlapped with the general Amazon software development engineer interview process. The machine learning design interview, on the other hand, is specific to machine learning candidates.
Amazon has huge data sets and billions of users across their various apps. The magnitude and complexity of these systems present quite a few opportunities to apply machine learning to real-world problems. Broadly speaking, that's what you'll be asked to do in your interview: transform raw data, choose features, tune hyperparameters, monitor performance, etc.
The questions you'll be asked are similar to system design questions, in that you'll need to outline a high-level approach for a system or problem. The primary difference is that you'll be expected to specifically develop a machine learning solution.
To provide a clearer idea of what to expect, we've compiled a list of examples that are similar to the questions you'd be asked in Amazon's machine learning design interview: both pure design questions and those that dig deeper into specific theoretical concepts. These questions are from two sources: Glassdoor and Blind. Note that we've modified the phrasing in some cases to make the questions more clear.
Example Amazon machine learning engineer interview questions: Machine learning
Machine learning design
- Design a system that recommends in-flight movies from a database, such that the total time matches directly with the flight time.
- Design a system that recommends clothing to consumers
- Design a product recommendation system
- Design autocomplete and/or spell check on a mobile device
Machine learning theory
- What is a K-means algorithm?
- What is the difference between SVM and logistic regression?
- Describe normalization and Bayes’ rule
- Describe linear regression versus logistic regression
Amazon’s interview process heavily focuses on assessing if you live and breathe the company’s 16 Leadership Principles. The main way Amazon tests this is with behavioral questions, which you'll be asked in every interview.
Below is a breakdown of each leadership principle and how you’ll be asked about them during your interview process with Amazon. These questions have come up in either Amazon machine learning or Amazon software development engineer interviews.
2.4.1 "Customer obsession" interview questions
Customer obsession — "Leaders start with the customer and work backwards. They work vigorously to earn and keep customer trust. Although leaders pay attention to competitors, they obsess over customers.”
Customer obsession is about empathy. Interviewers want to see that you understand the consequences that every decision has on customer experience. You need to know who the customer is and their underlying needs, not just the tasks they want done.
Example "customer obsession" questions asked by Amazon
- Tell me about a time you had to deal with a difficult customer
- Tell me about a time you made something much simpler for customers
- Which company has the best customer service and why?
- Tell me about a time you said no to a customer request and why
2.4.2 "Ownership" interview questions
Ownership — "Leaders are owners. They think long term and don’t sacrifice long-term value for short-term results. They act on behalf of the entire company, beyond just their own team. They never say “that’s not my job.”
Interviewers at Amazon want to avoid hiring people who think, “That’s not my job!” When answering ownership questions, you’ll want to prove that you take initiative, can make tough decisions, and take responsibility for your mistakes.
Example "ownership" questions asked by Amazon
- Tell me about a time you did something at work that wasn't your responsibility / in your job description
- Describe an instance where you had to make an important decision without approval from your boss
- Tell me about a time you took ownership of a problem that was not the focus of your organization
- When was the last time that you sacrificed a long term value to complete a short term task?
2.4.3 "Bias for action" interview questions
Bias for action — "Speed matters in business. Many decisions and actions are reversible and do not need extensive study. We value calculated risk taking.”
Since Amazon likes to ship quickly, they also prefer to learn from doing (while also measuring results) vs. performing user research and making projections. They want to see that you can take calculated risks and move things forward.
Example "bias for action" questions asked by Amazon
- Tell me about a time you had to change your approach because you were going to miss a deadline
- Tell me about a time you had to make a decision with incomplete information. How did you make it and what was the outcome?
- Tell me about a time when you launched a feature with known risks
- Tell me about a time you broke a complex problem into simple sub-parts
2.4.4 "Have backbone; disagree and commit" interview questions
Have backbone; disagree and commit — "Leaders are obligated to respectfully challenge decisions when they disagree, even when doing so is uncomfortable or exhausting. Leaders have conviction and are tenacious. They do not compromise for the sake of social cohesion. Once a decision is determined, they commit wholly.”
Any group of smart leaders will disagree at some point. Amazon wants to see that you know when to challenge ideas and escalate problems to senior leadership. At the same time, they want to know you can sense the right time to move forward regardless of your disagreement.
Example "have backbone; disagree and commit" questions asked by Amazon
- Tell me about a time you had a conflict with a coworker or manager and how you approached it
- Tell me about a time you disagreed with your team and convinced them to change their position
- Tell me about a time you had a conflict with your team but decided to go ahead with their proposal
- Tell me about a time your work was criticized
2.4.5 "Invent and simplify" interview questions
Invent and simplify — "Leaders expect and require innovation and invention from their teams and always find ways to simplify. They are externally aware, look for new ideas from everywhere, and are not limited by “not invented here." Because we do new things, we accept that we may be misunderstood for long periods of time.”
Amazon relies on a culture of innovation. Answering invent and simplify questions is an opportunity to show your ability to create solutions when there is no obvious answer. You’ll also want to show that you know how to execute big ideas as simply and cheaply as possible.
Example "invent and simplify" questions asked by Amazon
- Tell me about a time you suggested a new approach
- What is the most innovative idea you've ever had?
- Tell me how you built a feature in an innovative way, give specific details
2.4.6 "Dive deep" interview questions
Dive deep — "Leaders operate at all levels, stay connected to the details, audit frequently, and are skeptical when metrics and anecdote differ. No task is beneath them.”
When something isn’t working, Amazon engineers need to quickly find a solution. Interviewers want to see that you are excited to dive deep when problems arise.
Example "dive deep" questions asked by Amazon
- Tell me about a project in which you had to deep dive into analysis
- Tell me about the most complex problem you have worked on
- Describe an instance when you used a lot of data in a short period of time
2.4.7 "Are right, a lot" interview questions
Are right, a lot — "Leaders are right a lot. They have strong judgement and good instincts. They seek diverse perspectives and work to disconfirm their beliefs.”
Amazon expects its machine learning engineers to produce solutions as quickly as possible and to make a lot of decisions with little information. You’ll want to demonstrate skill in taking calculated risks and show that you're comfortable disproving your own opinions before moving ahead.
Example "are right, a lot" questions asked by Amazon
- Describe a time you made a mistake
- Tell me about a time you applied judgment to a decision when data was not available
- Tell me about a time you had very little information about a project but still had to move forward
2.4.8 "Deliver results" interview questions
Deliver results — "Leaders focus on the key inputs for their business and deliver them with the right quality and in a timely fashion. Despite setbacks, they rise to the occasion and never settle.”
Amazon values action over perfection. When answering questions related to delivering results, you’ll want to indicate that you dislike slipped deadlines and failed goals.
Example "deliver results" questions asked by Amazon
- Tell me about the most challenging project you ever worked on
- How do you prioritize in your current role?
- What do you think are the most difficult parts of your job?
2.4.9 "Think big" interview questions
Think big — "Thinking small is a self-fulfilling prophecy. Leaders create and communicate a bold direction that inspires results. They think differently and look around corners for ways to serve customers.”
Amazon is huge, and its engineers need to build products that reach significant scale to make a difference for the business. As a result, interviewers will want to see that you can develop and articulate a bold vision.
Example "think big" questions asked by Amazon
- Describe a time you proposed a non-intuitive solution to a problem and how you identified that it required a different way of thinking
- Give a specific example where you drove adoption for your vision and explain how you knew it had been adopted by others
- Tell me about your most significant accomplishment. Why was it significant?
2.4.10 "Hire and develop the best" interview questions
Hire and develop the best — "Leaders raise the performance bar with every hire and promotion. They recognize exceptional talent, and willingly move them throughout the organization. Leaders develop leaders and take seriously their role in coaching others. We work on behalf of our people to invent mechanisms for development like Career Choice.”
As mentioned above, Amazon wants new hires to “raise the bar.” Interviewers will want to see that you are not afraid of working with and hiring people smarter than you. You should also show you enjoy coaching younger colleagues and know how to get the most out of top performers. You’ll notice the examples listed here are general interview questions, but they provide a perfect opportunity for you to address this principle.
This leadership principle is typically discussed in interviews for very senior engineering positions that involve people management or building a team.
Example "hire and develop the best" questions asked by Amazon
- Describe a time you stepped in to help a struggling teammate
- Tell me about a time you helped boost your team morale
- Tell me about a time you hired or worked with people smarter than you are
- Why do you want to work at Amazon?
2.4.11 "Frugality" interview questions
Frugality — "Accomplish more with less. Constraints breed resourcefulness, self-sufficiency, and invention. There are no extra points for growing headcount, budget size, or fixed expense.”
At every touchpoint, Amazon tries to provide customers with as much value for as little cost as possible. Interviewers will be looking for how you can support this idea while maintaining a constant drive for innovation.
Example "frugality" questions asked by Amazon
- Tell me about a time you successfully delivered a project without a budget or resources
- Describe the last time you figured out a way to keep an approach simple or to save on expenses
2.4.12 "Learn and be curious" interview questions
Learn and be curious — "Leaders are never done learning and always seek to improve themselves. They are curious about new possibilities and act to explore them.”
Amazon demands constant improvement in every part of their business. You’ll want to show that you are interested in learning new things and exploring new ideas. Some examples listed here are general interview questions, but they provide a perfect opportunity for you to address this principle.
Example "learn and be curious" questions asked by Amazon
- Explain something interesting you’ve learned recently
- Tell me about a time you taught yourself a skill
- Why machine learning?
2.4.13 "Insist on the highest standards" interview questions
Insist on the highest standards — "Leaders have relentlessly high standards — many people may think these standards are unreasonably high. Leaders are continually raising the bar and drive their teams to deliver high quality products, services, and processes. Leaders ensure that defects do not get sent down the line and that problems are fixed so they stay fixed.”
Amazon takes the view that nothing is ever “good enough.” They’d like to see that you push for standards that are difficult to meet.
Example "insist on the highest standards" questions asked by Amazon
- Describe a project that you wish you had done better and how you would do it differently today
- Tell me about the most successful project you've done
- How do you ensure standards are met when delivering projects?
2.4.14 "Earn trust" interview questions
Earn trust — "Leaders listen attentively, speak candidly, and treat others respectfully. They are vocally self-critical, even when doing so is awkward or embarrassing. Leaders do not believe their or their team’s body odor smells of perfume. They benchmark themselves and their teams against the best.”
The key part of that principle candidates often miss is the “vocally self-critical.” Amazon wants engineers who focus on fixing mistakes instead of figuring out who to blame. You’ll want to show that you take action when something is wrong and acknowledge your own faults before blaming other people and teams.
Example "earn trust" questions asked by Amazon
- How do you earn trust with a team?
- Tell me a piece of difficult feedback you received and how you handled it
- A co-worker constantly arrives late to a recurring meeting. What would you do?
2.4.15 "Strive to be Earth's best employer" interview questions
Strive to be Earth's best employer — "Leaders work every day to create a safer, more productive, higher performing, more diverse, and more just work environment. They lead with empathy, have fun at work, and make it easy for others to have fun. Leaders ask themselves: Are my fellow employees growing? Are they empowered? Are they ready for what's next? Leaders have a vision for and commitment to their employees' personal success, whether that be at Amazon or elsewhere.”
Similar to the principle “hire and develop the best,” this principle is more likely to come up in interviews for senior and/or managerial positions. In this case, you’ll want to show that you’ll not only boost your team, but also create a safe, diverse, and just work environment. Essentially, if “hire and develop the best” means picking and training a top team, being “Earth’s best employer” means keeping that team safe, enriched, and engaged once you’ve got them.
Example "strive to be Earth's best employer" questions asked by Amazon
- Tell me about a time that you went above and beyond for an employee
- Tell me about a time you saw an issue that would negatively impact your team. How did you deal with it?
- How do you manage a low performer in the team? How do you identify a good performer in the team and help in their career growth?
2.4.16 "Success and scale bring broad responsibility" interview questions
Success and scale bring broad responsibility — "We started in a garage, but we're not there anymore. We are big, we impact the world, and we are far from perfect. We must be humble and thoughtful about even the secondary effects of our actions. Our local communities, planet, and future generations need us to be better every day. We must begin each day with a determination to make better, do better, and be better for our customers, our employees, our partners, and the world at large. And we must end every day knowing we can do even more tomorrow. Leaders create more than they consume and always leave things better than how they found them.”
Amazon wants its employees to understand the responsibility of working for a vast, impactful company. Show how you measure the impact of your decisions, both in your workspace and in the world around you (e.g. sustainability, justice, etc.). You must always be willing to improve.
Example "success and scale bring broad responsibility" questions asked by Amazon
- Give me an example on when you made a decision which impacted the team or the company
- Can you tell me a decision that you made about your work and you regret now?
Now that you know what questions to expect, let's focus on how to prepare. Here are the four most important things you can do to prepare for Amazon's machine learning engineer interviews.
3.1 Learn about Amazon's culture
Most candidates fail to do this. But before investing tens of hours preparing for an interview at Amazon, you should take some time to make sure it's actually the right company for you.
Amazon is prestigious, and it's tempting to assume that you should apply without considering things more carefully. But it's important to remember that the prestige of a job (by itself) won't make you happy in your day-to-day work. It's the type of work and the people you work with that will.
If you know machine learning engineers who work at Amazon or used to work there, talk to them to understand what the culture is like. The leadership principles we discussed above can give you a sense of what to expect, but there's no replacement for a conversation with an insider. Finally, we would also recommend reading the following resources:
- Amazon's technology culture video mix (by Amazon)
- Amazon vision and mission analysis (by Panmore Institute)
- Amazon strategy teardown (by CB Insights)
3.2 Practice by yourself
As mentioned above, you'll have four main types of interviews at Amazon: coding, system design, machine learning design, and behavioral. Here are resources that will help you with each question type.
For coding interviews, we recommend getting used to the step-by-step approach put together by Amazon in the video below.
Here is a summary of the approach:
- Step 1: Clarify
- Ask clarification questions to remove ambiguity about the problem
- Explore the edges of the problem
- Step 2: Plan
- Discuss potential approaches you could take
- Pick an approach and lay out the high level steps
- Step 3: Implement
- Write clean code, not pseudocode
- Comment on your code as you go
- Step 4: Test
- Start by testing with a simple example
- Try breaking your code with edge and corner cases
- Step 5: Optimize
- Calculate time complexity
- Discuss how you can optimize your solution
To practice solving questions we recommend using our articles, 73 data structure questions and 71 algorithms questions, which have links to high quality answers to each problem. They are organized by type of data structure or algorithm as well as by difficulty level.
If you want to practice algorithms, we recommend using Leetcode, where you can get a lot done on the free tier, or find Amazon-specific questions on the premium tier. Amazon has high standards for its engineers, so practice questions at medium or hard-level difficulty.
For system design interviews, we recommend studying our system design interview guide and learning how to answer system design interview questions. These guides cover a step-by-step method for answering system design questions, and they provide several example questions with solutions.
For machine learning design interviews, we recommend that you browse the AWS machine learning blog to acquaint yourself with Amazon’s recent machine learning projects. For an end-to-end process to implement machine learning solutions, take a look at this field guide. Although the guide is from Facebook, its process breakdown should still be helpful when practicing the example questions we've provided in section 2.3 above.
For behavioral interviews, we recommend learning our step-by-step method for answering behavioral questions. Then, you can practice answering the questions listed in section 2.4 above. If you have more time to prepare, then you can prepare even more "stories" summarizing your top qualifications or important lessons that you've learned.
Finally, a great way to practice all of these interviews is to interview yourself out loud. This may sound strange, but it will significantly improve the way you communicate your answers during an interview. Play the role of both the candidate and the interviewer, asking questions and answering them, just like two people would in an interview. Trust us, it really helps!
3.3 Practice with peers
Practicing by yourself will only take you so far. One of the main challenges of machine learning interviews is communicating what you are doing as you are doing it. As a result, we strongly recommend practicing live interviews with a peer interviewing you.
If possible, a great place to start is to practice with friends. This can be especially helpful if your friend has experience with machine learning engineer interviews, or is at least familiar with the process.
3.4 Practice with ex-interviewers
Practicing with peers can be a great help, and it's usually free. But at some point, you'll start noticing that the feedback you are getting from peers isn't helping you that much anymore. Once you reach that stage, we recommend practicing with ex-interviewers from top tech companies.
If you know a machine learning engineer or someone who has experience running interviews at Amazon or another big tech company, then that's fantastic. But for most of us, it's tough to find the right connections to make this happen. And it might also be difficult to practice multiple hours with that person unless you know them really well.
Here's the good news. We've already made the connections for you. We’ve created a coaching service where you can practice 1-on-1 with ex-interviewers from leading tech companies. Learn more and start scheduling sessions today.
Any questions about Amazon ML engineer interviews?
If you have any questions about Amazon machine learning engineer interviews, do not hesitate to ask them in the comments below. All questions are good questions, so go ahead!