Hi HN,<p>I am assuming that most Software Engineers don’t get hands on System Design work in their day-to-day job, my questions are:<p>1. How to prep for System Design Interviews, given that most resources out there are very superficial in their explanation of what technology to use, when to use it and why to use it?<p>2. Will becoming good at prepping for System Design interviews actually help in designing large scale systems better?<p>3. If not 2, then how do you become better at designing actual systems?<p>I already know that DDIA is a good resource but it does not help you design concrete systems.
The only way you can get good at system design is by actually designing and implementing a system in your current job. Trust me, I have been trying to learn this from books but it doesnt help at all. But since one year I have been working indepedently on a new project where I had to make a number of design decisions that helped me learn a lot. DDIA is very good resource but doesnt help you design big systems. Only your current work can help you there.<p>So keep looking for new projects are your current job where you can lead a project on your own.