|
|
|
|
|
by proc0
698 days ago
|
|
The core of the problem is that engineers do not own their code. It would be like a chef not owning their food. Engineers are split into teams that the business side of the company decides arbitrarily... and because non-technical leaders are not as familiar or knowledgeable about computer science, they create incorrect abstractions that constrain the solutioning for no reason. Imagine an app where you have feature A, B, C, where A and B are basically the same feature with a few differences, and feature C is completely different. The business side of the company might decide to create three teams, one for feature A, one for features B + C, and another for features A + C. The engineers in each of these teams are immediately setup to create complexity in the long run because the correct abstraction would be A+B and then C. |
|
I agree with team ownership. Unfortunately, teams and their ownership domains are organized in odd ways due to business needs.
However, that suggests to me that there's more reason to house the "ground truth" with the team that owns the ground truth.
If 3 teams each own different features, they'll each write their own business logic.