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 31–60 of 1311 results

  • AirwallexMediumBackend Engineer
    Design a Hotel Booking Platform Down to the SQL Tables and Booking Transaction

    Design a hotel booking platform where travelers search by destination and dates and book rooms, down to the SQL tables and the booking transaction. Tests schema design with real constraints, preventing double booking under concurrency, payment holds and expiry, and a search path that scales separately.

    System DesignOther
  • AirwallexMediumSoftware Engineer
    Design a Large-File Analysis Report System

    Tests system design skills in architecting a secure, multi-tenant pipeline for large file ingestion and asynchronous batch analytics with resumable uploads and idempotent job processing.

    System DesignTechnical ScreenObject StorageDistributed SystemsIdempotency
  • AirwallexMediumFrontend Engineer
    Design a Reusable React Autocomplete Input: API, Portals, Debounce and Caching

    Design a reusable autocomplete search input for a React application on top of an existing search API. The discussion covers the API contract with pagination and limits, the component and portal architecture, throttling versus debouncing, client-side result caching strategies, and the public props and exports.

    System DesignTechnical Screen
  • Akuna CapitalHardSoftware Engineer
    Design an order-matching engine

    This question evaluates a candidate's ability to design a high-throughput, low-latency in-memory limit order-matching engine, testing competencies in data structure selection, algorithmic complexity, deterministic concurrency, API design, and handling domain-specific constraints such as self-trade prevention.

    System DesignTechnical Screen
  • Akuna CapitalEasySoftware Engineer
    Design user communication functions

    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 user communication functions states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    System DesignOnline Assessment
  • Akuna CapitalHardSoftware Engineer
    Fix and harden an object pool

    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 Fix and harden an object pool states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    System DesignOnline Assessment
  • Akuna CapitalMediumSoftware Engineer
    Implement a two-user communications handler

    This question evaluates skills in stateful resource management, API and abstraction design, custom exception handling, and input validation for enforcing a single-active connection between two users.

    System DesignOnline Assessment
  • AlibabaMediumSoftware Engineer
    Idempotent Kafka Consumer: Duplicate Writes, Offset Commits and a Second Database

    A backend design discussion on making a concurrent Kafka consumer idempotent: how to stop duplicate effects when the same message is processed twice, whether a duplicate write should throw or return the existing data, how offsets keep advancing, and how to keep a second database consistent when publishing fails.

    System DesignTechnical Screen
  • AltruistHardSoftware Engineer
    Design scalable rate limiter with token bucket

    This question evaluates understanding of rate-limiting algorithms and scalability concepts, specifically comparing sliding-window and token-bucket approaches with attention to lazy refill, per-client state modeling, memory efficiency, concurrency, and extendability to distributed systems.

    System DesignTechnical Screen
  • AmazonMediumSoftware Engineer
    Accept Notification Bursts With Low Latency

    Design a high-throughput, low-latency notification ingestion and delivery service capable of absorbing sudden 10x traffic spikes while maintaining strict delivery SLOs and downstream rate limits.

    System DesignTechnical ScreenDistributed SystemsMicroservicesMessage Queues
  • AmazonMediumSoftware Engineer
    Architect an AI Chatbot for Enterprise Users

    This question tests your ability to design a scalable, enterprise-grade AI chatbot system that handles high throughput, ensures data privacy, and integrates with existing business data stores.

    System DesignTechnical ScreenRAGScalabilityAccess Control
  • AmazonMediumSoftware Engineer
    Design Faceted Product Search at Large Scale

    Design a scalable e-commerce product search engine supporting full-text query matching, multi-attribute filtering, dynamic facet aggregations, and near real-time updates for volatile data like price and inventory.

    System DesignOnsiteSearchDistributed SystemsInformation Retrieval
  • AmazonMediumSoftware Engineer
    Design Human Avoidance for Warehouse Robots

    This problem evaluates your ability to design a real-time sensor-to-actuator pipeline for an autonomous robot, focusing on latency, sensor fusion, and safety-critical path adjustments.

    System DesignTechnical ScreenRoboticsSensor FusionReal-time Systems
  • AmazonMediumSoftware Engineer
    Design Music Search, Playlists, and Playback Controls

    This problem tests the ability to design a scalable music streaming architecture, focusing on data modeling for search indices, conflict resolution in distributed state management, and robust API design for real-time playback control.

    System DesignOnsiteDistributed SystemsAPIsConcurrency
  • AmazonMediumSoftware Engineer
    Design Sent, Delivered and Read Receipts for a Mobile Messaging App

    A system design question about the sent, delivered and read indicators in a large mobile messaging app, for one-to-one and group chats. It tests how status updates travel from the recipient's device back to the sender, offline and multi-device behaviour, keeping status monotonic, and controlling the volume of status events.

    System DesignOther
  • AmazonHardSoftware Engineer
    Design Thread-Safe Tagging and Bookstore Systems

    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 Thread-Safe Tagging and Bookstore Systems states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    System DesignOnsite
  • AmazonHardSoftware Engineer
    Design VPC, IP plan, management, storage, SSO

    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 VPC, IP plan, management, storage, SSO states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    System DesignTechnical Screen
  • AmazonHardSoftware Engineer
    Design a Core Dump Collection and Analysis System

    This problem tests the ability to design a distributed, scalable ingestion and analysis pipeline for massive binary crash files while maintaining system performance and data availability.

    System DesignOnsiteDistributed SystemsScalabilityStorage
  • AmazonMediumSoftware Engineer
    Design a Distributed Cron Job Scheduler

    Design a fault-tolerant, horizontally scalable distributed cron scheduler capable of triggering millions of recurring tasks with at-least-once delivery semantics and deterministic run coordination.

    System DesignOnsiteDistributed SystemsSchedulingFault Tolerance
  • AmazonMediumSoftware Engineer
    Design a Distributed In-Memory Cache: Partitioning, Failover and Invalidation

    Design a distributed in-memory cache shared by many services in front of a database, covering single-node eviction and expiry, key partitioning and rebalancing, replication and failover, and keeping cached values consistent after writes. It also probes protection against miss stampedes and hot keys.

    System DesignOther
  • AmazonHardSoftware Engineer
    Design a Distributed Job Scheduler with Run Logs and Exactly-Once Execution

    Design a highly available distributed job scheduler that handles one-time and recurring jobs, collects execution logs, and rigorously addresses the practical boundaries of exactly-once execution.

    System DesignOnsitesystem-designdistributed-systemsconcurrency
  • AmazonHardSoftware Engineer
    Design a High-Availability Load Balancer

    This problem tests the ability to architect a highly available, scalable Layer 7 load balancer, focusing on fault tolerance, traffic distribution strategies, and system reliability.

    System DesignOnsiteDistributed SystemsLoad BalancingHigh Availability
  • AmazonMediumSoftware Engineer
    Design a Kafka-Based File Watcher for Millions of Files

    Design a Kafka file watcher for millions of files with source sharding, durable events, per-file ordering, missed-event reconciliation, and version-aware reads.

    System DesignTechnical Screen
  • AmazonHardSoftware Engineer
    Design a Library Management System (API and Schema)

    This problem evaluates your ability to design a schema and API for a transactional library system, focusing on handling concurrent checkouts and maintaining data integrity in a read-heavy environment.

    System DesignTechnical ScreenDatabase ModelingConcurrencyREST API
  • AmazonMediumSoftware Engineer
    Design a Low-Latency Ad Serving Backend With Targeting, Budgets and Tracking

    An Amazon system design question: design an ad server that selects and returns an ad for each page request within a tight latency budget. It covers targeting and candidate retrieval, ranking and auctions, budget enforcement and pacing, impression and click tracking, and failure handling.

    System DesignOnsite
  • AmazonMediumSoftware Engineer
    Design a Multi-Branch Library Lending System

    This problem tests the ability to design a distributed inventory and reservation system, focusing on concurrency control, transaction integrity across branches, and fault-tolerant service communication.

    System DesignTechnical ScreenConcurrencyDistributed SystemsInventory
  • AmazonMediumSoftware Engineer
    Design a Multi-Provider Financial Dashboard

    Design a financial dashboard that reconciles balances, securities, cryptocurrency, prices, and derived metrics from unreliable external providers. Explain freshness, historical reproducibility, permissions, corrections, outages, and how users can recognize partial or inconsistent data.

    System DesignOnsite
  • AmazonMediumSoftware Engineer
    Design a Perishable-Goods Inventory and Location Tracking System

    This question tests the ability to design a distributed inventory system that handles high-frequency location updates and strict FIFO/expiry logic for perishable goods.

    System DesignTechnical ScreenGeo-spatialScalabilityDatabase Modeling
  • AmazonMediumSoftware Engineer
    Design a Product Image Upload Pipeline for Sellers

    Design an asynchronous, distributed image processing and delivery pipeline for an e-commerce seller portal, focusing on direct-to-cloud uploads, state management, moderation workflows, and resilient global caching.

    System DesignOnsitesystem-designdistributed-systemsevent-driven
  • AmazonMediumSoftware Engineer
    Design a Ride-Hailing Matching System

    This question evaluates competence in large-scale real-time system design, covering high-throughput ingestion and burst absorption, stream deduplication, geospatial indexing, and low-latency matching and caching for ride-hail workflows.

    System DesignOnsite