- Domain Name System (DNS)
- Content Delivery Network (CDN)
- Load Balancing
- API Gateway
- Caching
- Distributed Caching
- Memcached vs Redis
- Availability
- Consistency
- Reliability
- Scalability
- CAP Theorem and PACELC Theorem
- Consistent Hashing
- Security
- Monitoring
- REST, GraphQL, gRPC
- Long Polling,WebSockets,SSE
- OSI Model
- TCP vs UDP
- Back of Envelope Estimation
- Databases
- SQL vs NoSQL
- Database Index
- Data Replication
- Data Redundancy
- Data Partitioning
- Transactions
- Distributed Transactions
- Batch Processing vs Stream Processing
- Synchronous vs asynchronous communications
- Gossip Protocol
- Coordination Services
- Blob Storage
- Idempotency
- Parquet
- Bloom Filters
- Consensus Algorithms
- Checksums
- HeartBeats
- Circuit Breaker
- Message Brokers
- Message Queues
- Publish-Subscribe
- Kafka
- SQS
- Kafka vs SQS
- Apache Flink
- Apache Spark
- Fink vs Spark
- MongoDB
- Cascandra
- Elastic Search
- Geohashing and Quadtrees
- Geospatial Indexs
- Design Consistent Hashing
- Design Distributed Key-Value Store
- Design Content Delivery Network (CDN)
- Design Distributed Cache
- Design Distributed Message Queue
- Design a File Storage System / GFS / HDFS
- Design a object storage system / S3 / Dropbox
- Design Distributed Locking Service
- Design Distributed Counters
- Design Distributed Logging
- Design Metrics Monitoring and Alerting System
- Design API Rate Limiter
- Design a Unique Id Generator & Key Generator
- Design a Url Shortener or Design a tiny url
- Design notification system
- Design Job Scheduler/Distributed Task Scheduler
- Design Ad-Click Aggregration
- Design Trending Topics (Twitter)/Top K/Heavy Hitters
- Design Google Docs
- Design Chat System/messenger
- Design News Feed
- Design Live Comments
- Design Instagram
- Design YouTube
- Design Google Photos/Photos Storage
- Design a Ecommerce Website
- Design a Shopping Cart
- Design a Inventory Management System
- Design a Ticketmaster
- Design a Hotel Reservation System
- Design Price Alert Online System
- Paxos: The Part-Time Parliament
- MapReduce: Simplified Data Processing on Large Clusters
- The Google File System
- Dynamo: Amazon’s Highly Available Key-value Store
- Kafka: a Distributed Messaging System for Log Processing
- Spanner: Google’s Globally-Distributed Database
- Bigtable: A Distributed Storage System for Structured Data
- ZooKeeper: Wait-free coordination for Internet-scale systems
- The Log-Structured Merge-Tree (LSM-Tree)
- The Chubby lock service for loosely-coupled distributed systems