System Design Academy
All at one place, free guide to ace your next distributed system design interview & become a better engineer.
table of contents
master making better architecture and design decisions for scalable, fault-tolerant, and highly available systems.
I'm aiming to have it finished by the end of Jan 2022. Meanwhile, look for `preview` tag to peek into some of the content I am working on. Join Travis, Avinash & 1340+ others on the waitlist for free early access. Any suggestions? I'm sitting behind pankajtanwar510@gmail.com
Fundamentals of System Design
this section is a quick intro to the basic fundamental concepts of designing distributed system. These tiny essays will help you better understand the critical concepts of system design.
Availability
Fault tolerance
A basic intro to core components
Fundamentals of Databases
This section discusses the fundamental concepts of database engineering that every software engineer must be aware of.
Scaling Databases
Database is a hypercritical component of any application to scale. In this section, we will be leveling up our knowledge by understanding various database scaling concepts.
Database Indexing
Database Locking
Database Tuning & Optimizations
Database Replication
Database Partitioning
Designing Database Schema
Data Storages
In this section, we will deep dive & discuss various data storages (databases), their internals and which one to choose, as per the use case.
Embedded Database
Columnar Database
Time Series Database
Graph Database
Offline Database
Blob Storage
File Storage
Internals of Databases
In this advanced section, we will talk about the intresting internals of databases to deeply understand the inner beauty of various databases.
Data Storage Internals
MySQL Internals
System Design isn't scary.
Stop wrestling with system design. It's time to really learn how systems are built. Join the waitlist to get notified everytime, new content is published.
I won't spam. Pinky promise 🥺