OneCompiler

System Design Types

199

1️⃣ HLD – High-Level Design

  1. Functional Requirements (FRs) – What the system needs to do.
  2. Non-Functional Requirements (NFRs) – Scalability, availability, latency, consistency, reliability.
  3. Architecture Diagram – Major services/components and how they talk to each other (API calls, message queues, databases).
  4. Tech Stack Choices – Why you choose certain databases, messaging systems, caching solutions.
  5. Data Flow – From client → API gateway → services → database.
  6. Storage Design – SQL vs NoSQL, indexing, partitioning.
  7. High-Level Scaling – Load balancers, sharding, replication, CDNs.
  8. Security – Authentication, authorization, encryption, API rate limits.
  9. Failure Handling – Redundancy, retries, fallbacks.
  10. Trade-offs & Alternatives – Justify why you didn’t choose the other approach.

Topics

  1. 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.

  2. 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.

  3. 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.

  4. 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.

  5. 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.

  6. 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.

  7. 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.

  8. 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.

  9. 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.

  10. 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.

  11. 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.

  12. 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.

  13. 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.

  14. 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.

  15. 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.

  16. 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.

  17. 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.

  18. 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.

  19. Blockchain & Distributed Ledger Systems
    Goal: Maintain decentralized, tamper-proof transaction records.
    Examples: Bitcoin, Ethereum.
    Focus Areas: Consensus algorithms, smart contracts, scalability (sharding, rollups).

  20. 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.