Doordash Codecraft and DS & Algo Round Interview Questions Asked in 2026
DoorDash

Doordash Codecraft and DS & Algo Round Interview Questions Asked in 2026

These questions have been taken from Doordash interview experiences shared by candidates in blogs/forums etc. Use this list for final preparation of your DoorDash interviews.

Codecraft round is more of real world api style question. It is similar to a low level design question.

Even for frontend and MLE roles, there will be DSA rounds.

Good thing is that questions are repeated frequently. Their question bank is not that large. This is true for all rounds including codecraft, ds & algo or debugging round.

Doordash hires software engineer for E3, E4, E5 roles and so on. SDE 2 role is called E4.

The rounds are Phone Screen (DSA), Codecraft, Debugging, System Design, Hiring Manager

hiring manager round is mosly behavioral questions like:

Questions like walls and nearest gate for empty rooms, restaurant search suggestions have been asked frequently during phone screen round.

Debugging Dasher Assignment Service

There is also a separate debugging round which goes on something like below (No AI allowed for this round):

You have a single main.py file (or equivalent in your chosen programming language) that contains some business logic for a mock Dasher Assignment Service. This service would be used to assign dashers to deliveries.

You need to identify the logic bugs, bad design/coding practices and improve the codebase. Prioritize fixing logic bugs

Tips for Debugging Rounds:

Below are questions which you can practice on leetcode (free ones):

Below are other frequently asked questions including follow ups.

1

Codecraft: Design Dasher Payout Service

Design and implement a Dasher payout service as part of a new Payments Service in a micro-service architecture. The service must expose a payout API that calculates how much a Dasher should be paid for a given day.

https://codezym.com/question/97-design-dasher-payout-service
2

Codecraft: Design Workflow Automation Engine for Self Help Menu

Design and implement a workflow automation engine for DoorDash-style order support automation. The system stores users, restaurants, and orders in memory, then reacts to order status updates with deterministic actions and logs.

In Part 1, implement the core workflow behavior: an order starts as OPEN, informational updates keep it open, ORDER_DELIVERED completes it, DELIVERY_CANCELLED cancels it, and closed orders should ignore later non-refund updates.

In Part 2, extend the same system so that different issues produce different compensation amounts. For example, late delivery may cause no refund, a 50% refund, or a 100% refund depending on how late it was, and a customer cancellation before preparation starts should return 95%.

The goal is to model clean order state transitions and return easy-to-test execution logs.

https://codezym.com/question/98-design-workflow-automation-engine
5

Dasher Payout Logic - Simple

As part of migrating away from a monolith to a micro-service architecture your team has been tasked with building out a new Payments Service. Your project is to build out the Dasher payout logic. As part of your work you will get the relevant data in your constructor.

The service should support calculating payout for a Dasher for a given day from the sequence of delivery activities returned by the upstream dependency.

https://codezym.com/question/103-dasher-payout-logic
7

Find Longest Sequence of Pickup Jobs for Dashers

You are given the pickup job lists for two dashers who want to dash together in one car. Each list is an ordered list of merchant names. The dashers must respect the original left-to-right order of pickups in their own lists, but they are allowed to skip some pickup jobs.

Your task is to find the longest sequence of pickups that both dashers can complete together while preserving order in both lists.

https://codezym.com/question/99-find-longest-sequence-pickup-jobs-dashers
8

Find Closest DashMart Distance and DashMart Serving Maximum Customers

A DashMart is a warehouse run by DoorDash that houses items found in convenience stores, grocery stores, and restaurants. You are given a city plan with open roads, blocked roads, DashMarts, and optionally customers. City planners want you to identify how far a location is from its closest DashMart. You can only travel in four directions: up, down, left, and right. Locations are given in [row, col] format.

In the follow-up version, the city plan may also contain customers. Each customer is assigned to the closest reachable DashMart. You need to find which DashMart serves the maximum number of customers.

https://codezym.com/question/100-find-closest-dashmart-distance
9

Maximum Calories within Budget

You are ordering food from DoorDash and selecting items from a menu. You have a fixed budget, and your goal is to get the maximum total calories that can be bought without going over that budget.

You are given:
A list of item prices in dollars.
A list of calorie values for the same items in the same order.
A budget in dollars.
Each menu item may be purchased more than once. You may choose any combination of items as long as the total price does not exceed the budget.

Return the greatest total calories that can be purchased within the budget. If no item can be purchased, return 0.

https://codezym.com/question/101-maximum-calories-within-budget
10

Aggregate Gift Card Data

Design a system to manage payments using gift cards.
The system should support adding users with gift cards, making payments using one or more gift cards, and returning aggregated gift card data for a user.
A user can use multiple gift cards in a single payment.

https://codezym.com/question/102-aggregate-gift-card-data
13

Chef Order Preparation List

A chef receives all his orders for the day as a list of unique order ids. He creates a new list by repeatedly removing the smallest eligible order from the current list and appending it to the new list. Return the order in which the chef creates the new list.

https://codezym.com/question/104-chef-order-preparation-list
15

Longest Path and Increasing Paths in a Grid

You are given a row x column integer grid. Find the length of the longest strictly increasing path in the grid.

From any cell, you may move only to its immediate left, right, up, or down neighbor. Diagonal movement is not allowed, and you cannot go outside the grid.

In addition to the maximum length, also return one longest strictly increasing path, and return all strictly increasing paths.

https://codezym.com/question/106-longest-increasing-path-grid
16

DoorDash Restaurant Search Engine

You are building a restaurant search engine for DoorDash using a trie (prefix tree).

You are given an initial list of restaurant names such as ["panda express", "panera bread"]. Each restaurant name must be stored so that you can:
insert a new restaurant name,
check whether an exact restaurant name exists,
check whether any stored restaurant name starts with a given prefix,
return up to k restaurant names that start with a given prefix.
The search engine stores only unique restaurant names. If the same restaurant name appears multiple times in the constructor input or is inserted multiple times later, it is still stored only once.

If fewer than k restaurant names match the prefix, return all matching names. If no restaurant name matches the prefix, return an empty list.

Returned restaurant names must be sorted in lexicographically ascending order.

https://codezym.com/question/107-doordash-restaurant-search-engine