System Design
See for bite-sized groups that are digestible in a week’s period.
In a Hurry
- Introduction
- How to Prepare
- Delivery Framework
- Core Concepts
- Key Technologies
- Common Patterns
- Question Breakdowns
Core Concepts
- Networking Essentials
- API Design
- Data Modeling
- Database Indexing
- Caching
- Sharding
- Consistent Hashing
- CAP Theorem
- Numbers to know
Question Breakdowns
- Bitly
- Dropbox
- Yelp
- Local Delivery Service
- Ticketmaster
- FB News Feed
- Tinder
- LeetCode
- Strava
- Distributed Cache
- Rate Limiter
- Online Auction
- YouTube
- Job Scheduler
- FB Live Comments
- News Aggregator
- Price Tracking Service
- Notification System
- YouTube Top K
- Uber
- Robinhood
- Google Docs
- Web Crawler
- Ad Click Aggregator
- FB Post Search
- Payment System
- Metrics Monitoring
- Online Chess
- ChatGPT
- Flash Sale
Patterns
- Real-time Updates
- Dealing with Contention
- Multi-step Processes
- Scaling Reads
- Scaling Writes
- Handling Large Blobs
- Managing Long Running Tasks
Key Technologies
- Redis
- Elasticsearch
- Kafka
- API Gateway
- Cassandra
- DynamoDB
- PostgreSQL
- Flink
- Zookeeper
Advanced Topics
- Proximity Search
- Data Structures for Big Data
- Vector Databases
- Time Series Databases
- Change Data Capture
In the Wild
- How Shopify Moved Inventory Reservations from Redis to MySQL
- How Discord Moved Trillions of Messages to ScyllaDB
- How Slack Put Kafka in Front of Its Redis Job Queue
- How Figma Built Multiplayer Editing on Simplified CRDTs
- How Spotify Serves Point Queries from an Exabyte Data Lake
Code
Two Pointers
- Overview
- Container With Most Water
- Two Sum (Sorted Array)
- 3-Sum
- Triangle Numbers
- Move Zeroes
- Sort Colors
- Trapping Rain Water
Sliding Window
- Overview
- Maximum Sum of Subarrays of Size \(k\)
- Max Points You Can Obtain from Cards
- Max Sum of Distinct Subarrays of Length \(k\)
- Overview
- Longest Substring Without Repeating Characters
- Longest Repeating Character Replacement
Intervals
- Overview
- Can Attend Meetings
- Insert Interval
- Non-Overlapping Intervals
- Merge Intervals
- Employee Free Time
Stack
- Overview
- Valid Parentheses
- Decode String
- Longest Valid Parentheses
- Monotonic Stack
- Daily Temperatures
- Largest Rectangle in Histogram
Linked List
- Overview
- Linked List Cycle
- Palindrome Linked List
- Remove Nth Node from End of List
- Reorder List
- Swap Nodes in Pairs
Binary Search
- Overview
- Apple Harvest (Koko Eating Bananas)
- Search in a Rotated Sorted Array
- Split Array Largest Sum
- Kth Smallest Element in a Sorted Matrix
- Minimum Shipping Capacity
Heap
- Overview
- Kth Largest Element in an Array
- K Closest Points to Origin
- Find K Closest Elements
- Merge K Sorted Lists
- Median from Data Stream
Depth-First Search
- Introduction
- Fundamentals
- Return Values
- Maximum Depth of Binary Tree
- Path Sum
- Passing Values Down and Helper Functions
- Validate Binary Search Tree
- Calculate Tilt
- Diameter of a Binary Tree
- Path Sum II
- Longest Univalue Path
- Graphs Overview
- Adjacency List
- Copy Graph
- Graph Valid Tree
- Matrices
- Flood Fill
- Number of Islands
- Surrounded Regions
- Pacific Atlantic Water Flow
Breadth-First Search
- Introduction
- Overview
- Level Order Sum
- Rightmost Node
- Zigzag Level Order
- Maximum Width of Binary Tree
- Graphs Overview
- Minimum Knight Moves
- Rotting Oranges
- 01-Matrix
- Bus Routes
Backtracking
- Overview
- Word Search
- Solution Space Trees
- Subsets
- Generate Parentheses
- Combination Sum
- Palindrome Partitioning
- N-Queens
Graphs
- Overview
- Course Schedule
- Course Schedule II
- Shortest Path Algorithms
- Network Delay Time
- Cheapest Flights Within K Stops
- Path with Minimum Effort
- Find City with Fewest Reachable
Dynamic Programming
- Fundamentals
- Solving a Question with Dynamic Programming
- Counting Bits
- Decode Ways
- Unique Paths
- Maximal Square
- Longest Increasing Subsequence
- Word Break
- Maximum Profit in Job Scheduling
- Paint House
- Paint House II
- Minimum Window Subsequence
Greedy Algorithms
- Overview
- Best Time to Buy and Sell Stock
- Gas Station
- Jump Game
- Jump Game II
- Partition Labels
Trie
- Overview
- Implement Trie Methods
- Prefix Matching
Prefix Sum
- Overview
- Count Vowels in Substrings
- Subarray Sum Equals \(K\)
Matrices
- Spiral Matrix
- Rotate Image
- Set Matrix Zeroes
Low Level Design
Low Level Design in a Hurry
- Introduction
- Delivery Framework
- Design Principles
- OOP Concepts
- Design Patterns
Concurrency
- Introduction
- Correctness
- Coordination
- Scarcity
Problem Breakdowns
- Connect Four
- Amazon Locker
- Elevator
- Parking Lot
- File System
- Movie Ticket Booking
- Logging Service
- Rate Limiter
- Inventory Management
Behavioral
- Why the Behavioral Matters
- Decode: How Interviews Work
- Select: Choosing Responses
- Deliver: Telling a Good Story
- The Big Three Questions
- Adapting to Big Tech
- Practicing
- Common Pitfalls
- Special Interview Types
- Answering AI Questions
AI Coding
Overview
- Introduction
- Interview Formats
- Patterns
- How to Prepare
Fundamentals
- Codebase Orientation
- Planning Your Approach
- Driving the AI
- Verification & Testing
- Communication
Common Patterns
- Graph Search & Pathfinding
- Topological Sort
- Backtracking
- Greedy & Bin Packing
- Dynamic Programming
- String Matching and Parsing
- Data Structure Design
AI Coding Problem Breakdowns
- Battleship
- Inventory Packer
- Spell Checker
- Card Game
- Friend Recommender
- Maze Solver
- Route Planner
- Task Scheduler
- Word Container
- Connect Four
- Kitchen Orders
- Maximize Unique Characters
- Nonogram Solver
ML System Design
ML System Design in a Hurry
- Introduction
- Delivery Framework
ML System Design Core Concepts
- Feature Engineering
- Embeddings
- Generalization
- Evaluation
ML System Design Question Breakdowns
- Harmful Content
- Bot Detection
- Video Recommendations
References
- System Design Course | Hello Interview. www.hellointerview.com . Accessed Sep 6, 2026.
- Data Structures and Algorithms Introduction | Hello Interview. www.hellointerview.com . Accessed Sep 6, 2026.