system-design-practical system-design-practical steps/procedures Step 1: Constraints and use cases Step 2: Abstract design Step 3: Understanding bottlenecks Step 4: Scaling your abstract design reference website https://github.com/shashank88/system_design https://www.hiredintech.com/courses/system-design https://practice.geeksforgeeks.org/courses/system-design-live http://blog.gainlo.co/index.php/category/system-design-interview-questions/