I thought this was going to be about system engineering, but it's just about web scale distributed computing. Disappointing, because I'm digging into systems engineering at the moment and got a bunch of books on it for Christmas, plus thumbing through the SEBoK wiki [1] and associated content.<p>1: <a href="https://www.sebokwiki.org/wiki/Guide_to_the_Systems_Engineering_Body_of_Knowledge_(SEBoK)" rel="nofollow">https://www.sebokwiki.org/wiki/Guide_to_the_Systems_Engineer...</a>
It seems like all such resources are about web-scale distributed systems and the content/methods are quite standardized.<p>What about other large-scale systems? E.g. desktop applications - for instance, how to design a large-scale desktop system such as Adobe Photoshop or MS Office.
Past related threads:<p><i>Learn how to design large-scale systems</i> - <a href="https://news.ycombinator.com/item?id=17522362" rel="nofollow">https://news.ycombinator.com/item?id=17522362</a> - July 2018 (185 comments)<p><i>The System Design Primer</i> - <a href="https://news.ycombinator.com/item?id=13823979" rel="nofollow">https://news.ycombinator.com/item?id=13823979</a> - March 2017 (57 comments)
I think this is very valuable and helpful.<p>What really matters I think is when you really need to go this route?
Wat what kind of traffic / transactions/s level do you need to (re)design for this?<p>Or even, by what metric would you opt for this solution?<p>I mean, just buying a bigger instance will get you a long way and if you offset that cost to development time / effort / lost opportunity, how will the scale be tipped?