Doordash Software Engineer Interview Questions + Guide in 2024

Doordash Software Engineer Interview Questions + Guide in 2024

Overview

DoorDash is a fast-growing technology and logistics company that powers a three-sided marketplace comprising consumers, merchants, and Dashers. As one of US’s leading online food ordering and delivery platforms, DoorDash relies heavily on its technology platform for order placement and tracking. They utilize sophisticated algorithms to manage logistics, including matching orders with the nearest available delivery person, whom they call a “Dasher”.

This guide will provide a comprehensive overview of what to expect during the interview, including handpicked DoorDash software engineer interview questions, strategies, and more. Let’s get started!

What Is the Interview Process Like for a Software Engineer Role at Doordash?

The interview process usually depends on the role and seniority, however, you can expect the following on a Doordash software engineer interview:

Recruiter/Hiring Manager Call Screening

If your CV happens to be among the shortlisted few, a recruiter from the DoorDash Talent Acquisition Team will make contact and verify key details like your experiences and skill level, and discuss comp expectations and your engineering interests. Behavioral questions may also be a part of the screening process.

In some cases, the DoorDash hiring manager stays present during the screening round to answer your queries about the role and the company itself. They may also indulge in surface-level technical and behavioral discussions.

The whole recruiter call should take about 30 minutes.

Technical Virtual Interview

Successfully navigating the recruiter round will present you with an invitation for the technical screening round. Technical screening for the DoorDash Software Engineer role usually is conducted through virtual means, including video conferences and screen sharing.

You will typically start with an Online Assessment (OA). The OA is critical to move forward, as candidates need to answer at least 3 out of 4 questions correctly. Subsequently, the interviewer may focus on technical questions typically sourced from LeetCode, with emphasis on medium to hard levels.

This 1-hour interview with a member of the engineering team assesses your problem-solving skills and coding proficiency. Expect to encounter questions involving data structures, dynamic programming, tree algorithms, recursion, and other advanced computational concepts.

Virtual Onsite Interview Rounds

Followed by a recruiter call outlining the next stage, you’ll be invited to attend the virtual onsite interview loop. This series of interviews generally consists of:

  • 1 hr Whiteboard Coding: Leetcode Medium to Hard level questions.
  • System Design Interview (1.5 hrs): You might be asked to design and validate a system relative to DoorDash’s operational needs, such as an efficient delivery system or ML model for service extension.
  • Project Talk (30 mins): A review of your past projects, discussing your contributions and learnings.
  • Behavioral Interview (30 mins): Questions about your background, challenges faced in past roles, and how you fit into DoorDash’s culture.

What Questions Are Asked in an Doordash Software Engineer Interview?

Typically, interviews at Doordash vary by role and team, but commonly Software Engineer interviews follow a fairly standardized process across these question topics.

1. How would you set up an A/B test for button color and position changes?

A team wants to A/B test multiple changes in a sign-up funnel, such as changing a button from red to blue and/or moving it from the top to the bottom of the page. How would you set up this test?

2. How would you measure the success of a banner ad strategy for an online media company?

An online media company wants to experiment with adding web banners in the middle of its reading content to monetize web traffic. How would you measure the success of this strategy?

3. What metrics would you use to determine the value of each marketing channel for Mode?

Mode, a company selling B2B analytics dashboards, has various marketing channels and their respective costs. What metrics would you use to determine the value of each marketing channel?

4. How would you select Dashers for Doordash deliveries in NYC and Charlotte?

Doordash is launching delivery services in New York City and Charlotte and needs a process for selecting dashers (delivery drivers). How would you decide which Dashers do these deliveries, and would the criteria be the same for both cities?

5. How would you determine the success of a new payment structure for delivery drivers?

A food delivery company wants to launch a new payment structure where drivers make 2.5% of each order and $50 after every fifth order. How would you determine the success of this new structure?

6. Create a function most_tips to find the user that tipped the most.

Given two nonempty lists of user_ids and tips, write a function most_tips to find the user that tipped the most.

7. Write a function to find how many friends each person has.

You are given a list of lists where each group represents a friendship. Write a function to find how many friends each person has.

8. Write a function max_profit to find the maximum profit from stock prices with at most two transactions.

