Grokking the System Design Interview
Learn how to prepare for system design interviews and practice common system design interview questions.
Course Overview
System design questions have become a standard part of the software engineering interview process. Performance in these interviews reflects upon your ability to work with complex systems and translates into the position and salary the interviewing company offers you. Unfortunately, most engineers struggle with the system design interview (SDI), partly because of their lack of experience in developing large-scale systems and partly because of the unstructured nature of SDIs. Even engineers who’ve some experience building such systems aren’t comfortable with these interviews, mainly due to the open-ended nature of design problems that don’t have a standard answer.
Grokking the System Design Interview is a complete guide to master the System Design Interview. It is created by Design Gurus who are a team of hiring managers from Google, Facebook, Microsoft, and Amazon. This course contains a carefully chosen set of questions that have not only been repeatedly asked at top tech companies but also provide a thorough experience to handle any system design problem.
Course Contents
- Introduction to System Design Interview
- What is a System Design Interview?
- Functional vs. Non-functional Requirements
- What are Back-of-the-Envelope Estimations?
- Things to Avoid During System Design Interview
- Glossary of System Design Basics
- System Design Basics
- Key Characteristics of Distributed Systems
- Load Balancing
- Caching
- Data Partitioning
- Indexes
- Proxies
- Redundancy and Replication
- SQL vs. NoSQL
- CAP Theorem
- PACELC Theorem (New)
- Consistent Hashing (New)
- Long-Polling vs WebSockets vs Server-Sent Events
- Bloom Filters (New)
- Quorum (New)
- Leader and Follower (New)
- Heartbeat (New)
- Checksum (New)
- System Design Trade-offs
- Importance of Discussing Trade-offs
- Strong vs Eventual Consistency
- Latency vs Throughput
- ACID vs BASE Properties in Databases
- Read-Through vs Write-Through Cache
- Batch Processing vs Stream Processing
- Load Balancer vs. API Gateway
- API Gateway vs Direct Service Exposure
- Proxy vs. Reverse Proxy
- API Gateway vs. Reverse Proxy
- SQL vs. NoSQL
- Primary-Replica vs Peer-to-Peer Replication
- Data Compression vs Data Deduplication
- Server-Side Caching vs Client-Side Caching
- REST vs RPC
- Polling vs Long-Polling vs Webhooks
- CDN Usage vs Direct Server Serving
- Serverless Architecture vs Traditional Server-based
- Stateful vs Stateless Architecture
- Hybrid Cloud Storage vs All-Cloud Storage
- Token Bucket vs Leaky Bucket
- Read Heavy vs Write Heavy System
- System Design Problems
- System Design Interviews – A step by step guide
- System Design Master Template
- Designing a URL Shortening Service like TinyURL
- Designing Pastebin
- Designing Instagram
- Designing Dropbox
- Designing Facebook Messenger
- Designing Twitter
- Designing Youtube or Netflix
- Designing Typeahead Suggestion
- Designing an API Rate Limiter
- Designing Twitter Search
- Designing a Web Crawler
- Designing Facebook’s Newsfeed
- Designing Yelp or Nearby Friends
- Designing Uber backend
- Designing Ticketmaster
- Additional Resources
1 review for Grokking the System Design Interview
Add a review
Original price was: ₹10,554.00.₹4,072.00Current price is: ₹4,072.00.
Hina –
Great content overall, but the course was a bit rushed.