Skip to content
.
├── Grokking Modern System Design Interview for Engineers & Managers-Full
│   ├── 1. Introduction
│   │   ├── 0-introduction to modern system design
│   │   │   └── 0-introduction to modern system design.html
│   │   └── 1-course structure for modern system design
│   │   └── 1-course structure for modern system design.html
│   ├── 10. Key-value Store
│   │   ├── 29-system design the key value store
│   │   │   └── 29-system design the key value store.html
│   │   ├── 30-design of a key value store
│   │   │   ├── 30-design of a key value store.html
│   │   │   └── MarkDownQuiz
│   │   │   ├── Quiz-1.txt
│   │   │   └── Quiz-2.txt
│   │   ├── 31-ensure scalability and replication
│   │   │   ├── 31-ensure scalability and replication.html
│   │   │   └── MarkDownQuiz
│   │   │   ├── Quiz-1.txt
│   │   │   ├── Quiz-2.txt
│   │   │   └── Quiz-3.txt
│   │   ├── 32-versioning data and achieving configurability
│   │   │   └── 32-versioning data and achieving configurability.html
│   │   └── 33-enable fault tolerance and failure detection
│   │   ├── 33-enable fault tolerance and failure detection.html
│   │   └── MarkDownQuiz
│   │   ├── Quiz-1.txt
│   │   └── Quiz-2.txt
│   ├── 11. Content Delivery Network (CDN)
│   │   ├── 34-system design the content delivery network cdn
│   │   │   └── 34-system design the content delivery network cdn.html
│   │   ├── 35-introduction to a cdn
│   │   │   ├── 35-introduction to a cdn.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   ├── 36-design of a cdn
│   │   │   └── 36-design of a cdn.html
│   │   ├── 37-in depth investigation of cdn part 1
│   │   │   ├── 37-in depth investigation of cdn part 1.html
│   │   │   ├── Codes_1
│   │   │   │   └── index.html.txt
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   ├── 38-in depth investigation of cdn part 2
│   │   │   ├── 38-in depth investigation of cdn part 2.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   ├── 39-evaluation of cdn s design
│   │   │   └── 39-evaluation of cdn s design.html
│   │   └── 40-quiz on cdn s design
│   │   ├── 40-quiz on cdn s design.html
│   │   └── Quiz
│   │   └── Quiz-1.txt
│   ├── 12. Sequencer
│   │   ├── 41-system design sequencer
│   │   │   └── 41-system design sequencer.html
│   │   ├── 42-design of a unique id generator
│   │   │   ├── 42-design of a unique id generator.html
│   │   │   ├── MarkDownQuiz
│   │   │   │   └── Quiz-2.txt
│   │   │   └── Quiz
│   │   │   └── Quiz-1.txt
│   │   └── 43-unique ids with causality
│   │   ├── 43-unique ids with causality.html
│   │   └── MarkDownQuiz
│   │   ├── Quiz-1.txt
│   │   └── Quiz-2.txt
│   ├── 13. Distributed Monitoring
│   │   ├── 44-system design distributed monitoring
│   │   │   └── 44-system design distributed monitoring.html
│   │   ├── 45-introduction to distributed monitoring
│   │   │   └── 45-introduction to distributed monitoring.html
│   │   └── 46-prerequisites of a monitoring system
│   │   ├── 46-prerequisites of a monitoring system.html
│   │   └── MarkDownQuiz
│   │   ├── Quiz-1.txt
│   │   └── Quiz-2.txt
│   ├── 14. Monitor Server-side Errors
│   │   ├── 47-design of a monitoring system
│   │   │   └── 47-design of a monitoring system.html
│   │   ├── 48-detailed design of a monitoring system
│   │   │   ├── 48-detailed design of a monitoring system.html
│   │   │   └── MarkDownQuiz
│   │   │   ├── Quiz-1.txt
│   │   │   └── Quiz-2.txt
│   │   └── 49-visualize data in a monitoring system
│   │   └── 49-visualize data in a monitoring system.html
│   ├── 15. Monitor Client-side Errors
│   │   ├── 50-focus on client side errors in a monitoring system
│   │   │   └── 50-focus on client side errors in a monitoring system.html
│   │   └── 51-design of a client side monitoring system
│   │   └── 51-design of a client side monitoring system.html
│   ├── 16. Distributed Cache
│   │   ├── 52-system design the distributed cache
│   │   │   └── 52-system design the distributed cache.html
│   │   ├── 53-background of distributed cache
│   │   │   ├── 53-background of distributed cache.html
│   │   │   ├── MarkDownQuiz
│   │   │   │   └── Quiz-2.txt
│   │   │   └── Quiz
│   │   │   └── Quiz-1.txt
│   │   ├── 54-high level design of a distributed cache
│   │   │   ├── 54-high level design of a distributed cache.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   ├── 55-detailed design of a distributed cache
│   │   │   ├── 55-detailed design of a distributed cache.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   ├── 56-evaluation of a distributed cache s design
│   │   │   ├── 56-evaluation of a distributed cache s design.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   └── 57-memcached versus redis
│   │   ├── 57-memcached versus redis.html
│   │   └── MarkDownQuiz
│   │   └── Quiz-1.txt
│   ├── 17. Distributed Messaging Queue
│   │   ├── 58-system design the distributed messaging queue
│   │   │   └── 58-system design the distributed messaging queue.html
│   │   ├── 59-requirements of a distributed messaging queues design
│   │   │   ├── 59-requirements of a distributed messaging queues design.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   ├── 60-considerations of a distributed messaging queues design
│   │   │   ├── 60-considerations of a distributed messaging queues design.html
│   │   │   └── MarkDownQuiz
│   │   │   ├── Quiz-1.txt
│   │   │   └── Quiz-2.txt
│   │   ├── 61-design of a distributed messaging queue part 1
│   │   │   └── 61-design of a distributed messaging queue part 1.html
│   │   ├── 62-design of a distributed messaging queue part 2
│   │   │   ├── 62-design of a distributed messaging queue part 2.html
│   │   │   └── MarkDownQuiz
│   │   │   ├── Quiz-1.txt
│   │   │   └── Quiz-2.txt
│   │   ├── 63-evaluation of a distributed messaging queues design
│   │   │   ├── 63-evaluation of a distributed messaging queues design.html
│   │   │   └── MarkDownQuiz
│   │   │   ├── Quiz-1.txt
│   │   │   └── Quiz-2.txt
│   │   └── 64-quiz on the distributed messaging queues design
│   │   ├── 64-quiz on the distributed messaging queues design.html
│   │   └── Quiz
│   │   └── Quiz-1.txt
│   ├── 18. Pub-sub
│   │   ├── 65-system design the pub sub abstraction
│   │   │   └── 65-system design the pub sub abstraction.html
│   │   ├── 66-introduction to pub sub
│   │   │   ├── 66-introduction to pub sub.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   └── 67-design of a pub sub system
│   │   ├── 67-design of a pub sub system.html
│   │   └── MarkDownQuiz
│   │   ├── Quiz-1.txt
│   │   └── Quiz-2.txt
│   ├── 19. Rate Limiter
│   │   ├── 68-system design the rate limiter
│   │   │   └── 68-system design the rate limiter.html
│   │   ├── 69-requirements of a rate limiters design
│   │   │   ├── 69-requirements of a rate limiters design.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   ├── 70-design of a rate limiter
│   │   │   ├── 70-design of a rate limiter.html
│   │   │   ├── Codes_1
│   │   │   │   └── index.yaml.txt
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   ├── 71-rate limiter algorithms
│   │   │   ├── 71-rate limiter algorithms.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   └── 72-quiz on the rate limiters design
│   │   ├── 72-quiz on the rate limiters design.html
│   │   └── Quiz
│   │   └── Quiz-1.txt
│   ├── 2. System Design Interviews
│   │   ├── 2-what is a system design interview
│   │   │   └── 2-what is a system design interview.html
│   │   ├── 3-how to prepare for success
│   │   │   └── 3-how to prepare for success.html
│   │   ├── 4-how to perform well
│   │   │   └── 4-how to perform well.html
│   │   └── 5-let ai evaluate your system design interview preparation
│   │   └── 5-let ai evaluate your system design interview preparation.html
│   ├── 20. Blob Store
│   │   ├── 73-system design a blob store
│   │   │   └── 73-system design a blob store.html
│   │   ├── 74-requirements of a blob store s design
│   │   │   └── 74-requirements of a blob store s design.html
│   │   ├── 75-design of a blob store
│   │   │   ├── 75-design of a blob store.html
│   │   │   └── MarkDownQuiz
│   │   │   ├── Quiz-1.txt
│   │   │   ├── Quiz-2.txt
│   │   │   └── Quiz-3.txt
│   │   ├── 76-design considerations of a blob store
│   │   │   ├── 76-design considerations of a blob store.html
│   │   │   └── MarkDownQuiz
│   │   │   ├── Quiz-1.txt
│   │   │   ├── Quiz-2.txt
│   │   │   └── Quiz-3.txt
│   │   ├── 77-evaluation of a blob store s design
│   │   │   ├── 77-evaluation of a blob store s design.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   └── 78-quiz on the blob store s design
│   │   ├── 78-quiz on the blob store s design.html
│   │   └── Quiz
│   │   └── Quiz-1.txt
│   ├── 21. Distributed Search
│   │   ├── 79-system design the distributed search
│   │   │   └── 79-system design the distributed search.html
│   │   ├── 80-requirements of a distributed search system s design
│   │   │   └── 80-requirements of a distributed search system s design.html
│   │   ├── 81-indexing in a distributed search
│   │   │   ├── 81-indexing in a distributed search.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   ├── 82-design of a distributed search
│   │   │   └── 82-design of a distributed search.html
│   │   ├── 83-scaling search and indexing
│   │   │   ├── 83-scaling search and indexing.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   └── 84-evaluation of a distributed search s design
│   │   └── 84-evaluation of a distributed search s design.html
│   ├── 22. Distributed Logging
│   │   ├── 85-system design distributed logging
│   │   │   └── 85-system design distributed logging.html
│   │   ├── 86-introduction to distributed logging
│   │   │   ├── 86-introduction to distributed logging.html
│   │   │   ├── Codes_1
│   │   │   │   └── main.py.txt
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   └── 87-design of a distributed logging service
│   │   ├── 87-design of a distributed logging service.html
│   │   └── MarkDownQuiz
│   │   ├── Quiz-1.txt
│   │   ├── Quiz-2.txt
│   │   └── Quiz-3.txt
│   ├── 23. Distributed Task Scheduler
│   │   ├── 88-system design the distributed task scheduler
│   │   │   └── 88-system design the distributed task scheduler.html
│   │   ├── 89-requirements of a distributed task scheduler s design
│   │   │   └── 89-requirements of a distributed task scheduler s design.html
│   │   ├── 90-design of a distributed task scheduler
│   │   │   ├── 90-design of a distributed task scheduler.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   ├── 91-design considerations of a distributed task scheduler
│   │   │   ├── 91-design considerations of a distributed task scheduler.html
│   │   │   └── MarkDownQuiz
│   │   │   ├── Quiz-1.txt
│   │   │   ├── Quiz-2.txt
│   │   │   ├── Quiz-3.txt
│   │   │   └── Quiz-4.txt
│   │   └── 92-evaluation of a distributed task scheduler s design
│   │   └── 92-evaluation of a distributed task scheduler s design.html
│   ├── 24. Sharded Counters
│   │   ├── 93-system design the sharded counters
│   │   │   └── 93-system design the sharded counters.html
│   │   ├── 94-high level design of sharded counters
│   │   │   └── 94-high level design of sharded counters.html
│   │   ├── 95-detailed design of sharded counters
│   │   │   ├── 95-detailed design of sharded counters.html
│   │   │   └── MarkDownQuiz
│   │   │   ├── Quiz-1.txt
│   │   │   ├── Quiz-2.txt
│   │   │   └── Quiz-3.txt
│   │   └── 96-quiz on the sharded counters design
│   │   ├── 96-quiz on the sharded counters design.html
│   │   └── Quiz
│   │   └── Quiz-1.txt
│   ├── 25. Concluding the Building Blocks Discussion
│   │   ├── 97-wrapping up the building blocks discussion
│   │   │   └── 97-wrapping up the building blocks discussion.html
│   │   └── 98-the reshaded approach for system design
│   │   └── 98-the reshaded approach for system design.html
│   ├── 26. Design YouTube
│   │   ├── 100-requirements of youtube s design
│   │   │   ├── 100-requirements of youtube s design.html
│   │   │   └── MarkDownQuiz
│   │   │   ├── Quiz-1.txt
│   │   │   └── Quiz-2.txt
│   │   ├── 101-design of youtube
│   │   │   ├── 101-design of youtube.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   ├── 102-evaluation of youtube s design
│   │   │   ├── 102-evaluation of youtube s design.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   ├── 103-the reality is more complicated
│   │   │   ├── 103-the reality is more complicated.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   ├── 104-quiz on youtube s design
│   │   │   ├── 104-quiz on youtube s design.html
│   │   │   └── Quiz
│   │   │   └── Quiz-1.txt
│   │   └── 99-system design youtube
│   │   └── 99-system design youtube.html
│   ├── 27. Design Quora
│   │   ├── 105-system design quora
│   │   │   └── 105-system design quora.html
│   │   ├── 106-requirements of quora s design
│   │   │   └── 106-requirements of quora s design.html
│   │   ├── 107-initial design of quora
│   │   │   ├── 107-initial design of quora.html
│   │   │   └── MarkDownQuiz
│   │   │   ├── Quiz-1.txt
│   │   │   └── Quiz-2.txt
│   │   ├── 108-final design of quora
│   │   │   ├── 108-final design of quora.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   └── 109-evaluation of quoras design
│   │   ├── 109-evaluation of quoras design.html
│   │   └── MarkDownQuiz
│   │   └── Quiz-1.txt
│   ├── 28. Design Google Maps
│   │   ├── 110-system design google maps
│   │   │   └── 110-system design google maps.html
│   │   ├── 111-requirements of google maps design
│   │   │   └── 111-requirements of google maps design.html
│   │   ├── 112-design of google maps
│   │   │   └── 112-design of google maps.html
│   │   ├── 113-challenges of google maps design
│   │   │   └── 113-challenges of google maps design.html
│   │   ├── 114-detailed design of google maps
│   │   │   ├── 114-detailed design of google maps.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   └── 115-evaluation of google maps design
│   │   └── 115-evaluation of google maps design.html
│   ├── 29. Design a Proximity Service - Yelp
│   │   ├── 116-system design yelp
│   │   │   └── 116-system design yelp.html
│   │   ├── 117-requirements of yelps design
│   │   │   └── 117-requirements of yelps design.html
│   │   ├── 118-design of yelp
│   │   │   └── 118-design of yelp.html
│   │   ├── 119-design considerations of yelp
│   │   │   ├── 119-design considerations of yelp.html
│   │   │   └── MarkDownQuiz
│   │   │   ├── Quiz-1.txt
│   │   │   ├── Quiz-2.txt
│   │   │   ├── Quiz-3.txt
│   │   │   └── Quiz-4.txt
│   │   └── 120-quiz on yelp s design
│   │   ├── 120-quiz on yelp s design.html
│   │   └── Quiz
│   │   └── Quiz-1.txt
│   ├── 3. Abstractions
│   │   ├── 6-why are abstractions important
│   │   │   └── 6-why are abstractions important.html
│   │   ├── 7-network abstractions remote procedure calls
│   │   │   └── 7-network abstractions remote procedure calls.html
│   │   ├── 8-spectrum of consistency models
│   │   │   └── 8-spectrum of consistency models.html
│   │   └── 9-the spectrum of failure models
│   │   └── 9-the spectrum of failure models.html
│   ├── 30. Design Uber
│   │   ├── 121-system design uber
│   │   │   └── 121-system design uber.html
│   │   ├── 122-requirements of ubers design
│   │   │   ├── 122-requirements of ubers design.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   ├── 123-high level design of uber
│   │   │   └── 123-high level design of uber.html
│   │   ├── 124-detailed design of uber
│   │   │   ├── 124-detailed design of uber.html
│   │   │   └── MarkDownQuiz
│   │   │   ├── Quiz-1.txt
│   │   │   └── Quiz-2.txt
│   │   ├── 125-payment service and fraud detection in uber design
│   │   │   └── 125-payment service and fraud detection in uber design.html
│   │   ├── 126-evaluation of ubers design
│   │   │   └── 126-evaluation of ubers design.html
│   │   └── 127-quiz on uber s design
│   │   ├── 127-quiz on uber s design.html
│   │   └── Quiz
│   │   └── Quiz-1.txt
│   ├── 31. Design Twitter
│   │   ├── 128-system design twitter
│   │   │   └── 128-system design twitter.html
│   │   ├── 129-requirements of twitters design
│   │   │   └── 129-requirements of twitters design.html
│   │   ├── 130-high level design of twitter
│   │   │   ├── 130-high level design of twitter.html
│   │   │   └── MarkDownQuiz
│   │   │   ├── Quiz-1.txt
│   │   │   └── Quiz-2.txt
│   │   ├── 131-detailed design of twitter
│   │   │   └── 131-detailed design of twitter.html
│   │   ├── 132-client side load balancer for twitter
│   │   │   └── 132-client side load balancer for twitter.html
│   │   └── 133-quiz on twitter s design
│   │   ├── 133-quiz on twitter s design.html
│   │   └── Quiz
│   │   └── Quiz-1.txt
│   ├── 32. Design Newsfeed System
│   │   ├── 134-system design newsfeed system
│   │   │   └── 134-system design newsfeed system.html
│   │   ├── 135-requirements of a newsfeed systems design
│   │   │   └── 135-requirements of a newsfeed systems design.html
│   │   ├── 136-design of a newsfeed system
│   │   │   ├── 136-design of a newsfeed system.html
│   │   │   └── MarkDownQuiz
│   │   │   ├── Quiz-1.txt
│   │   │   └── Quiz-2.txt
│   │   └── 137-evaluation of a newsfeed systems design
│   │   ├── 137-evaluation of a newsfeed systems design.html
│   │   └── Quiz
│   │   └── Quiz-1.txt
│   ├── 33. Design Instagram
│   │   ├── 138-system design instagram
│   │   │   └── 138-system design instagram.html
│   │   ├── 139-requirements of instagrams design
│   │   │   └── 139-requirements of instagrams design.html
│   │   ├── 140-design of instagram
│   │   │   ├── 140-design of instagram.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   ├── 141-detailed design of instagram
│   │   │   ├── 141-detailed design of instagram.html
│   │   │   └── MarkDownQuiz
│   │   │   ├── Quiz-1.txt
│   │   │   ├── Quiz-2.txt
│   │   │   └── Quiz-3.txt
│   │   └── 142-quiz on instagrams design
│   │   ├── 142-quiz on instagrams design.html
│   │   └── Quiz
│   │   └── Quiz-1.txt
│   ├── 34. Design a URL Shortening Service - TinyURL
│   │   ├── 143-system design tinyurl
│   │   │   └── 143-system design tinyurl.html
│   │   ├── 144-requirements of tinyurl s design
│   │   │   ├── 144-requirements of tinyurl s design.html
│   │   │   └── MarkDownQuiz
│   │   │   ├── Quiz-1.txt
│   │   │   └── Quiz-2.txt
│   │   ├── 145-design and deployment of tinyurl
│   │   │   ├── 145-design and deployment of tinyurl.html
│   │   │   └── MarkDownQuiz
│   │   │   ├── Quiz-1.txt
│   │   │   ├── Quiz-2.txt
│   │   │   ├── Quiz-3.txt
│   │   │   ├── Quiz-4.txt
│   │   │   └── Quiz-5.txt
│   │   ├── 146-encoder for tinyurl
│   │   │   ├── 146-encoder for tinyurl.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   ├── 147-evaluation of tinyurl s design
│   │   │   └── 147-evaluation of tinyurl s design.html
│   │   └── 148-quiz on tinyurl s design
│   │   ├── 148-quiz on tinyurl s design.html
│   │   └── Quiz
│   │   └── Quiz-1.txt
│   ├── 35. Design a Web Crawler
│   │   ├── 149-system design web crawler
│   │   │   └── 149-system design web crawler.html
│   │   ├── 150-requirements of a web crawler s design
│   │   │   ├── 150-requirements of a web crawler s design.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   ├── 151-design of a web crawler
│   │   │   ├── 151-design of a web crawler.html
│   │   │   └── MarkDownQuiz
│   │   │   ├── Quiz-1.txt
│   │   │   ├── Quiz-2.txt
│   │   │   ├── Quiz-3.txt
│   │   │   └── Quiz-4.txt
│   │   ├── 152-design improvements of a web crawler
│   │   │   └── 152-design improvements of a web crawler.html
│   │   └── 153-evaluation of web crawler s design
│   │   └── 153-evaluation of web crawler s design.html
│   ├── 36. Design WhatsApp
│   │   ├── 154-system design whatsapp
│   │   │   └── 154-system design whatsapp.html
│   │   ├── 155-requirements of whatsapps design
│   │   │   └── 155-requirements of whatsapps design.html
│   │   ├── 156-high level design of whatsapp
│   │   │   └── 156-high level design of whatsapp.html
│   │   ├── 157-detailed design of whatsapp
│   │   │   ├── 157-detailed design of whatsapp.html
│   │   │   └── MarkDownQuiz
│   │   │   ├── Quiz-1.txt
│   │   │   └── Quiz-2.txt
│   │   ├── 158-evaluation of whatsapps design
│   │   │   ├── 158-evaluation of whatsapps design.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   └── 159-quiz on whatsapps design
│   │   ├── 159-quiz on whatsapps design.html
│   │   └── Quiz
│   │   └── Quiz-1.txt
│   ├── 37. Design Typeahead Suggestion
│   │   ├── 160-system design the typeahead suggestion system
│   │   │   └── 160-system design the typeahead suggestion system.html
│   │   ├── 161-requirements of the typeahead suggestion systems design
│   │   │   └── 161-requirements of the typeahead suggestion systems design.html
│   │   ├── 162-high level design of the typeahead suggestion system
│   │   │   ├── 162-high level design of the typeahead suggestion system.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   ├── 163-data structure for storing prefixes
│   │   │   ├── 163-data structure for storing prefixes.html
│   │   │   └── MarkDownQuiz
│   │   │   ├── Quiz-1.txt
│   │   │   ├── Quiz-2.txt
│   │   │   └── Quiz-3.txt
│   │   ├── 164-detailed design of the typeahead suggestion system
│   │   │   ├── 164-detailed design of the typeahead suggestion system.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   ├── 165-evaluation of the typeahead suggestion systems design
│   │   │   └── 165-evaluation of the typeahead suggestion systems design.html
│   │   └── 166-quiz on the typeahead suggestion systems design
│   │   ├── 166-quiz on the typeahead suggestion systems design.html
│   │   └── Quiz
│   │   └── Quiz-1.txt
│   ├── 38. Design a Collaborative Document Editing Service - Google Docs
│   │   ├── 167-system design google docs
│   │   │   └── 167-system design google docs.html
│   │   ├── 168-requirements of google docs design
│   │   │   └── 168-requirements of google docs design.html
│   │   ├── 169-design of google docs
│   │   │   ├── 169-design of google docs.html
│   │   │   └── MarkDownQuiz
│   │   │   ├── Quiz-1.txt
│   │   │   └── Quiz-2.txt
│   │   ├── 170-concurrency in collaborative editing
│   │   │   ├── 170-concurrency in collaborative editing.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   └── 171-evaluation of google docs design
│   │   ├── 171-evaluation of google docs design.html
│   │   └── MarkDownQuiz
│   │   └── Quiz-1.txt
│   ├── 39. Spectacular Failures
│   │   ├── 172-introduction to distributed system failures
│   │   │   └── 172-introduction to distributed system failures.html
│   │   ├── 173-facebook whatsapp instagram oculus outage
│   │   │   ├── 173-facebook whatsapp instagram oculus outage.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   ├── 174-aws kinesis outage affecting many organizations
│   │   │   ├── 174-aws kinesis outage affecting many organizations.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   └── 175-aws wide spread outage
│   │   ├── 175-aws wide spread outage.html
│   │   └── MarkDownQuiz
│   │   └── Quiz-1.txt
│   ├── 4. Non-functional System Characteristics
│   │   ├── 10-availability
│   │   │   └── 10-availability.html
│   │   ├── 11-reliability
│   │   │   ├── 11-reliability.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   ├── 12-scalability
│   │   │   └── 12-scalability.html
│   │   ├── 13-maintainability
│   │   │   └── 13-maintainability.html
│   │   ├── 14-fault tolerance
│   │   │   └── 14-fault tolerance.html
│   │   └── 15-let ai evaluate your non functional requirements skills
│   │   └── 15-let ai evaluate your non functional requirements skills.html
│   ├── 40. Concluding Remarks
│   │   └── 176-conclusions
│   │   └── 176-conclusions.html
│   ├── 5. Back-of-the-envelope Calculations
│   │   ├── 16-put back of the envelope numbers in perspective
│   │   │   └── 16-put back of the envelope numbers in perspective.html
│   │   └── 17-examples of resource estimation
│   │   └── 17-examples of resource estimation.html
│   ├── 6. Building Blocks
│   │   └── 18-introduction to building blocks for modern system design
│   │   └── 18-introduction to building blocks for modern system design.html
│   ├── 7. Domain Name System
│   │   ├── 19-introduction to domain name system dns
│   │   │   └── 19-introduction to domain name system dns.html
│   │   └── 20-how the domain name system works
│   │   ├── 20-how the domain name system works.html
│   │   └── MarkDownQuiz
│   │   ├── Quiz-1.txt
│   │   ├── Quiz-2.txt
│   │   ├── Quiz-3.txt
│   │   └── Quiz-4.txt
│   ├── 8. Load Balancers
│   │   ├── 21-introduction to load balancers
│   │   │   ├── 21-introduction to load balancers.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   ├── 22-global and local load balancing
│   │   │   ├── 22-global and local load balancing.html
│   │   │   └── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   └── 23-advanced details of load balancers
│   │   ├── 23-advanced details of load balancers.html
│   │   ├── Codes_1
│   │   │   └── haproxy.txt
│   │   └── MarkDownQuiz
│   │   └── Quiz-1.txt
│   └── 9. Databases
│   ├── 24-introduction to databases
│   │   └── 24-introduction to databases.html
│   ├── 25-types of databases
│   │   ├── 25-types of databases.html
│   │   ├── Codes_1
│   │   │   └── main.json.txt
│   │   └── Quiz
│   │   └── Quiz-1.txt
│   ├── 26-data replication
│   │   ├── 26-data replication.html
│   │   ├── MarkDownQuiz
│   │   │   └── Quiz-1.txt
│   │   └── Quiz
│   │   └── Quiz-2.txt
│   ├── 27-data partitioning
│   │   ├── 27-data partitioning.html
│   │   └── MarkDownQuiz
│   │   └── Quiz-1.txt
│   └── 28-trade offs in databases
│   └── 28-trade offs in databases.html