DoorDash is making its mark as being the world’s most reliable on-demand, logistics engine for delivery. As a result of their growth, they need to grow their data science team to help scale their business. More data scientists help develop and improve the models that power DoorDash’s three-tier marketplace of consumers, merchants, and dashers.

The Data Science Role at DoorDash

DoorDash is aware of the importance of data and the need for a high-energy, confident, and well-experienced data scientist. An existing background in logistics also doesn’t hurt especially when you have Amazon, Uber, or Lyft on your resume. Additionally after that, any company with marketplace effects.

The general requirements are below:

  • Collecting, organizing, processing, and cleaning data using a numerical programming language like SQL, R, Python, or other statistical/scripting tools.
  • Analyzing the data using quantitative analysis to provide insights on how to best help business and product leaders understand user behaviors, marketplace dynamics, and market trends.
  • Forecast the supply of available dashers as well as incoming delivery demand.
  • Build models for next-generation pricing and pay algorithms.
  • Predict preparation time for over 50,000 merchant partners.

What are the skills required?

DoorDash hires only qualified and experienced candidates with 2+ years of industry experience (4+ years for senior data scientist role) in designing and developing machine learning models with an eye for business impact.

General qualifications include:

  • B.S., M.S., or PhD. in Statistics, Math, Computer Science, Physics, Economics, or other related quantitative fields.
  • Sound understanding of statistics and machine learning theory.
  • Proficiency in numerical programming languages (Python preferable).
  • Experience productionizing machine learning models.
  • Sound understanding of recommender systems and information retrieval approaches.

What are the types of Data Scientists?

At DoorDash, they have 3 different teams related to data science.

Analytics Data Scientist: This team focus on experimental analysis with emphasis on building dashboards and doing the analysis that supports specific business goals.

Machine Learning Engineers: This team focus on building the bulk of the infrastructure for deploying models.

Data Science Machine Learning: This team sits right in the middle of the former two. They build models that focus on business impact. Their focus is on experimental analysis, building recommendation systems and features, building pipelines for recommendations, designing marketing attribution and segmentation, and building sales models.

Although these three teams are separate and work independently, in some cases they work very cross-collaboratively.

Check out our guide Machine Learning Interview Questions for example questions and tips.

The Interview Process

Machine learning systems at DoorDash

The application process on DoorDash is not too different from the application processes of most tech companies. The process starts with:

(1) An initial phone screen by a recruiter.

(2) You receive a take-home challenge where you will be graded on your ability to build a machine learning model.

(3) The next step is the take-home challenge  review call if you pass the assignment. A data scientist will ask a few questions on how you crafted the solution and go through your thought process.

(4) The last stage is the onsite interview where you will be tested on machine learning, coding, business, and mission values.

Initial screening

After applying for the job, you will get a phone interview with a recruiter. This initial phone call interview by a recruiter usually last for 30 minutes. You will be asked a few questions about projects and background related to data science.

  • What project(s) have you worked on that demonstrate your skills?
  • How would you improve our product?

The DoorDash Take-Home Challenge

Want a preview of the DoorDash take-home challenge? Need a take-home challenge review? We have both at Interview Query.

At this stage, you will be given a take-home problem/dataset via email. This take-home challenge usually takes a few days to complete (48 to 72 hours in most cases) and is crafted depending on which data science role you’ve applied to.

The analytics take home-home challenge is divided into two segments. This first part involves analysis on data set (using a case study data provide). The second segment will require you to write SQL queries and answer a few SQL questions.

The data science machine learning take-home challenge is also two parts. The first part requires building a model to predict delivery duration while the second part is to create an application that can serve the model from part 1.

Example Questions:

  • From the data set given, provide at least one recommendation/insight.
  • Outline an experiment you would like to run to test your suggested product/business recommendation.
  • State your hypothesis, describe how you would structure your experiment, list your success metrics and describe the implementation.
  • Let’s assume that the experiment you ran proved your hypothesis was true. How would you suggest implementing the change on a larger scale? What are some operational challenges you might encounter and how would you mitigate their risk?

Case Study Review

After submitting the take-home problem, depending on if you pass the challenge, you’ll receive a review call (video chat) with a data scientist on the case study given. At this point, you will be asked a series of questions about the techniques used. The interviewer is just trying to get a grasp of your thought process and understanding why you made certain decisions.

Check out our guide to the DoorDash analytics case study to learn more and for sample questions.

Onsite Interview and Presentation

The on-site interview lasts for about 5 hours with a lunch break in-between. You will be introduced to the data scientist team along with other team members that work closely together.

Here’s what the on-site interview looks like:

  • System design, machine learning, and white-board coding
  • Object-oriented programming
  • SQL queries
  • Product metrics and business case study
  • Culture fit and behavioral interview

During the on-site interview, you may be given a real-life DoorDash problem to work on and present to the interview panel as various team members pair program with you. Depending on the type of data science role, expect it to be heavy on either analytics or building a machine learning model. It’s important when presenting at the end to focus on how machine learning affects the business problems.

Try answering this interview question asked by DoorDash on Interview Query.

Say you’re running an e-commerce website. You want to get rid of duplicate products that may be listed under different sellers, names, etc... in a very large database.
For example: iPhone X and Apple iPhone 10
How do you go about doing this?

Interview Tips

  • Most questions asked in the on-site interview are open-ended. Be ready to come up with a plan/recommendation, and explain in detail to the team, the significance and impact of that recommendation on the company.
  • Remember to study and practice many graph traversal techniques and algorithms, and look-up and solve problems on Leetcode and Interview Query.
  • Practice system design using real projects. Polish your object-oriented programming skills as you may be asked to modify an existing program with OO techniques. Also read-up on Graph traversal with DFS.
  • You will also be tested on your communication skills, understanding DoorDash values, and how its business and objectives are unique. Reading-up on DoorDash, their current news, products, features etc., will come in handy.
  • DoorDash loves entrepreneur-minded data scientists. Read this blog post on what they're looking for in many case questions.

Sample DoorDash Data Scientist Interview Questions

Here are some questions asked previously at the DoorDash Data Science interview.

  • Code up a stack data structure.
  • What is protocol? How does multi-threading work with protocol?
  • Find intersecting intervals for two lists of overlapping intervals?
  • Give an array of integer, and a start point, and an endpoint print out all the broken intervals. e.g. start = 1, end = 100, array = {2,3,4,6,7}, print {5, 8–100}
  • How would you think about pricing delivery fees when launching a new market?