High Level Design
27 topics · Stage 5
Complete
Fundamentals12
- 01How to Approach a System Design InterviewA repeatable step by step way to run a system design interview, from first questions to failures, with a 45 minute time split.13 min
- 02Back of the Envelope EstimationHow to turn daily users into requests per second, storage and bandwidth with rounded numbers, and use the result to choose the design.16 min
- 03CachingWhy caches make systems faster, where they sit, how reads and writes flow through them, and how to deal with stale data, stampedes and hot keys.17 min
- 04Load BalancingHow a load balancer spreads traffic over many servers, which algorithm fits which job, and how to keep the balancer itself from failing.15 min
- 05Consistent HashingHow to spread keys over servers so that adding or removing a server moves only a small share of them, using a hash ring and virtual nodes.12 min
- 06Message Queues and StreamsWhy systems put a queue between two services, how delivery guarantees, ordering and retries work, and when a log like Kafka beats a classic queue.16 min
- 07Choosing a Database, and How Indexes WorkHow to pick between SQL, document, key value, wide column, graph and search databases, and how indexes make reads fast and writes slower.14 min
- 08Sharding and PartitioningWhen one database is not enough, how to split data across machines with range, hash or directory sharding, and the problems that come with it.14 min
- 09Replication and FailoverWhy we keep copies of data, how leaders and followers work, what replication lag breaks, and what happens when the leader dies.14 min
- 10CDNsA CDN keeps copies of your files on servers close to your users, so pages load fast and your own servers get less traffic.12 min
- 11Idempotency and RetriesHow to make repeated requests safe with idempotency keys, and how to retry failed calls with backoff and jitter without causing a retry storm.14 min
- 12Proxies and API GatewaysWhat forward and reverse proxies do, what an API gateway adds on top, how it differs from a load balancer and a service mesh, and where it can hurt.14 min
- 01Designing URL ShortenerBase62 encoding, ticket servers for unguessable ids, sharded key value storage and click analytics.16 min
- 02Design a Rate LimiterWhere a limiter sits, the counter algorithms, Redis key design, and sharding for compute.10 min
- 03Designing a Notification ServiceTemplates, async queues, bulk fan out, priority lanes, and deduplication with a tracker store.13 min
- 04Designing PasteBin and Github GistsBlob storage for content, relational metadata, derived paths, expiry cleanup and why we skip the cache.14 min
- 05Design Ecommerce Product Listing (Video Processing)Catalog service, read replicas, product data model, and a video transcoding pipeline for product media.14 min
- 06Designing TinderGeo sharded location tracking, profile enrichment, precomputed feeds, swipes and match creation.16 min
- 07Designing Realtime Abuse MasterMasking abuse in live chat, in process trie lookup, dictionary distribution, and an admin service.15 min
- 08Designing a Fraud Detection SystemSynchronous fraud check in the payment path, random forest scoring, and Spark pipelines for training data.16 min
- 09Designing a Recommendation EngineContent and collaborative filtering, Spark pipelines, graph queries and precomputed recommendation feeds.18 min
- 10Design a Chat AppWebSocket gateways, routing a message to the right server, per chat sequence numbers, delivery ticks, offline push, presence cost and media.25 min
- 11Design a Digital WalletA double entry ledger, safe transfers with idempotency keys, one transaction per shard plus a saga, audit trail and bank reconciliation.28 min
- 12Design a Distributed CacheA Redis style cache cluster with consistent hashing, replicas for failover, eviction, hot key and stampede protection, and a plain plan for staying close to the database.28 min
- 13Design a News FeedPosting and reading a feed with fan out on write, fan out on read and the hybrid for celebrities, plus feed storage, simple ranking, cursor pagination, like counters and the media path.24 min
- 14Design a Video Streaming ServiceResumable uploads, parallel transcoding into many sizes, HLS segments with adaptive bitrate, CDN delivery, batched view counts and the storage and egress bill.25 min
- 15Design a File Storage and Sync ServiceChunking files, hashing chunks to skip duplicates, separate metadata and blob storage, long polling sync across devices, conflicted copies, sharing and versions.26 min