Domain Driven Design
Because most people's attention spans has been reduced to that of a peanut, this explanation will be heavily summarized, but a lot of effort has gone into reducing it without having to compromise on factuality.
Let's start by imagining that you found yourself in a post apocalyptic world, the world's population has been greatly reduced, and the world's infrastructure has been completely wiped out, no roads, no internet, no computers, no hammers, no shoes. You weren't born into this world but rather saw it crumble, and hence you might have an idea of how you'd like the world and your quality of life to be. Thankfully, you're located in a part of the world where clean fresh water is still available, and there's a moderately thriving ecosystem with enough trees and animals for you to have some potential resources at your disposal.
In this situation, the only tool you have is your body, and by some sort of miracle you don't need to think about how your body works for you to use it. You don't need to breathe manually, you don't need to pump your heart, you can just treat your body as a black box and assume that it ends where your skin does. Your body is a great tool, but if you have ambitions to rebuild the society you once knew, or even a fraction of it, you'll quickly realize that you'll need to have more tools, build infrastructure, setup resource pipelines, and systematize your efforts if you want to see any change within your lifetime.
Where do you start though? There's so much to do, and so much to know. You'll need shelter, where should you set it up, what material do you need, what tools do you need, how far away should it be from other houses, how do you cool it, how do you heat it? The more you think about it, the more questions pop up, where do we draw the line and start doing real work? And perhaps even more importantly, how can we leave checkpoints for ourseleves, so we can work on something, pause to work on something more important that came up, then go back to working on the first thing?
Another issue would be the sheer scale of effort required to put a society together, you can't build the supply chains of material, the farms, the houses, the aquiducts, the waste management, the roads and everything else on your own, which raises issues related to communication and coordination with your fellow survivors.
Those issues have a lot of parallels with what software engineers face on a day to day basis. With modern software, you can practically create anything, you're limited only by your imagination, entropy, and the physical limits of the systems you're using. s