System Design Interviews or not: Why take this course?
What are we learning in this course?
This course is useful for you if
- You are building a scalable web application - whether at a startup or a large company
- You are preparing for System Design Interviews
My goal in this course is to help you understand the following three things:
- Fundamental concepts and terminology related to Distributed Systems, e.g., CAP theorem, Hashing, Sharding, Consistency, etc.
- What are the key factors to consider while designing a distributed/scalable system?
- How to evaluate different solutions/approaches to scale based on the requirements of your application.
We will be focusing on the practical aspects of creating and maintaining scalable systems. If you have used or plan to use a cloud service like AWS, Azure, etc., get ready to look under the hood. Even though we are taking a practitioners approach, we will still spend a considerable amount of time on the theoretical distributed system concepts that are required. Of course, we will skip the extremely theoretical concepts like failure modes and Amdhal’s laws.
Case Study: Filtragram
As a case study, we are going to build a web-scale application called Filtragram. The name might sound ...
Access this course and 1500+ top-rated courses and projects.