Write a Python function called max_profit that takes a list of integers, where the i-th integer represents the price of a given stock on day i, and returns the maximum profit you can achieve by buying and selling the stock. You may complete, at most, two complete buy/sell transactions to maximize profits on a stock.

9. Determine the full path of a robot navigating a 4x4 matrix.

A robot navigates a 4x4 matrix by moving forward or turning right when blocked. Its starting position is (0,0) and the final destination is (3,3). Determine the full path of the robot before it hits the final destination or starts repeating the path.

10. How would you determine which search engine performed better? Which metrics would you track?

You built a new search engine for Google and want to compare its performance with the existing one. How would you determine which search engine performed better, and which metrics would you track?

11. How would you determine if the new delivery time estimate model predicts better than the old model?

You want to build a new delivery time estimate model for food delivery. How would you determine if the new model predicts delivery times better than the old model?

12. How would you build a model to predict which merchants DoorDash should acquire in a new market?

As a data scientist at DoorDash, how would you build a model to predict which merchants the company should target for acquisition when entering a new market?

13. What are the benefits of dynamic pricing, and how can you estimate supply and demand?

Discuss the benefits of dynamic pricing and explain how you can estimate supply and demand in this context.

14. How would you design a machine learning system to minimize missing or wrong orders on DoorDash?

As a data scientist at DoorDash, you need to build a machine learning system to minimize missing or wrong orders placed on the app. How would you go about designing this system?

15. Can you determine if an unbalanced AB test will result in bias towards the smaller group?

You have an AB test with one variant having 50K users and the other 200K users. Analyze if the unbalanced sample sizes will cause bias towards the smaller group.

16. What is an unbiased estimator? Can you provide a layman example?

Explain what an unbiased estimator is and give a simple example that a layman can understand.

17. Will the metric increase by ~5% after applying a new UI to all users?

You tested a new UI to increase conversion rates, and the test variant won by 5%. Predict if the metric will go up by ~5%, more, or less when applied to all users, assuming no novelty effect.

18. What are the benefits of dynamic pricing and how to estimate supply and demand?

Discuss the advantages of dynamic pricing and methods to estimate supply and demand in this context.

19. How would you analyze a non-normal distribution in an AB test for Uber Fleet?

Uber Fleet has low data for experimentation, and the AB test distribution is not normal. Describe the type of analysis you would run and how to measure which variant won.

How to Prepare for a Software Engineer Interview at Doordash

You should plan to brush up on any technical skills and try as many practice interview questions and mock interviews as possible. A few tips for acing your Doordash software engineer interview include:

  • Study Dynamic Programming & Trees: DoorDash questions often revolve around these topics. Leetcode problems tagged with DoorDash can give you a good idea of what to expect.
  • System Design Practice: Be prepared to discuss and design complex systems. Reviewing system design problems and practicing whiteboarding can be particularly helpful.
  • Behavioral Interview Readiness: Reflect on your accomplishments and be ready to discuss how you’ve handled professional challenges. Understanding DoorDash’s core values and mission will help you align your answers appropriately.

FAQs

What is the average salary for a Software Engineer Role at DoorDash?

$186,461

Average Base Salary

$274,117

Average Total Compensation

Min: $135K
Max: $225K
Base Salary
Median: $186K
Mean (Average): $186K
Data points: 397
Min: $25K
Max: $512K
Total Compensation
Median: $285K
Mean (Average): $274K
Data points: 165

View the full Software Engineer at Doordash salary guide

What is the work culture like at DoorDash?

DoorDash emphasizes a fast-paced, innovative, and inclusive work culture. The company values diversity and collaboration, encouraging employees to bring fresh perspectives and solve complex challenges together.

How does DoorDash support career growth for Software Engineers?

DoorDash offers various opportunities for professional development including mentorship, cross-functional collaborations, and challenging projects that impact millions of users. The company also provides comprehensive benefits and equity grants to support employees’ well-being and growth.

Conclusion

To succeed in DoorDash software engineer interview questions, you’ll need not only a strong foundation in data structures and algorithms but also the expertise to apply them to real-world problems.

You can check out our main DoorDash interview guide, where we not only cover topics in more general terms but also dive deep into other roles that we cover, such as data analyst, engineer, scientist, business analyst, and product analyst. Take a look at these to understand how the many roles work together to power DoorDash’s success.

Good luck with your interview!