Hello everyone, I have decided to start another series. This series will cover up various concepts related to System Design along with real world examples.
I have decided to keep this series such that it's helpful for beginners who are planning to get started with System Design and also for experienced engineers who plan to revise some concepts before an interview.
Feel free to comment and provide feedback if you think I have not explained some concept properly.
System Design: An Introduction
In today's digital age, large companies have the responsibility of handling a large user base while at the same time provide services that are fast and reliable.
Keeping users happy is directly proportional to company revenue. Hence, it makes sense for a company to build its computer systems so they may continue to function despite having problems like natural disasters, power outages, software/hardware failure, etc.
As engineers, our responsibility is not just to react to these problems but to anticipate and mitigate them through proactive system design. Before a single line of code is written, engineers collaborate to understand requirements, foresee potential issues, and devise strategies to address them.
In technical terms:
What to Expect in This Series?
In this series, I plan to cover up a vast set of topics like:
Scaling
Databases
Caching
Data Stores
Consistent Hashing
Authentication / Authorization
Real life case studies
You can reach out to me on: