Design a Driver Onboarding State Machine

Read the full interview experience this question came from →

Quick Overview

Design driver onboarding around guarded state transitions and explicit eligibility checks. Separate progress UI from identity, background, vehicle, document, and training evidence, with reliable asynchronous verification.

Design a Driver Onboarding State Machine

Company: DoorDash

Role: Software Engineer

Category: System Design

Difficulty: medium

Interview Round: Onsite

Design a driver onboarding system. It collects personal information and documents, verifies identity, performs background and driving-record checks, checks the vehicle, and provides training videos with a quiz. A driver may go online only after the required checks and training are complete. ### Constraints and Clarifying Questions An illustrative progress flow contains Not Started, Personal Info Submitted, Background Check Pending, Background Check Passed, Vehicle Inspection Pending, Training Pending, and Ready to Go Online. Explain how this user-facing sequence relates to the underlying identity, document, driving-record, vehicle, and training requirements. Clarify which steps may run in parallel, what failure or expiration means, and who can approve a check. Do not assume the illustrative sequence is a complete production policy. ### What a Strong Answer Covers An authoritative state model, guarded transitions, asynchronous verification, document handling, step UI, persistence, retries and auditability. Make eligibility enforcement explicit instead of relying on a completed-looking progress screen. ### Follow-up Questions - What happens when a provider sends duplicate or out-of-order check results? - How would an expired document affect a driver who was previously ready?

Overview: Design driver onboarding around guarded state transitions and explicit eligibility checks. Separate progress UI from identity, background, vehicle, document, and training evidence, with reliable asynchronous verification.

Read the full DoorDash Software Engineer interview experience this question came from

DoorDash logo
DoorDash
Oct 27, 2026
mediumSoftware EngineerOnsiteSystem Design
0
0

Design a driver onboarding system. It collects personal information and documents, verifies identity, performs background and driving-record checks, checks the vehicle, and provides training videos with a quiz. A driver may go online only after the required checks and training are complete.

Constraints and Clarifying Questions

An illustrative progress flow contains Not Started, Personal Info Submitted, Background Check Pending, Background Check Passed, Vehicle Inspection Pending, Training Pending, and Ready to Go Online. Explain how this user-facing sequence relates to the underlying identity, document, driving-record, vehicle, and training requirements. Clarify which steps may run in parallel, what failure or expiration means, and who can approve a check. Do not assume the illustrative sequence is a complete production policy.

What a Strong Answer Covers Guidance

An authoritative state model, guarded transitions, asynchronous verification, document handling, step UI, persistence, retries and auditability. Make eligibility enforcement explicit instead of relying on a completed-looking progress screen.

Follow-up Questions Guidance

  • What happens when a provider sends duplicate or out-of-order check results?
  • How would an expired document affect a driver who was previously ready?