Software engineering is so back.
When designing systems, you want the important details to be right. Especially with authentication and authorization.
From an architecture level, you can know which classes are important to review and which ones are not.
Yeah that is how I see it.
In Software Engineering, we learned about requirements, testings, system design, UMLs, etc, and those seems to be more relevant than ever.
Agile is dead. It presumed writing the code was the slowest part of the cycle. Now it makes more sense to only start writing code when the requirements are known as the code is quick and low cost to change if/when the requirements change later.
There are two problems that arise from cheap code:
1. You get complexity back at the speed that you add code. Also the complexity compounds.
2. As a human you are still responsible for your code, and you need to understand how the important parts of the code base work.
When you combine these problems, you get a complicated code base where you don't understand the important parts.
That is why software design is getting a comeback. It actually helps with both problems. Less complexity and more understanding.