Dear CTOs, Architects and Managers *
* Dear CTOs, Architects and Managers *
I’ve seen squads formed to work on “micro services” designed upfront.
Please don’t! That is not the way to do things in software… You cannot scale for scaling or just to assign tasks… not needed tasks and wasted efforts…
Those Modules contains, at least during its first 6 months, more integration usecases than business user focused feature. This may work in some simple cases but not always.
I would say, often it doesn't…
This kind of practices is the key and and source behind complex distributed system designed with wrong boundaries.
Wrong boundaries unfocuses teams and product from the user needs.
It creates the debugging hell parties and makes us pass days resolving technical problems and thus creates frustration among the process.
A service having more integration-related than business-related methods is a strong heuristic for a growing distributed big ball of mud!
Wrong boundaries designed upfront are very hard even impossible to rework as it implies changing organization, infrastructure, configuration…
Modular monolith is a better trade off. The need behind creating micro services and what it implies should be a differed proved and challenged decision. As this represents a hard dangerous coupling.
“Finding service boundaries is really damn hard… There is no flowchart!” - Udi Dahan
Cheers 🍻
#software #DDD #strategicddd #craftsmanship #leanagile