The Facebook data scientist job role is one of the most coveted positions in tech. It requires a multi skill set of data analysis, product intuition, SQL coding, and a lot of communication with business and key stakeholders. Generally focused on the business side rather than engineering, the Facebook data science role is classified as much more of a typical product analyst job at many other companies.
- Use quantitative tools to uncover opportunities, set team goals and work with cross-functional partners to guide the product roadmap
- Explore, analyze and aggregate large data sets to provide actionable information, and create intuitive visualizations to convey those results to a broad audience
- Design informative experiments considering statistical significance, sources of bias, target populations and potential for positive results
- Collaborate with Engineers on logging, product health monitoring and experiment design/analysis
The Facebook data scientist interview process is relatively straight-forward. It starts out with a recruiter reaching out to you by email or Linkedin or after applying on the website. The recruiter will schedule a 30 minute phone screen to talk to you about Facebook to understand your interests in the company, what division and department you’d like to work on, and if your expectations align with Facebook’s vision of the data science role.
It’s common that they may transfer you to another recruiter on the machine learning engineering or growth marketing analyst if your skillset is better suited for those roles. A candidate can also interview for multiple roles at Facebook.
Generally the Facebook recruiters are looking for experienced data scientists with at least a few years of experience on the candidate’s resume. If you find yourself not being selected for onsite interviews, check us out at Interview Query for a resume review.
The Technical Screen
The initial technical screen consists of two parts (for a total of 30–45 minutes).
- Product sense and analytics (10–20 minutes)
- Technical and Data Processing (10–20 minutes)
Product sense and analytics
You will interview with a data scientist on the Facebook team over a video chat. For the product sense and analytical questions, the interviewer will gauge how you solve business questions and problems, as well as how creative and articulate you are at thinking through these problems while solving them. It’s not about arriving at the perfect or correct answer, but how you engage with the problem.
It’s helpful to spend time engaging with Facebook products as someone who is tasked with improving or developing the products as a data scientist. “Facebook product” can be defined as Ads, Mobile, Timeline, News Feed, Messaging. Additionally there is also Instagram and Oculus.
Put yourself in the shoes of the product team who built the product or features and ask questions like:
- Why do you think they made certain decisions about how it works?
- What could be done to improve the product?
- What kind of metrics you’d want to consider when solving for questions around health, growth, or the engagement of a product?
- How would you measure the success of different parts of the product?
- What metrics would you assess when trying to solve business problems related to our products?
- How would you tell if a product is performing well or not?
- How would you set up an experiment to evaluate any new products or improvements?
It’s also important to lay out structure on how to answer the question. Make sure to coalesce your thoughts all in one place and organize your answer to thoughtfully explain how you’re investigating each problem.
- How would you create a process to identify fake news postings on Facebook? Define a metric.
- Facebook sees that likes are up 10% year over year, why could this be?
In the technical and data processing portion you’ll be given two questions. Facebook is not only looking for coding skills, but also for the ability to translate a high-level question into an execution strategy and explain how the result is relevant and what aspects may still be lacking.
Many of these questions are likely given a dataset and to write a SQL query or Pandas code to analyze the dataset to achieve an expected result.
Given two tables. One an attendance log for every student in a school district and the other a summary table with demographics for each student in the district.
attendance_events : date | student_id | attendance
all_students : student_id | school_id | grade_level | date_of_birth | hometown
Using this data, could you answer questions like the following:
- What percent of students attend school on their birthday?
- Which grade level had the largest drop in attendance between yesterday and today?
Make sure to write real code. Pseudo code is not acceptable for this portion of the interview as they want to see real SQL or pandas code being written. It’s highly suggested to write in SQL as this is the language that all of the analysts and data scientists use at Facebook.
Onsite interview structure
The onsite interview at Facebook is a quick 2.5 hours long with little breaks in-between each interview. You’ll be meeting with four different data scientists for 30 minutes each within four different types of interviews.
- 1 statistical analysis case question
- 2 product generalist questions
- One more modeling heaving
- Another more product intuition
- 1 tech analysis question
- You’ll also spend 1:1 time with a Data Scientist during your break to learn more about their life at Facebook. This is usually a 45 minute lunch interview that they'll let you take a break or talk through what they work on at Facebook.
Sample Facebook Data Scientist Interview Questions
- How can Facebook figure out when users falsify their attended schools?
- Given a list A of objects and another list B which is identical to A except that one element is removed, find that removed element.
- If 70% of Facebook users on iOS use Instagram, but only 35% of Facebook users on Android use Instagram, how would you investigate the discrepancy?
- How do you map nicknames (Pete, Andy, Nick, Rob, etc) to real names?
- Write a query to produce a histogram of user comments.
- We have two options for serving ads within Newsfeed. 1 out of every 25 stories, one will be ad and every story has a 4% chance of being an ad. For each option, what is the expected number of ads shown in 100 news stories?