•SYSTEM DESIGN
Microsoft System Design Questions
28 distinct system design problems asked at Microsoft from September 2025 to September 2026, merged from 33 candidate reports. Each one links to a full solution.
Sources: PracHub, LeetCode discussions. Sorted by how often the problem was reported at Microsoft.
Design a URL Shortener (High-Level and Low-Level Design)
Design a URL shortening service like TinyURL or bit.ly. Users submit a long URL and get a short code (optionally a custom alias and expiry); visiting the short URL redirects to the original. Assume hundreds of millions of new…
Also reported as: Design a URL Shortener · Design a URL Shortening Service · Design a high-scale URL shortener
Design an Event Booking System
Design an online ticketing system like Ticketmaster. Users browse and search events, view the seat map, select specific seats and hold them for about 5 minutes while completing payment, then receive tickets. Popular events cause…
Also reported as: Design a Ticketmaster-like ticketing system · Design an online ticket booking system
Design a Distributed Key-Value Store
Design a horizontally scalable distributed key-value store like DynamoDB or Cassandra, or scale a single-node store to a stated workload (e.g., 50M keys, 1M requests/sec, 50/50 reads and writes). Support get/put/delete with…
Also reported as: Design a replicated key-value store with quorums
Design a High-Concurrency Incident Ticket Correlation Platform
Design a high-concurrency incident ticket platform where each new ticket is linked to the affected user, correlated with that user's other relevant tickets, mapped to the responsible system, and enriched with that system's…
Design an Ad Impression Reconciliation and Aggregation Service
Design an ad click and impression aggregation system. Ingest a high-volume stream of ad events ({ad_id, campaign_id, user_id, event_type, timestamp}, billions per day) and provide aggregated metrics (clicks, impressions, CTR per…
Design a Metrics Ingestion Pipeline
Design an internal metrics monitoring platform like Datadog or Prometheus. Agents on hosts and services emit metrics (counters, gauges, histograms with tags); the system ingests millions of data points per second, stores them as…
Design a To-Do List Service (CRUD, Auth, Rate Limiting, Caching & API Versioning)
Design a to-do list service: users create, read, update, delete, complete and reorder tasks in lists. The basic version focuses on REST API design, authentication, rate limiting, caching and API versioning. The real-time variant…
Externally Sort a 500 GB CSV by One Column with 16 GB of RAM
Sort a 500 GB CSV file by one column on a machine with 16 GB of RAM. Design an external merge sort: split the file into sorted runs that fit in memory, write them to disk, then do a k-way merge with a min-heap and buffered I/O.…
Design A Low-Latency Product Price Update API
Design a product catalog service for a large e-commerce marketplace that sustains heavy merchant writes (including bulk edits of millions of products and price updates) and very high user reads with low latency. Changes must…
Design A Scalable Web Crawler
Design a distributed web crawler that starts from seed URLs and crawls about 10 billion pages (or all images reachable from given root URLs), with periodic recrawls. It must avoid fetching the same URL twice, obey robots.txt and…
Design User Re-engagement Notifications
Design a multi-channel notification service (push, email, SMS, in-app) that other services call to notify users. It must accept sudden bursts of millions of notifications with low acknowledgement latency, persist them durably,…
Design a typeahead search service
Design a search autocomplete (typeahead) service: as a user types a prefix, return the top ~10 suggestions in under 100 ms per keystroke. Suggestions are ranked by popularity and freshness (trending queries), possibly…
Design a Secure Copilot API
Design a secure, multi-tenant API for an enterprise AI copilot. Authenticated users from many independent organizations send prompts, get model responses, and may invoke organization-specific tools and data connectors.…
Design a ChatGPT-like serving system
Design a ChatGPT-style conversational AI product. Users send a message and receive a streamed response from a model; conversations persist and can be resumed on any device; the service must stay highly available despite limited,…
Design chat and online chess
Design a real-time chat system like WhatsApp or Slack supporting one-to-one and group conversations (and, for Slack variants, workspaces, channels and threaded replies). Users send and receive messages with low latency, see…
Design chat and online chess
Design an online chess service like chess.com. Users are matched with opponents of similar skill (rated and unrated), play real-time games with low-latency moves, and see authoritative server-managed clocks. Games end by…
Design a simple API rate limiter
Design a distributed rate limiter that protects APIs by limiting requests (or consumed units such as LLM billing tokens or storage quota) per user, API key, tenant, or IP. It must support configurable rules (e.g., 100…
Design a job scheduler ETL pipeline system
Design a distributed job scheduler that runs user-defined jobs at a specified time (one-time) or on a recurring cron schedule, at a scale of millions of jobs per day. Requirements: jobs fire close to their scheduled time, each…
Design a high-level logging system
Design a centralized logging platform (like ELK, Splunk or Datadog Logs) for a company with thousands of services and hosts. Agents collect logs from applications and infrastructure, ship them reliably under backpressure, and the…
Design read-heavy org chart subordinate counts
Given manager-to-direct-report relationships for an organization (a tree), build a service that answers, for any employee, the total number of subordinates (direct and indirect) with a read-heavy workload, while supporting…
Design a replicated cloud storage service
Design a file (or photo) storage and sync service like Dropbox, Google Drive or iCloud Photos. Users upload files from one device and see them on all devices; they can share files and folders, keep versions, and work offline with…
Design a live-stream comments system
Design a live comments system for live video (like Facebook Live or TikTok Live), or a synchronized comment overlay pinned to a video's timeline. Viewers post comments and all viewers of the stream see new comments within about a…
Design REST APIs for JSON file storage
Design REST APIs and backend storage for a service that stores JSON documents/files: create, read, update (full and partial), delete and list documents, with metadata and folders. Discuss resource and URL design, metadata…
Design a resource change tracking database
Design a database/service that tracks changes to cloud resources (VMs, networks, IAM policies) over time: record every change as a versioned snapshot or diff, answer 'what did resource X look like at time T?' and 'what changed…
Design device telemetry pipeline for real-time and batch
Design a telemetry pipeline for a very large fleet of devices or sensors (e.g., millions of temperature sensors, GPUs, or IoT devices each reporting every few seconds). Devices may be offline and upload batched, late-arriving…
Design streaming error-log counting with moving average
Design a system that continuously computes the top K items from a very large event stream: for example the K most-viewed URLs, the K services with the most error logs in the last 5 minutes, the top 100 most active users in a…
Design a cloud console main page
Design the main landing page of a cloud provider console that users see right after logging in: it shows the user's resources, recent activity, service health, billing summary and recommendations aggregated from many backend…
Design local sports team recommendation system
Design a recommendation system from scratch, for example recommending posts, games, local sports teams or weekly deals to users. Cover candidate generation (collaborative filtering, content-based, social signals, location),…
Practice with a Mock Interview
Apply these questions in a live system design mock interview.
Start System Design Interview →