System Design
167 articles to help you prepare for your next interview.
A practical system design interview guide covering common architecture patterns, example systems, API design, data modeling, caching, queues, and how to explain tradeoffs clearly.
Design a notification service that delivers 100M notifications/day across push, email, and SMS channels — delivery guarantees, rate limiting.
Design agentic AI workflows — agent orchestration, tool use patterns, memory management, and the system design questions emerging at Google, Anthropic, and OpenAI.
How Brex processes card authorizations in under 150ms, migrated from Ruby to Elixir for concurrency, and built a modern spend analytics platform.
How Stripe Atlas tackles the infrastructure challenge of forming companies in 50+ countries — and what it means for your Stripe engineering interview.
Inside Affirm's engineering — real-time payments infrastructure, fraud detection at scale, and what their interview loop really tests for fintech candidates.
AMD has undergone a remarkable architectural renaissance over the past eight years. The Zen microarchitecture family recaptured server market share from...
Anthropic occupies an unusual position in the AI industry: a safety-focused research lab that ships consumer and API products used by millions.
Jira processes 300M+ daily API requests. How Atlassian's engineering team built the infrastructure behind the world's most-used project management platform.
There is a reason engineers who pass the AWS interview loop describe it differently from every other Big Tech process. At most companies.
Chime is the largest neobank in the United States with over 20 million customers — more than many traditional banks. Unlike traditional banks that built...
Cloud architect interviews differ from SWE interviews: the correct answer is almost never "use X." Learn what interviewers expect.
Cohere occupies a distinct position in the LLM landscape. Unlike OpenAI, which built consumer products first and enterprise offerings second, Cohere was...
Coinbase processes billions of dollars in crypto transactions daily, serving over 100 million verified users across 100+ supported assets.
Jay Kreps, Neha Narkhede, and Jun Rao left LinkedIn in 2014 carrying a single conviction: the world's data infrastructure was fundamentally broken because.
System design interviews are the most open-ended part of the technical interview process — and the most frequently failed.
Datadog sits at a peculiar intersection of infrastructure: it must process more data than almost any system on Earth, in real time.
Discord runs one of the most technically demanding communication platforms on the internet. Over a billion messages are delivered daily.
Distributed systems interviews are where the ceiling gets raised. A mid-level engineer can talk about eventual consistency.
Duolingo has 500 million registered users, 40 million daily actives, and a product that somehow makes people feel guilty about a cartoon owl.
Elasticsearch sits at the center of some of the largest data workloads in enterprise engineering — powering full-text search for e-commerce platforms...
Epic Games sits at one of the most technically demanding intersections in software engineering: real-time 3D rendering.
When Figma launched in 2016, skeptics called it a toy — a design tool that ran in a browser instead of as a native application.
Figma is one of the most technically ambitious products ever shipped in a web browser. What looks like a design tool on the surface is actually a custom...
GitHub Actions is the dominant CI/CD platform in the industry, and yet most engineers who use it daily have only a surface-level understanding of how it...
Google DeepMind is the product of merging two of the most influential AI research organizations of the past decade.
Grafana Labs has quietly become one of the most technically ambitious companies in infrastructure software. What started as a dashboarding layer over...
HashiCorp occupies a rare position in the infrastructure world: every product they ship — Terraform, Vault, Consul, Nomad, Packer.
System design interviews are the great equalizer in senior engineering hiring. Candidates who can grind LeetCode for months still walk out of system.
HubSpot operates one of the largest CRM platforms in the world, serving over 200,000 customers ranging from two-person startups to Fortune 500.
Instacart operates at the intersection of real-time inventory, dynamic routing, demand prediction, and last-mile logistics.
Klarna processes over two million transactions per day across 400,000+ merchant integrations. Inside their engineering stack.
Kubernetes engineering roles — whether titled DevOps Engineer, Platform Engineer, or SRE.
Linear is a project management tool that doesn't feel like one. Inside the engineering decisions behind its speed and simplicity.
Every social network is a graph problem. But LinkedIn's graph is not just about who follows whom.
Miro's infinite canvas sounds like a simple idea — a whiteboard with no edges. In practice.
React Native interviews have matured. In 2024, hiring managers at companies with serious mobile apps are no longer satisfied with candidates who can build.
MongoDB powers some of the most demanding workloads on the planet — from financial transaction ledgers to real-time analytics pipelines serving billions.
Every minute, New Relic's platform ingests roughly 25 billion data points — metrics, traces, logs, and events.
Understanding NVIDIA's GPU architecture is not optional for engineers working on AI infrastructure, high-performance computing, or distributed training...
Identity — authentication and authorization — is one of the most consequential pieces of infrastructure a company can build or buy.
OpenAI went from a research lab to running one of the most heavily trafficked services on the internet inside of two years.
Quality assurance engineering is one of the most misunderstood disciplines in software. At poorly-run companies, QA is a checkbox before release.
Real-time collaborative applications are one of the most technically rich system design topics you will encounter at companies like Figma, Notion.
Reddit is one of the more technically interesting platforms to study precisely because its constraints are unusual.
Remote interviewing has become the default at most tech companies. The shift changes almost everything about the logistics.
Most enterprise software companies pick a lane. Workday owns HR. Okta owns identity. Jamf owns device management. Expensify owns expense reports.
Roblox has a problem that almost no other company faces. On any given day, 70 million users are not just playing games — they are playing millions of...
Scale AI sits at a peculiar inflection point in the AI stack: every major frontier model lab depends on Scale to turn raw human judgment into structured...
Snap's engineering surface area is deceptive. From the outside it looks like a messaging app. From the inside, it is a real-time computer vision platform.
Snowflake occupies a peculiar and enviable position in the data infrastructure landscape: it is simultaneously a database company, a cloud company.
Spotify's engineering problem is deceptively simple to state: play the right song to the right person at the right moment, 600 million times over.
Entry-level system design interviews reward completeness. You cover the requirements, sketch a load balancer, add a cache, shard the database.
System design interviews are notorious for being open-ended, vague, and terrifying. One minute you're talking about load balancers.
Twilio occupies a peculiar and powerful position in the technology landscape. It is simultaneously a telecommunications company.
Interviewing at Twitch is not like interviewing at a typical enterprise software company. Twitch processes over 9 million concurrent viewers during peak...
Twitter — now X — built one of the most demanding real-time distributed systems in consumer software.
When you open the Uber app and tap 'Request,' you trigger one of the most demanding real-time matching problems in consumer software.
Unity Technologies has quietly become one of the most consequential software platforms in existence.
Waymo occupies a unique position in the autonomous vehicle landscape: the company has logged over 20 million fully autonomous miles on public roads.
Zendesk processes hundreds of millions of support interactions every year across email, chat, voice, and social channels.
In March 2020, Zoom's infrastructure faced a challenge that had no precedent in the industry.
Design Airbnb's search and ranking system — query processing, listing retrieval, personalized ranking, geospatial filtering, and real-time pricing adjustments.
A practical guide to recommendation system design—collaborative filtering, content-based models, two-tower neural networks.
Advanced Databricks interview prep — Apache Spark internals, Delta Lake architecture, MLflow lifecycle, and data engineering challenges at petabyte scale.
Master the Databricks interview process. Deep dive into Apache Spark, Delta Lake, MLflow, and the lakehouse architecture that powers modern data platforms.
Master Datadog's technical interviews — observability platform architecture, metrics aggregation, distributed tracing, and infrastructure monitoring at scale.
A deep dive into the architecture of distributed file storage systems like HDFS, GFS, and S3—covering sharding, replication, consistency.
How to build a distributed task scheduler like Celery, Temporal, or AWS Step Functions—job queues, at-least-once execution, cron scheduling.
Design a production feature flag system — flag evaluation engine, targeting rules, gradual rollouts, kill switches, and consistency challenges at scale.
Design a CDN from scratch — edge node architecture, cache hierarchies, anycast routing, TLS termination, cache invalidation, and origin shield strategies.
How to design an RTB (real-time bidding) platform for programmatic advertising—auction mechanics, bid request/response flow, win notification.
System design breakdown of Instagram Stories — ephemeral media storage, real-time view counts, story ordering algorithm, and delivery at billion-user scale.
How DoorDash optimizes delivery — order assignment algorithms, route optimization, real-time ETA prediction, batch delivery, and the dispatch system at scale.
How Figma enables real-time multiplayer design—operational transforms vs CRDTs, delta synchronization, cursor broadcasting.
How GitHub's pull request and code review system works—diff generation, inline comments, review state machines, CI integration.
How to design Google Maps routing—road graph representation, Dijkstra vs A* vs CH algorithms, real-time traffic integration.
How LinkedIn's professional feed works—content scoring, professional graph traversal, viral coefficient controls.
Prepare for MongoDB's technical interviews with deep knowledge of document modeling, aggregation pipelines, replica sets.
A deep dive into Netflix's personalization architecture—homepage ranking, artwork personalization, recommendation algorithms.
Prepare for Okta's identity-focused interviews with deep knowledge of OAuth/OIDC, SAML, authentication protocols.
How Pinterest's visual search works—image embedding generation, approximate nearest neighbor search, multi-modal retrieval.
How to design backend infrastructure for real-time multiplayer games—covering game servers, state synchronization, lag compensation.
How Slack's real-time messaging works—WebSocket multiplexing, message delivery guarantees, search indexing.
Crack the Snowflake interview with deep knowledge of their multi-cluster shared data architecture, separation of compute and storage.
How Spotify builds Discover Weekly, Spotify Wrapped, and its recommendation engine—audio analysis, collaborative filtering, NLP on playlists.
A deep dive into Stripe's payment processing system—idempotency, ledger design, charge flows, fraud detection.
Master the communication side of system design interviews. Learn frameworks for organizing your thoughts, handling clarifying questions.
How TikTok's For You Page algorithm works—video embeddings, engagement signals, exploration vs exploitation.
How to design Twitter's trending topics feature—real-time tweet counting, sliding window aggregation, anomaly detection.
How to design Uber's surge pricing system—real-time supply-demand matching, geographic heatmaps, price multiplier calculation.
How WhatsApp's end-to-end encryption works—the Signal Protocol, key exchange, multi-device support, group messaging encryption.
How YouTube processes 500 hours of video uploaded per minute—chunked uploads, parallel transcoding, adaptive bitrate streaming.
How to design Zoom—WebRTC vs SFU architecture, media routing, recording pipelines.
A deep-dive into production-ready API design patterns every senior engineer should know, covering versioning strategies, cursor-based pagination.
Master API design for interviews — REST maturity model, REST vs GraphQL vs gRPC trade-offs, API versioning strategies, pagination patterns.
Advanced system design patterns for backend engineers — CQRS, event sourcing, saga patterns, outbox pattern, and when to use each in production systems.
System design and backend scaling interview prep — horizontal vs vertical scaling, database scaling patterns, load balancing, caching layers.
Deep dive on caching for system design interviews — cache-aside vs write-through vs write-behind, cache invalidation, Redis cluster.
Production-grade microservices patterns for senior engineering interviews — service mesh, sidecar proxy, API gateway patterns, service discovery.
Database internals for senior engineer interviews — B-tree vs. LSM-tree storage engines, WAL, MVCC, query planning, index types.
Deep dive into database transactions for interviews — ACID properties, isolation levels, read phenomena, optimistic vs pessimistic locking.
Advanced distributed systems interview preparation — consensus algorithms (Raft, Paxos), CAP theorem in practice, distributed transactions, vector clocks.
A rigorous guide to distributed consensus for software engineers — covering why consensus is hard, how Raft works in detail, the intuition behind Paxos.
Master the core distributed systems concepts that senior engineering interviews test: CAP theorem, consistency models, replication strategies.
Distributed systems concepts for interviews — CAP theorem, consensus algorithms, distributed transactions, leader election, clock synchronization.
Design patterns in technical interviews — Singleton, Factory, Observer, Strategy, Decorator, Command, Builder patterns: when to use each.
How to ace object-oriented design interviews — identifying classes and relationships, encapsulation, inheritance vs composition, SOLID principles.
A step-by-step system design interview framework covering requirements gathering, capacity estimation, API design, data modeling, high-level architecture.
How to answer database design questions in system design interviews — SQL vs NoSQL decision framework, sharding strategies, replication patterns.
Comprehensive Kubernetes engineer interview guide covering pod lifecycle management, writing operators and CRDs, production reliability patterns.
A deep dive into ML production engineering interview topics — feature stores, model serving architectures, drift detection, A/B testing for models.
ML system design for engineering interviews — feature stores, online vs. offline inference, model versioning, A/B testing, data pipelines.
A structured framework for discussing microservices, modular monoliths, and serverless architectures in system design interviews — covering Conway's Law.
Deep dive into advanced backend patterns — circuit breakers, bulkhead pattern, saga pattern for distributed transactions, event sourcing implementation.
Architecture patterns for senior engineering interviews — monolith vs. microservices, CQRS, event sourcing, saga pattern, strangler fig.
The mental models senior engineers use to evaluate architectural trade-offs — CAP theorem in practice, sync vs async, monolith vs microservices.
A deep-dive system design walkthrough for building a product analytics platform at scale — covering event ingestion, time-series storage, query engines.
System design deep dive on API gateways — rate limiting algorithms, authentication, routing patterns, service mesh vs API gateway.
Design a production-grade API rate limiting system — token bucket vs. sliding window log vs. sliding window counter, distributed rate limiting with Redis.
A deep-dive into CDN system design for senior engineering interviews — covering edge caching, anycast routing, cache invalidation.
Design a real-time chat system for 500M users — WebSocket connections, message delivery guarantees, presence indicators, push notifications.
How to design a distributed cache in system design interviews — cache eviction policies, consistent hashing, replication, partitioning.
Deep dive into distributed cache system design: compare Memcached and Redis clusters, implement consistent hashing, choose eviction policies.
Deep dive into distributed consensus for system design interviews — Paxos intuition, Raft algorithm, leader election, log replication.
A rigorous guide to distributed transaction design for senior engineering interviews — covering 2PC, the Saga pattern, idempotency.
How to design an e-commerce platform in system design interviews — product catalog, inventory management, order processing, checkout flow.
How to design event-driven systems in interviews — Kafka vs SQS vs RabbitMQ, event sourcing, CQRS, exactly-once delivery.
Design a real-time event streaming platform like Apache Kafka — partitioning, replication, consumer groups, exactly-once semantics, stream processing.
A comprehensive system design walkthrough for a cloud file storage service — file chunking, deduplication, metadata service, delta sync.
How to design a gaming backend in system design interviews — real-time leaderboards with Redis sorted sets, matchmaking algorithms.
A structured walkthrough of designing a global CDN from first principles — edge nodes, origin servers, cache invalidation strategies, anycast routing.
A rigorous system design walkthrough for building a distributed job scheduler at scale — covering task queues, worker management, failure handling.
Design a real-time leaderboard system — Redis sorted sets, score ingestion at scale, global vs. friend leaderboards, pagination.
How to design a multi-channel notification system — fanout architecture, push notifications (APNs/FCM), email delivery, rate limiting, user preferences.
A comprehensive system design guide for building a multi-channel notification system. Covers architecture for push notifications, email, SMS.
Design an object storage service like Amazon S3 — metadata service, chunk storage, consistent hashing for distribution, multipart upload, versioning.
A technical guide to designing an observability platform covering metrics pipelines, logging at scale, distributed tracing, OpenTelemetry.
Design a payment gateway handling 10K transactions/second — transaction processing pipeline, idempotency, fraud detection integration.
A deep dive into designing a payment processing system. Covers idempotency, exactly-once semantics, reconciliation, fraud detection hooks.
How to design a payment system in system design interviews — payment lifecycle, idempotency, double-spend prevention, reconciliation.
How to design a rate limiter in system design interviews — token bucket vs leaky bucket vs sliding window algorithms, Redis-based implementation.
How to design a real-time chat application in system design interviews — WebSocket vs polling, message delivery guarantees, presence, read receipts.
How to design a real-time messaging system in interviews — WebSocket connections, message delivery guarantees, online presence, group messaging.
Deep dive into operational transformation math, CRDT theory, conflict resolution algorithms.
How to design a recommendation system in system design interviews — collaborative filtering, content-based filtering, candidate generation.
Design a recommendation system for a streaming or e-commerce platform — collaborative filtering, content-based filtering, two-tower models.
How to design a ride-sharing platform in system design interviews — location matching, real-time driver tracking, surge pricing, dispatch algorithm.
Design a ride-sharing platform for interviews — location tracking, driver matching, surge pricing, trip lifecycle.
Design a search autocomplete system for 1B users — trie vs inverted index, ranking suggestions by frequency, real-time updates, personalization.
How to design a web search engine in system design interviews — web crawling, indexing, ranking algorithms (PageRank, TF-IDF, BERT), query serving.
System design interview guide for building a search engine — web crawling, inverted index, ranking signals, query processing.
Design a web search engine for interviews — web crawlers, inverted index, ranking algorithms, query processing, and scaling to billions of documents.
Design a social graph for a platform like Twitter or Instagram — storing directed follow relationships, feed generation, mutual friends.
How to design a social media news feed in system design interviews — fanout on write vs read, follower graphs, ranking/personalization, hot users.
A complete walkthrough of designing a social media news feed system. Covers feed generation strategies (push vs pull), ranking, storage, caching.
How to design a video streaming platform in system design interviews — video ingestion, transcoding pipelines, CDN strategy, adaptive bitrate streaming.
Classic system design interview problem — encoding strategies, database design, caching, redirect performance, analytics.
Design a URL shortener handling 100B URLs — hash generation strategies, collision handling, custom aliases, redirect performance, analytics pipeline.
How to design a video streaming platform in system design interviews — upload and transcoding pipeline, CDN distribution, adaptive bitrate streaming.
Design a video streaming platform for 100M users — video upload pipeline, transcoding, CDN architecture, adaptive bitrate streaming, search.
Design a distributed workflow orchestration engine like Temporal or Airflow — covering DAG scheduling, state machines, retry semantics.
How Asana built Luna (custom in-memory graph database) and their real-time sync protocol — the engineering behind one of the most complex PM platforms.
How Canva built a custom rendering engine, real-time collaboration layer, and billion-asset media pipeline to serve 170 million users across a design.
Master microservices architecture interview questions: monolith vs microservices trade-offs, service communication patterns, circuit breakers.
CQRS, event sourcing, saga, circuit breaker, sidecar, API gateway, strangler fig, and bulkhead — explained clearly for system design interviews.
Everything you need to know to ace system design interviews at Google, Meta, Amazon, and Microsoft. Frameworks, question types.