Software Engineering, Software Architecture, Microservices, Distributed Systems, Systems Thinking.
associate it with choices of infrastructure, language, databases, frameworks, etc. However, it is not usually here where they go too wrong. Most of these evolve with time and end up being technical debt. The teams come to a grinding halt because they fail to understand and follow some fundamental