I require blog posts that would help teach software developers in thinking and learning about designing large systems. A single post will be concerned with a single system, such as Facebook, Whatsapp, Netflix etc; and would get into detail about designing such a system along with the various factors to consider such as how scaling would work, various components that would go into building these systems and what area each of these components would be responsible for. A structure that I have in mind for these posts is provided below as an example:
1. Definition and requirements of the system
2. Scale estimation and constraints
3. High level design
4. APIs and Low level design
5. Database schema
6+ Areas of the system that are complex and need a deep-dive
However, I'm open to a different structure if you have something else in mind. The post should also have diagrams and illustrations to aid in visual learning, wherever applicable.
This is a long term project and I plan to get at least 25 such posts written. For consideration, please provide a per-post-rate, and a post written as described above on any one of the following topics:
1. Creating a Truecaller-like App
2. Creating an on-demand VM allocation system like DigitalOcean
3. Creating a Netflix-like system
4. Creating a Coursera-like App
5. Creating an IDE for your favourite language
About the recuiterMember since Sep 1, 2017 Gajendra K.
from Maharashtra, India