Katkat

practice a little every day, paws crossed ♡

System Design Interview Questions

Practice 9403 coding, system design and machine learning questions from 546 companies, sorted by role, topic and interview round. Every question has step-by-step hints, a code runner that supports 8 languages and an AI mentor; members also get the full solution walkthrough.

9403
Questions
546
Companies
11
Topics
8
Languages

Showing 151–180 of 517 results

  • DatabricksHardSoftware Engineer
    Design a Visa-like payment processing system

    This problem tests your ability to design a high-throughput, fault-tolerant transaction processing system that guarantees data integrity across distributed services.

    System DesignTechnical ScreenDistributed SystemsConsistencyPayments
  • DatabricksMediumSoftware Engineer
    Design a generic key-value store

    This question evaluates a software engineer's ability to design a clean, type-safe API for a generic key-value store, covering data modeling, interface design, and extensibility. It tests practical software design skills including generics, error handling, concurrency, and the ability to evolve an in-memory prototype into a persistent implementation without breaking callers.

    System DesignTechnical Screen
  • DatabricksHardSoftware Engineer
    Design a single-node persistent in-memory cache

    This question evaluates a candidate's skills in single-node cache design, including in-memory key/value storage, eviction policy management (e.g., LRU), durability considerations, concurrency control, and techniques for reducing contention such as sharding or striping.

    System DesignTechnical Screen
  • DatabricksMediumSoftware Engineer
    Design a stock order manager

    Design an equity Order Management System (OMS) that manages order lifecycles, ensures idempotent broker interactions, and guarantees state reconciliation under distributed failures.

    System DesignTechnical Screensystem-designdistributed-systemsfintech
  • DatabricksMediumSoftware Engineer
    Design an online bookstore: DB insert succeeds but SQS publish fails, and duplicate messages

    System design question about an online bookstore whose order service inserts orders into a database and then publishes messages to Amazon SQS. Probes what should happen when the insert succeeds but the publish fails, how to keep the database and queue consistent across crashes, and how consumers avoid duplicate processing under at-least-once delivery.

    System DesignTechnical Screen
  • DatabricksHardSoftware Engineer
    Identify and handle race conditions

    This question evaluates understanding of concurrency, race conditions, synchronization mechanisms, and performance trade-offs in designing thread-safe in-memory data structures like key-value stores and hit counters.

    System DesignTechnical Screen
  • DatadogHardSoftware Engineer
    Design log-query stream processor

    Design log-query stream processor evaluates requirements, scale assumptions, API/data design, architecture, trade-offs, failure modes, and rollout in a realistic interview setting. A strong answer states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    System DesignTechnical Screen
  • DecagonHardSoftware Engineer
    Design a Durable Delayed Task Scheduler

    Design a distributed, durable task scheduler capable of scheduling millions of tasks to execute at exact future timestamps with high precision, at-least-once delivery, and automatic fault recovery.

    System DesignTechnical Screensystem-designdistributed-systemstask-scheduler
  • DecagonMediumSoftware Engineer
    Design an AI Gateway

    Design a high-throughput, multi-tenant AI Gateway that provides a unified API, intelligent routing, token-aware rate limiting, and observability across multiple upstream LLM providers.

    System DesignTechnical ScreenAPI GatewayLLM InfrastructureRate Limiting
  • DockerMediumSoftware Engineer
    Design a container image registry

    This problem tests your ability to design a distributed, content-addressable storage system that handles large binary blobs and metadata while optimizing for read/write performance and storage efficiency.

    System DesignTechnical ScreenDistributed SystemsStorageScalability
  • DoorDashMediumSoftware Engineer
    Debug round-robin request router

    This interview question evaluates requirements, scale assumptions, API/data design, architecture, trade-offs, failure modes, and rollout in a realistic interview setting. A strong answer for Debug round-robin request router states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    System DesignTechnical Screen
  • DoorDashHardSoftware Engineer
    Deep-dive a project architecture

    An open-ended DoorDash software-engineer system-design screen: pick a real project and deep-dive its architecture end to end. Candidates draw the diagram, state invariants, walk read/write paths, justify storage and trade-offs, capacity-plan, cover reliability/security/observability with SLOs, recount a real incident, and propose a quantified 10x-traffic plan. Includes a full worked example built around a real-time delivery dispatch and live order-tracking service.

    System DesignTechnical Screen
  • DoorDashMediumSoftware Engineer
    Design API that aggregates three downstream APIs

    This question evaluates a candidate's ability to design an API aggregator, covering skills in service orchestration, fault tolerance, latency and SLO management, error handling, and observability for distributed HTTP/JSON services.

    System DesignTechnical Screen
  • DoorDashHardSoftware Engineer
    Design Real-Time Driver Pay Aggregation

    This question evaluates competence in designing scalable, fault-tolerant streaming systems and implementing correct time-windowed aggregation logic, testing skills in distributed systems, stream processing, and data correctness; it belongs to the system design domain and streaming/real-time data engineering and spans both conceptual architectural thinking and practical application-level concerns. It is commonly asked to probe reasoning about correctness under at-least-once delivery and messy inputs (out-of-order, duplicate, late, or malformed events), operational resilience, and trade-offs between throughput, latency, and auditability in production-scale pipelines.

    System DesignTechnical Screen
  • DoorDashMediumSoftware Engineer
    Design a Customer Review Page

    This question tests the ability to design a scalable review system capable of handling high-write volume, media storage, and efficient retrieval with pagination.

    System DesignTechnical ScreenAPIDatabaseScalability
  • DoorDashHardSoftware Engineer
    Design a notification system

    This question evaluates a candidate's competency in designing scalable, reliable multi-channel notification platforms, covering distributed systems, multitenancy, API and storage schema design, queuing and retry strategies, rate limiting, observability, localization, A/B testing, and compliance considerations like GDPR.

    System DesignTechnical Screen
  • DoorDashMediumSoftware Engineer
    Design a resilient bootstrap API

    This question evaluates skills in resilient API aggregation, fault-tolerant microservice orchestration, and reliability engineering, focusing on defining API contract semantics and handling partial failures at the architectural/system-design level (service-to-service abstraction); category/domain: System Design.

    System DesignTechnical Screen
  • DoorDashHardSoftware Engineer
    Design a resilient dasher payment system

    A DoorDash software-engineer system-design interview question: design a resilient Dasher payment system that computes payouts from order lifecycle events (accept/fulfill/cancel). It spans event-driven ingestion, idempotency and exactly-once-vs-at-least-once semantics, data modeling for high write throughput and per-dasher pay-period queries, timezone/DST handling, detection and remediation of missing or out-of-order data, batch-vs-streaming reconciliation, reliability, and consistency trade-offs.

    System DesignTechnical Screen
  • DoorDashHardSoftware Engineer
    Design a scalable Instagram-like platform

    Design a scalable Instagram-like platform evaluates requirements, scale assumptions, API/data design, architecture, trade-offs, failure modes, and rollout in a realistic interview setting. A strong answer states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    System DesignTechnical Screen
  • DoorDashHardSoftware Engineer
    Design a service aggregator with robust error handling

    Design a service aggregator with robust error handling evaluates requirements, scale assumptions, API/data design, architecture, trade-offs, failure modes, and rollout in a realistic interview setting. A strong answer states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    System DesignTechnical Screen
  • DoorDashMediumSoftware Engineer
    Design an Alert Notification Service for Downstream Consumers

    Design a reliable, scalable alert and event notification delivery platform that decouples upstream producers from heterogeneous downstream consumers with independent fan-out, isolation, retries, and dead-letter handling.

    System DesignTechnical ScreenDistributed SystemsMessage QueuesEvent-Driven
  • DoorDashMediumSoftware Engineer
    Design consistent hashing with a sorted map

    This interview question evaluates requirements, scale assumptions, API/data design, architecture, trade-offs, failure modes, and rollout in a realistic interview setting. A strong answer for Design consistent hashing with a sorted map states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    System DesignTechnical Screen
  • DoorDashHardSoftware Engineer
    Design limited-time donation platform

    This interview question evaluates requirements, scale assumptions, API/data design, architecture, trade-offs, failure modes, and rollout in a realistic interview setting. A strong answer for Design limited-time donation platform states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    System DesignTechnical Screen
  • DoorDashHardSoftware Engineer
    Design notification and project architecture

    This interview question evaluates requirements, scale assumptions, API/data design, architecture, trade-offs, failure modes, and rollout in a realistic interview setting. A strong answer for Design notification and project architecture states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    System DesignTechnical Screen
  • DoorDashMediumMachine Learning Engineer
    Design personalized restaurant search and recommendations

    This question tests the ability to design an end-to-end personalized restaurant recommendation system, covering feature engineering, retrieval-ranking architecture, and infrastructure trade-offs.

    System DesignTechnical ScreenRecommendation SystemsRankingSearch
  • DoorDashMediumSoftware Engineer
    Handling Duplicate Upstream Order Records in Dasher Pay Calculation

    Explain how a Dasher pay calculation driven by upstream order records stays correct when those records contain duplicates. Tests deciding when two records describe the same fact, making processing safe against replayed records, handling conflicting and late data or corrections after payout, and preventing double payouts.

    System DesignTechnical Screen
  • DoorDashMediumSoftware Engineer
    Paying Dashers Reliably When the Payment Service Is Unavailable

    A system design follow-up about paying delivery drivers when the downstream payment service is unavailable. It tests reasoning about timeouts with unknown outcomes, durable records of amounts owed, retries that must never double-pay, recovery after long outages, reconciliation, and what drivers and operators see while payouts are delayed.

    System DesignTechnical Screen
  • DoorDashMediumSoftware Engineer
    Protect SLA and Choose Storage

    This question evaluates system design competencies in service reliability and storage architecture, focusing on SLA protection during upstream latency spikes and trade-offs in choosing in-memory caches (e.g., Redis), relational databases, or alternative storage for order and payment state.

    System DesignTechnical Screen
  • DoorDashHardSoftware Engineer
    Scale the cache to a distributed system

    This question evaluates a candidate's ability to design and scale a distributed caching system, testing competencies in sharding and consistent hashing, replication and consistency models, request routing, failure detection, cache invalidation, capacity planning, and operational trade-offs for high-throughput, low-latency workloads.

    System DesignTechnical Screen
  • DropboxMediumSoftware Engineer
    Scale a file-crawling API using async jobs

    This question tests the ability to design an asynchronous distributed system for crawling large file structures, focusing on job orchestration, state management, and scalability under high-latency operations.

    System DesignTechnical ScreenDistributed SystemsAsynchronous ProcessingScalability