System Design Types
1️⃣ HLD – High-Level Design
- Functional Requirements (FRs) – What the system needs to do.
- Non-Functional Requirements (NFRs) – Scalability, availability, latency, consistency, reliability.
- Architecture Diagram – Major services/components and how they talk to each other (API calls, message queues, databases).
- Tech Stack Choices – Why you choose certain databases, messaging systems, caching solutions.
- Data Flow – From client → API gateway → services → database.
- Storage Design – SQL vs NoSQL, indexing, partitioning.
- High-Level Scaling – Load balancers, sharding, replication, CDNs.
- Security – Authentication, authorization, encryption, API rate limits.
- Failure Handling – Redundancy, retries, fallbacks.
- Trade-offs & Alternatives – Justify why you didn’t choose the other approach.
Topics
-
Scalable Web Applications
Goal: Handle millions of concurrent users with low latency.
Examples: Facebook, Twitter, LinkedIn feed systems.
Focus Areas: Load balancing, caching, horizontal scaling, database sharding, eventual consistency. -
Content Delivery Systems (CDN-based)
Goal: Deliver static and dynamic content quickly worldwide.
Examples: YouTube video delivery, Cloudflare, Akamai.
Focus Areas: Edge caching, replication, geo-routing, video transcoding. -
Real-Time Messaging Systems
Goal: Low-latency communication between users or services.
Examples: WhatsApp, Slack, WebSocket-based systems.
Focus Areas: Pub/Sub architecture, message queues, WebSockets, push notifications. -
Search Engine Design
Goal: Efficiently index and retrieve large volumes of data.
Examples: Google Search, Elasticsearch-based internal search.
Focus Areas: Inverted index, ranking algorithms, distributed indexing, query optimization. -
Recommendation Systems
Goal: Provide personalized suggestions to users.
Examples: Netflix movie recommendations, Amazon product suggestions.
Focus Areas: Collaborative filtering, ML models, feature engineering, A/B testing. -
Payment & Transaction Systems
Goal: Secure, reliable, and consistent money transfers.
Examples: PayPal, Stripe, UPI systems.
Focus Areas: ACID compliance, fraud detection, double-spend prevention, ledger systems. -
Distributed Storage Systems
Goal: Store and retrieve massive datasets reliably.
Examples: Amazon S3, Google Drive, Dropbox.
Focus Areas: Replication, erasure coding, data consistency models, object vs. block storage. -
Streaming Data Processing Systems
Goal: Process continuous streams of data in real time.
Examples: Apache Kafka + Flink, Twitter live feed processing.
Focus Areas: Stream ingestion, exactly-once processing, event time handling, windowing. -
IoT Device Management Systems
Goal: Handle millions of devices generating telemetry data.
Examples: AWS IoT Core, Smart Home device control.
Focus Areas: MQTT protocols, device authentication, OTA updates, edge computing. -
High-Availability Microservices Platforms
Goal: Build systems with modular, independent deployable units.
Examples: Netflix microservices, Uber architecture.
Focus Areas: Service discovery, API gateways, service mesh, circuit breakers, observability. -
URL Shortening Systems
Goal: Generate short, unique links that redirect to long URLs.
Examples: Bitly, TinyURL.
Focus Areas: Hashing, key collision handling, caching, analytics tracking. -
Rate Limiting & Throttling Systems
Goal: Control how many requests a client can make in a given time.
Examples: API gateways, Cloudflare DDoS protection.
Focus Areas: Token bucket, leaky bucket, sliding window algorithms, distributed counters. -
Notification Systems
Goal: Send alerts or messages across multiple channels (email, SMS, push).
Examples: Firebase Cloud Messaging, AWS SNS.
Focus Areas: Multi-channel orchestration, retries, user preferences, scheduling. -
Logging & Monitoring Systems
Goal: Collect, store, and analyze logs and metrics from distributed services.
Examples: ELK stack, Datadog, Prometheus + Grafana.
Focus Areas: Log aggregation, indexing, time-series databases, anomaly detection. -
Multiplayer Gaming Backend Systems
Goal: Enable real-time multiplayer interactions at scale.
Examples: Fortnite, PUBG servers.
Focus Areas: State synchronization, lag compensation, matchmaking, anti-cheat. -
Machine Learning Model Serving Systems
Goal: Deploy and scale ML models for real-time predictions.
Examples: TensorFlow Serving, AWS SageMaker endpoints.
Focus Areas: Model versioning, low-latency inference, GPU utilization, autoscaling. -
Workflow Orchestration Systems
Goal: Execute and manage multi-step business processes.
Examples: Apache Airflow, Temporal, AWS Step Functions.
Focus Areas: DAGs, retries, distributed scheduling, state persistence. -
Video Conferencing Systems
Goal: Real-time video/audio communication at scale.
Examples: Zoom, Google Meet.
Focus Areas: WebRTC, TURN/STUN servers, adaptive bitrate streaming, end-to-end encryption. -
Blockchain & Distributed Ledger Systems
Goal: Maintain decentralized, tamper-proof transaction records.
Examples: Bitcoin, Ethereum.
Focus Areas: Consensus algorithms, smart contracts, scalability (sharding, rollups). -
Data Warehousing & Analytics Systems
Goal: Store and analyze large volumes of structured data for insights.
Examples: Snowflake, Google BigQuery, AWS Redshift.
Focus Areas: Columnar storage, OLAP queries, ETL pipelines, query optimization.