8-week plan to help you prepare for system design interviews

Week 1️⃣ 𝗧𝗼𝗽𝗶𝗰𝘀: Scalability, API Gateway, Load Balancing, Caching, CAP/PACELC theorems, Bloom Filters. Study the basics of scalability and load balancing, including horizontal and vertical scaling, load balancing algorithms, and caching strategies. Week 2️⃣ 𝗧𝗼𝗽𝗶𝗰𝘀: Databases, Data Modeling, Partitioning, Sharding, Replication Study different types of databases, including SQL and NoSQL, and their use cases. Learn about data indexing, sharding, and replication strategies. Week 3️⃣ 𝗧𝗼𝗽𝗶𝗰𝘀: Networking, REST, gRPC, GraphQL, DNS, Proxies, Websockets, Long Poll. Study the basics of computer networking and RESTful architecture, including the HTTP protocol, DNS, Proxies, and Websockets. Week 4️⃣ 𝗧𝗼𝗽𝗶𝗰𝘀: Distributed Systems, Consistency Models, Quorum, Leader/Follower, Merkle Tree, Consistent Hashing. Study the basics of distributed systems, consistency models, and how to ensure fault tolerance in distributed systems. Week 5️⃣ 𝗧𝗼𝗽𝗶𝗰𝘀: APIs, Architectural Design Patterns, and Microservices. Study common design patterns like Publisher-Subscriber, Sharding pattern, Circuit Breaker, and Static Content Hosting. Understand the pros and cons of microservices. Week 6️⃣ 𝗧𝗼𝗽𝗶𝗰𝘀: System Design Practice and Interview Preparation. Practice solving system design problems, both individually and in groups. Prepare for system design interview questions and scenarios. Prepare for designing social media, Facebook Newsfeed, Instagram, Twitter Search, YouTube, Quora, and Stack Overflow. Week 7️⃣ 𝗧𝗼𝗽𝗶𝗰𝘀: More System Design Practice and Interview Preparation Practice solving system design problems: Designing Dropbox, Typeahead Suggestion, API Rate limiting. Messenger. Week 8️⃣ 𝗧𝗼𝗽𝗶𝗰𝘀: More System Design Practice and Interview Preparation Practice solving system design problems: Designing Web crawler, Yelp or proximity server, Uber, Ticketmaster. To prepare for system design, I highly recommend 'Grokking' courses: https://lnkd.in/g4Wii9r7 and https://lnkd.in/dyCRtiec #systemdesign #interviewpreparation #microservices #scalability

Last updated