Learn › High-Level Design (HLD)

🏗️ High-Level Design (HLD)

Design scalable backend systems — URL shortener, rate limiter, Twitter feed, notifications, and search autocomplete.

Goal
Use the 6-step framework to design any system and defend every architectural decision under follow-up.
01
HLD Interview Framework
A 6-step framework for backend system design interviews — requirements, estimation, API, data model, architecture, and deep-dives.
medium ⏱ 25m
02
HLD Building Blocks
The core components of every scalable system — load balancers, caches, queues, CDN, databases, and how they connect.
medium ⏱ 30m
03
HLD: Design a URL Shortener
Design bit.ly — hash generation, redirect performance, custom aliases, analytics, and storage at scale.
medium ⏱ 28m
04
HLD: Design a Rate Limiter
Design a distributed rate limiter — token bucket, sliding window counter, Redis implementation, and where to enforce limits.
hard ⏱ 28m
05
HLD: Design a Twitter/X Feed
Design the Twitter timeline — fanout-on-write vs fanout-on-read, hybrid strategy for celebrities, sharding, and real-time delivery.
hard ⏱ 35m
06
HLD: Design a Notification System
Design a multi-channel notification system — push, email, SMS — with priority queues, fan-out, delivery guarantees, and user preferences.
hard ⏱ 28m
07
HLD: Design a Search Autocomplete System
Design Google-scale typeahead — trie vs prefix hash, top-K ranking, distributed storage, and < 100ms end-to-end latency.
hard ⏱ 30m