Facebook engineering manager interviews are really challenging. The questions are difficult, specific to Facebook, and cover a wide range of topics.
The good news is that the right preparation can make a big difference and can help you land a job as an engineering manager at Facebook. To help you get there, we’ve put together the ultimate guide below.
Here's an overview of what we'll cover:
- Process and timeline
- Example questions
- People management interview
- Project retrospective interview
- Culture fit interview
- System design interview
- Coding interview
- Preparation tips
Note that if you're targeting an engineering manager role at other companies as well as Facebook, you might want to see our more general, less company-specific guide.
1.1 What interviews to expect
What's the Facebook engineering manager interview process and timeline? It takes four to eight weeks on average and follows these steps:
- Recruiter phone screen
- First-round: 1 or 2 interviews
- Onsite: 5 or 6 interviews
Let's look at each of these steps in more detail below:
1.1.1 Recruiter phone screen
In most cases, you'll start your interview process with Facebook 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 Facebook. You should expect typical behavioral and resume questions like, "Tell me about yourself","Why Facebook?", or "Tell me about your current day-to-day."
If you get past this first HR screen, the recruiter will then help schedule a first-round interview with a Facebook engineering manager. One great thing about Facebook is that they are very transparent about their recruiting process. Your HR contact will therefore walk you through the remaining steps in the hiring process, and will also share with you a helpful email listing resources you can use to prepare.
1.1.2 First-round: 1 or 2 interviews
The next step after your recruiter call is the first-round interview. This will usually be one 45-60 minute phone call with your hiring manager. It’s possible you may also have a second call that’s more technical.
You can expect to be asked about your experience and past projects, some behavioral questions that aim to get a sense of whether you’d fit into Facebook’s culture, and possibly some technical questions. More on the various question types in section 2 below.
1.1.3 Onsite: 5 or 6 interviews
If you pass the first-round interview, you’ll be invited to do the "onsite". The onsite interviews are the biggest test for Facebook EM candidates. During this interview loop, you'll have five or six separate 45-minute interviews with several different interviewers from Facebook, consisting of:
- One people management interview, where you’ll be assessed on your ability to lead people and projects.
- One project retrospective interview where you’ll be asked to deep dive into some of the projects that you’ve worked on.
- One culture fit interview, where you’ll face general behavioral questions that test whether you'll fit into the Facebook way of working.
- One or two system design interviews, where you'll need to show you’re familiar with and capable of building highly scalable systems.
- One or two coding interviews, where you'll solve general coding questions relevant to your role.
[COVID Update] Given the Covid-19 pandemic, your onsite interviews with Facebook will likely be conducted virtually. You can ask your Facebook recruiter for the latest information on their Covid-19 adjustments.
1.2 What happens behind the scenes
Your recruiter is leading the process and taking you from one stage to the next. Here's what happens behind the scenes at each of the stages described above:
- After the first-round interview(s), the interviewer(s) you talked to has (have) 24h to submit their ratings and notes on the internal system. Your recruiter then reviews the feedback, and decides to move you to the onsite interview or not, depending on how well you've done.
- After the onsite, your various interviewers will make a recommendation on hiring you or not and the recruiter compiles your "packet" (interview feedback, resume, referrals, etc.) If they think you can get the job, they will present your case at the next candidate review meeting.
- Candidate review meetings are used to assess all candidates who have recently finished their interview loops and are close to getting an offer. Your packet will be analyzed and possible concerns will be discussed. Your interviewers are invited to join your candidate review meeting, but will usually only attend if there's a strong disagreement in the grades you received (e.g. 2 no hires, 2 hires). If after discussions the team still can't agree whether you should get an offer or not, you might be asked to do a follow-up interview to settle the debate. At the end of the candidate review meeting, a hire / no hire recommendation is made for consideration by the hiring committee.
- The hiring committee includes senior leaders from across Facebook. This step is usually a formality and the committee follows the recommendation of the candidate review meeting. The main focus is on fine-tuning the exact level (and therefore the compensation ) you will be offered.
It's also important to note that hiring managers 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.
As we mentioned above, for the position of Facebook engineering manager you'll face various types of interviews:
- People management
- Project retrospective
- Culture fit
- System design
Now let’s take a look at what you can expect from each interview. To help you practice, we’ve provided example questions that we’ve found from our research on Glassdoor. We've categorized the questions and we've changed the grammar and phrasing in some places to make the questions easier to understand.
When you’re preparing, bear in mind that the division between the interview types is not set in stone, and so you should be ready to be asked any type of question in any interview. For example, you may be asked a culture fit type question at the beginning of a system design or coding interview, and likewise you might face some management questions in the project retrospective interview. But as long as you're prepared on all of them, it shouldn't be a problem!
Facebook engineering managers need to have superb soft skills in order to lead teams and projects. The people management interview is to test these soft skills and see if you’ve got what it takes to be a leader in Facebook.
You’ll need to show that you can build a team and keep it motivated, solve conflicts and communicate complex concepts. While the focus is mainly on how you manage people, you should also expect the odd project management question.
Let’s look at some of the most frequent examples that we found in the Glassdoor data.
Example people management questions for the engineering manager interview at Facebook
- How do you manage your team’s career growth?
- How do you manage difficult conversations?
- How do you manage underperforming employees?
- Tell me about a difficult employee situation that you handled well/not so well
- What would you do with someone that had stayed at the same level for too long?
- How do you recruit good engineers?
- How do you manage projects?
- Describe a tough situation where you demonstrated leadership
As an engineering manager, you’ll be taking the lead on high level projects with limited resources, and Facebook will want to see evidence from your past experience that you’ve got what it takes.
In this interview, you’ll be asked to deep dive into one or several of your past projects, going into detail about decisions that you made and the problems that you solved. You may also face some more general “resume” questions that aim to assess your past experience.
Let's take a look at some example questions.
Example project retrospective questions for the engineering manager interview at Facebook
- Describe the most technically complex project that you have worked on and why it was complex
- Describe a software development project you led and your approach
- Tell me about a project, product or system you worked upon. What were the design and technical problems you faced? How did you solve them?
- Tell me in detail about the architecture of a project you've been involved with
- Tell me about the high level system design of a specific project
- Tell me about a time you scaled a system
Whatever the role on offer, Facebook wants to make sure that a candidate is going to fit positively into their culture and values system. This is really important to them.
Therefore, in this interview they'll be trying and get a sense of your professional background, your personality and your motivation in applying to join Facebook. The "culture fit" interview is often paired with a coding interview in an hour-long session, so don’t be surprised if, after some behavioral questions of the type listed below, the conversation switches to coding.
We'll get into the coding questions very soon, but for now let's look at some culture fit question examples.
Example culture fit questions for the engineering manager interview at Facebook
- Tell me about a mistake you made and the lesson you learned from it.
- Tell me about what you've been working on over the last year
- Tell me about yourself
- Why are you leaving your current job?
- How do you communicate about technical project needs with non-technical teams?
You may have noticed that these first three interview types that we’ve listed consist of mainly behavioral questions. To dig deeper into how to answer this very common type of interview question, take a look at our guide.
Let’s move onto the next two interview types: system design and coding.
Facebook, Instagram, and Whatsapp all have 1bn+ monthly active users. Facebook engineering managers therefore need to be able to design systems that are highly scalable, and the system design interviews are your chance to demonstrate your familiarity with such complex systems.
In these interviews you’ll want to show that you can both be creative and structured at the same time. The questions you'll be asked are typically quite open-ended and feel more like a discussion.
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. You'll need to be thorough in your explanations - often you'll be expected to draw boxes and arrows on a whiteboard (or online equivalent) to illustrate your answer.
You can expect to be given one or two system design interviews for the Facebook engineering manager role. We’ve analyzed the data on Glassdoor to provide you with some example questions and to give you a broader idea of what you need to prepare for, we’ve included some questions that regular (i.e. non-management) software engineers have been asked and that could also come up in your interview.
Example system design questions for the engineering manager interview at Facebook
- Design a real-time comment system to go under a Facebook post which may have millions of concurrent active users
- How would you design the Facebook newsfeed?
- How would you use a load balancer for memcache servers?
- How would you design Instagram Stories? (*Facebook software engineer question)
- How would you design a typehead feature (e.g. Google search autocomplete)? (*Facebook software engineer question)
- How would you design a distributed Botnet? (*Facebook software engineer question)
- How would you design a system that can handle millions of card transactions per hour? (*Facebook software engineer question)
To learn a consistent method for solving system design questions, and to access additional practice questions, we recommend that you read our free system design interview guide.
Many tech companies don’t ask coding questions for management positions, but Facebook does. You can expect one or two of the onsite interviews to be a coding interview, and you may even be asked some coding questions in the first-round.
Facebook will want to make sure you’ve got the necessary problem-solving skills and that you can think in a structured way when it comes to code. They'll be wanting to see your thought process, so be sure to provide a narrative as you go through the code.
Below we've listed several coding questions that Facebook tends to ask in engineering interviews, according to data from Glassdoor. We’ve taken these questions from regular (non-management) software engineer interviews at Facebook, because there is more data available for those roles. However, these questions should also be relevant to management candidates, so you can use them in your preparation.
To make these questions easier to study, we've put divided them into the following categories, with the most frequent first.
- Arrays / Strings (38% of questions, most frequent)
- Graphs / Trees (29%)
- Dynamic Programming (18%)
- Search / Sort (9%)
- Linked lists (4%)
- Stacks / Queues (2%, least frequent)
We've also modified the phrasing to match the closest problem on Leetcode or another resource, and we've linked to a free solution.
Example coding questions asked by Facebook
1. Arrays / Strings (38% of questions, most frequent)
- "Given an array nums of n integers where n > 1, return an array output such that output[i] is equal to the product of all the elements of nums except nums[i]." (Solution)
- "Given a non-empty string s, you may delete at most one character. Judge whether you can make it a palindrome." (Solution)
- "Implement next permutation, which rearranges numbers into the lexicographically next greater permutation of numbers." (Solution)
- "Given a string S and a string T, find the minimum window in S which will contain all the characters in T in complexity O(n)." (Solution)
- "Given the root node of a binary search tree, return the sum of values of all nodes with value between L and R (inclusive)." (Solution)
- "Given a Binary Tree, convert it to a Circular Doubly Linked List (In-Place)." (Solution)
- "Implement an iterator over a binary search tree (BST). Your iterator will be initialized with the root node of a BST." (Solution)
- "Given a list of non-negative numbers and a target integer k, write a function to check if the array has a continuous subarray of size at least 2 that sums up to the multiple of k, that is, sums up to n*k where n is also an integer." (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." (Solution)
- "We have a list of points on the plane. Find the K closest points to the origin (0, 0)." (Solution)
- "Given two arrays, write a function to compute their intersection." (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)
- "Implement the following operations of a queue using stacks." Note: see more details at the following link. (Solution)
In addition to the questions above, you might also encounter a debugging style question, where you’re given a section of code and asked to find the bugs within it. For a more extensive version of this list of coding questions and solutions, go to our Facebook software engineer interview article.
Now that you know what questions to expect, let's focus on how to prepare. It's no secret that the performance bar at Facebook is high. Some people even go as far as quitting their job to prepare for interviews full time.
This is obviously extreme and not what we recommend doing, but it shows how much effort some candidates are ready to put in. We've listed the four steps we recommend taking to prepare as efficiently as possible below.
3.1 Learn about Facebook’s culture
Most candidates fail to do this. But before investing tens of hours preparing for an interview at Facebook, you should take some time to make sure it's actually the right company for you.
Facebook is prestigious and it's therefore tempting to ignore that step completely. But in our experience, the prestige in itself won't make you happy day-to-day. It's the type of work and the people you work with that will.
If you know engineers who work at Facebook or used to work there it's a good idea to talk to them to understand what the culture is like. In addition, we would recommend reading about Facebook's 5 core values and hacker culture.
3.2 Practice by yourself
As mentioned above, you'll have five types of interviews at Facebook: people management, project retrospective, culture fit, system design, and coding. The first step of your preparation should be to brush up on these different types of questions and to practice answering them by yourself.
The people management, project retrospective and culture fit interviews will all consist of mainly behavioral questions. We recommend learning our step-by-step method to answer this type of question. In addition, you'll want to write down your answers to the example questions we gave you in the previous section.
For system design interviews, we recommend studying our system design interview guide. The guide covers a step-by-step method for answering system design questions, and provides several example questions with solutions.
For coding interviews, we recommend reading the following article written by an ex-Facebook interviewer to understand more about the step-by-step approach you should use to solve coding questions in an interview.
And to practice, we recommend using Leetcode where you can get a lot done with the Free tier, and also access Facebook-specific questions using the Premium tier. If you haven’t already, you should also take a look at our Facebook software engineer interview article for useful example coding questions and additional information.
For some really useful general tips on tackling some of the different types of interviews you'll face, see this Facebook article (note that this was written for regular, non-management software engineers and so it mentions a slightly different process).
Finally, a great way to practice answering interview questions 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 coding interviews is to have to communicate what you are doing as you are doing it. As a result, we strongly recommend practicing live coding interviews with a peer interviewing you.
A great place to start is to practice with friends if you can. You can also sign up to the engineering manager waitlist on our free mock interview platform. We'll let you know as soon as we've activated the engineering manager category so that you can start practicing with other candidates.
3.4 Practice with ex-interviewers
The main benefit of practicing with peers is that it's 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 an engineering manager who has experience running interviews at Facebook 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 like Facebook. Learn more and start scheduling sessions today.
If you have any questions about Facebook engineering manager interviews, don't hesitate to post them below and we'll be more than happy to answer them. All questions are good questions, so go ahead!