- Prerequisite subjects under MAKAUT include
Computer Organisation and Architecture
,Operating Systems
,Object Oriented Programming
,Software Engineering
,Computer Networks
,Database Management
,Distributed Database management
,Big data
. - Follow this -> System Design Roadmap
- Follow this repo -> System Design Primer
- Read Designing Data-Intensive Applications - Martin Kleppmann
- Read System Design Inteview by Alex xu
- Read Building Microservices
- Follow this template to approach System Design problems
- Follow this page Leetcode Discuss System Design
- Follow this youtube playlist for High Level Design
- Follow this youtube playlist for Low Level Design
☑ for topics I have learned
Sno | Status | Topics |
---|---|---|
1 | Learn About Network Protocols (TCP, Websocket, HTTP etc.) | |
2 | Client-Server Vs Peer 2 Peer Architecture | |
3 | C.A.P Theorem | |
4 | Microservices Imp. Design Patterns (SAGA pattern, Strangler Pattern) | |
5 | Scale from 0 to Million Users | |
6 | Design Consistent Hashing | |
7 | Design URL Shortening | |
8 | Back of the Envelope Estimation | |
9 | Design Key-Value Store | |
10 | SQL vs NoSQL, When to Use Which DB | |
11 | Design WhatsApp | |
12 | Design Rate Limiter | |
13 | Design Search Autocomplete System / Typeahead System | |
14 | Understand Message Queue , Kafka etc. | |
15 | What is Proxy Servers | |
16 | What is CDN | |
17 | Storage types: (Block Storage , File Storage , Object Storage (S3) , RAID ) |
|
18 | File System (Google File System , HDFS ) |
|
19 | Bloom Filter | |
20 | Merkle Tree , Gossiping Protocol | |
21 | Caching (Cache Invalidation , Cache eviction ) |
|
22 | How to Scale Database Sharding (Horizontal and Vertical) Partitioning Replication , Mirroring Leader Election Indexing etc. |
|
23 | Design Notification System | |
24 | Design Pastebin | |
25 | Design Twitter | |
26 | Design Dropbox | |
27 | Design Instagram | |
28 | Design YouTube | |
29 | Design Google Drive | |
30 | Design Web Crawler | |
31 | Design Facebook News Feed / Newsfeed System | |
32 | Design Ticket Master | |
33 | Design NearByFriends or Yelp |
Sno | Status | LLD patterns | Related Questions |
---|---|---|---|
1 | ☑ | Strategy pattern |
SOLID principles |
2 | ☑ | Observer Pattern |
Design Notify-Me Button Functionality |
3 | ☑ | Decorator Pattern |
Design Pizza Billing System |
4 | ☑ | Factory Pattern |
Design Parking Lot |
5 | ☑ | Abstract Factory Pattern |
Design Snake n Ladder game |
6 | ☑ | Chain of Responsibility Pattern |
Design Elevator System |
7 | ☑ | Proxy Pattern |
Design Car Rental System |
8 | ☑ | Null Object Pattern |
Design Logging System |
9 | ☑ | State Pattern |
Design Tic-Tac-Toe game |
10 | ☑ | Composite Pattern |
Design BookMyShow & Concurrency handling |
11 | ☑ | Adapter Pattern |
Design Vending Machine |
12 | ☑ | Singleton Pattern |
Design ATM |
13 | ☑ | Builder Pattern |
Design Chess game |
14 | ☑ | Prototype Pattern |
Design File System |
15 | ☑ | Bridge Pattern |
Design Splitwise |
16 | ☑ | Façade Pattern |
Splitwise Simplify Algorithm / Optimal Accounting Balancing |
17 | ☑ | Flyweight Pattern |
Design CricBuzz / CricketInfo |
18 | ☑ | Command Pattern |
Design True Caller |
19 | ☑ | Interpreter Pattern |
Design Car Booking Service like Ola, Uber |
20 | ☑ | Iterator Pattern |
Design Online Hotel Booking System |
21 | ☑ | Mediator Pattern |
Design Library Management System |
22 | ☑ | Memento Pattern |
Design Traffic Light System |
23 | ☑ | Template Method Pattern |
Design Meeting Scheduler |
24 | ☑ | Visitor Pattern |
Design Online Voting System |
25 | ☑ | Design Inventory Management System | |
26 | ☑ | Design Cache Mechanism | |
27 | ☑ | Design LinkedIn | |
28 | ☑ | Design Amazon | |
29 | ☑ | Design Airline Management System | |
30 | ☑ | Design Stock Exchange System | |
31 | ☑ | Design Learning Management System | |
32 | ☑ | Design a Calendar Application | |
33 | ☑ | Design (LLD) Payment System | |
34 | ☑ | Design (LLD) Chat based system | |
35 | ☑ | Design Food delivery app like Swiggy and Zomato | |
36 | ☑ | Design Community Discussion Platform | |
37 | ☑ | Design Restaurant Management System | |
38 | ☑ | Design Bowling Alley Machine | |
39 | ☑ | Design (LLD) Rate Limiter |