DoorDash interview rundown

DoorDash coding interviews

What the rounds look like, the kinds of problems people get, and what to study first.

From public guides and candidate reports · Reviewed November 2026 · Independent, not affiliated with DoorDash

What the rounds are like

StageWhat people usually describe
Phone screenOne LeetCode-style problem, about 60 minutes, often with a follow-up
Code CraftBuild a small working feature, like calling a few mocked services and combining the results
DebuggingFix and test code that's mostly written, like a round-robin load balancer
Older or some team loopsTwo LeetCode-style onsite rounds instead of Code Craft and Debugging

Ask your recruiter which format you're getting. Either way, interviewers look for clean code, tests, and how you go from a brute-force solution to a fast one.

What people have been asked

These come up in candidates' own write-ups of their interviews. They're mostly phone screen and LeetCode-style onsite problems. We wrote the example prompts ourselves, so the wording you get will be different.

Distances to a pickup point

On a grid with walls and open cells, find each cell's walking distance to the nearest pickup point. Candidates report versions with DashMarts on a city map and with Dashers.

Searching from every cell is slow. Start from the pickup points and spread out instead, which also makes lots of queries cheap.

How it might be asked

You're given a grid where -1 is a wall, 0 is the Dasher pickup gate, and a very large number is an empty room. Fill each room with its walking distance to the gate, moving up, down, left or right.

Key concepts to know

Try this Interview

Maximum path sum in a tree

Find the path through a binary tree with the biggest total, then the best path between two 'active' nodes.

A path can bend at any node, so each node has to return one thing and record another. The active-node follow-up changes what you can return.

How it might be asked

Given a binary tree of integers, return the largest sum of any path. Follow-up: each node has an active flag. Return the largest sum of a path that starts and ends at active nodes.

Key concepts to know

Try this Interview

Names that are almost the same

Find names that match after swapping two letters, then the names that need the fewest letter changes to become an anagram of the original.

Count letters with a hash map instead of comparing every pair of letters.

How it might be asked

You're given a name and a list of names. Return the names that become the original if you swap exactly two letters. Then, as a follow-up, return the names that need the fewest letter changes to become an anagram of it.

Key concepts to know

Try this Interview

Most pay for a Dasher's deliveries

A Dasher has a day of possible deliveries, each with a start, end and pay. Pick ones that don't overlap to earn the most.

Greedy picks don't work. Sort by time and, for each delivery, binary search for the last one that finishes before it starts.

How it might be asked

A Dasher has a list of deliveries for the day, each with a start time, end time and pay. They can only do one at a time. What's the most they can earn?

Key concepts to know

Try this Interview

The Code Craft and Debugging rounds

Code Craft is practical. You build something small that actually runs, like calling three mocked service APIs and returning one combined JSON response, or structuring and running a Dasher pay or reward calculation. Clean structure and working code matter more than a clever algorithm.

In Debugging you get code that's mostly written, often a round-robin router or load balancer. You find the bugs, fix them and add tests. Some candidates then got asked to improve it, for example with consistent hashing.

Practice reading code you didn't write, running it, and writing small tests as you go. Talk through what you're checking so the interviewer can follow.

How to approach a problem

  1. Say it back and ask questions. How big is the input? What are the edge cases? What should you return?
  2. Start with brute force. Say it out loud with its complexity so you've got something to beat.
  3. Figure out what it really is. Is this secretly a graph? Would sorting help? Do the same subproblems keep coming up?
  4. Write it and test it. Walk through an example, then try the weird cases.

Key concepts to know

Sources