C++
- C++ Template Programming: From Generic Functions to Library Design
- C++ Threads, Mutexes, and Condition Variables
- Understanding C++ Concurrency: Locks, Conditions, and Queues
- RAII: Deterministic Resource Management in C++
- C++ Value Categories: lvalues, rvalues, and std::move
- Next Greater Element II: Circular Monotonic Stack
- Detect Squares
- Number of Islands
- Max Area of Island
- Design a Hit Counter
- Assign Rental Cars to Time-Window Requests
- C++ Iterators and Invalidation
- C++ List and LRU Patterns
- C++ Deque and Sliding Windows
- C++ Queue, Stack, and Priority Queue
- Max Points on a Line
- C++ Sets and Multisets
- C++ Maps and Hashing
- C++ Vector and String
- Graph Representation and DFS
- C++ Containers Index
- Top N Tickers by Traded Volume
- LRU Cache
- Algorithms Index
- Segment Tree and Fenwick Tree
- String Algorithms
- Dynamic Programming
- Binary Search Patterns
- Monotonic Stack and Deque
- Sliding Window and Two Pointers
- Topological Sort and SCC
- Shortest Path and MST
- Disjoint Set Union
- Trees
- Basic Algorithms
- C++ Value Semantics: Rule of Zero, Copy, and Move
Distributed Systems Components
- Distributed ID Generation: Snowflake, Sequences, UUIDs, and Clock Failure
- Inside Distributed Rate Limiters: Token Buckets, Sliding Windows, and Global Quotas
- Distributed Locks: Leases, Fencing Tokens, Sessions, and Failure Safety
- Inside Distributed Transactions: 2PC, Sagas, Outbox, Idempotency, and Recovery
- Inside a CDN: Cache Keys, Freshness, Revalidation, and Origin Protection
- Inside a WebSocket Server: Connections, Event Loops, Backpressure, and Scaling
- Inside Raft: Leader Election, Log Replication, Quorums, and Safety
- Inside a Load Balancer: Connections, Scheduling, Health, and Failover
- Geohashing: Scalable Geospatial Indexing for Distributed Systems
- CAP Theorem: What a Network Partition Actually Forces You to Choose
- S3 Multi part upload
- Inside Redis Cluster: Slots, Gossip, Replication, and Failover
- SSTable
- Inside Cassandra: Partitioning, Replication, Storage, and Repair
- Inside Apache Kafka: Partitions, Replication, Consumer Groups, and KRaft
- Inside Service Discovery: Registries, Health, Routing, and Stale Endpoints
- Inside Sharding: Partition Maps, Consistent Hashing, Rebalancing, and Hotspots
- Inside Replication: Logs, Acknowledgements, Failover, and Convergence
- Distributed Cache
- Inside ZooKeeper: Znodes, Sessions, Watches, Zab, and Fencing
- Comparison between databases
- Inside Bigtable: Tablets, SSTables, Compaction, and Recovery
- Inside GFS: Chunks, Leases, Mutation Ordering, and Recovery
System Design
- Design Deliveroo
- Design Uber
- Design Twitter
- Design Tiny URL
- Design Booking Service
- Design Collabrative Editing
- Design Web Crawler
- Capacity Estimation for System Design: Traffic, Storage, Bandwidth, and Headroom
- Design Chat Application
- Design Data Intensive Applications
Cloud
- Containers from First Principles
LeetCode
- Two Pointers II (Advanced)
- Sliding Window II
- Two Pointers I
- Sliding Window I
- Arrays Basics & STL
- Strings and Hashmaps I
Artificial Intelligence
- Evaluation Metrics for Classification Models