← DoorDash Interview Insights

DoorDash·Software Engineer·Onsite - System Design / Architecture·Senior

Senior
Jun 2026

Summary

System design round at DoorDash for a software engineer role. The prompt was a review and rewards platform, which sounds straightforward until you start pulling on the threads around fraud detection and eventual consistency.

Questions Asked (1)

Q1

Design a system that allows users to submit, edit, and delete reviews for products or restaurants, and rewards qualifying reviewers through a points or payout ledger.

System DesignData ModelingTechnical Trade-offs
Author's notes

This is a bigger prompt than it looks.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by clarifying functional and non-functional requirements, then design the core data model and APIs for review CRUD operations. Next, design the rewards system with a points ledger, ensuring idempotency and fraud prevention. Finally, discuss scalability, consistency, and trade-offs.

Pro tip: Emphasize idempotency and fraud prevention in the rewards system, as these are critical for financial integrity and often overlooked. Also, discuss how you would handle eventual consistency between review submission and reward crediting.

1. Clarify Requirements

Ask questions to understand scale, read/write patterns, consistency needs, and reward rules (e.g., what qualifies as a review, payout thresholds).

2. Design Data Model and APIs

Define schemas for reviews, users, products/restaurants, and the points ledger. Specify CRUD APIs with authentication and authorization.

3. Design Rewards System

Outline how points are earned, stored, and redeemed. Include idempotent operations, fraud detection, and ledger consistency.

4. Address Scalability and Consistency

Discuss partitioning, caching, read replicas, and trade-offs between consistency and availability for reviews and rewards.

5. Discuss Trade-offs and Extensions

Summarize key decisions (e.g., SQL vs NoSQL, sync vs async reward processing) and potential improvements like moderation or analytics.

Key Points to Mention

  • Idempotency in reward crediting to prevent duplicate points
  • Fraud prevention: rate limiting, verification, anomaly detection
  • Data model: reviews table, users, products, and a double-entry ledger for points
  • API design: RESTful endpoints with proper auth and validation
  • Scalability: sharding by user or product, caching hot reviews
  • Consistency: eventual consistency for rewards, strong consistency for ledger

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.