> In at least one of the big tech companies I worked at, team A would need to make changes or add features to some service owned by team B.
Your post is basically a description of the aftermath of this situation. Which is accurate. But the solution isn't in the description of the aftermath.
We don't know what the service does, why team B doesn't want to address team A's needs, can team A use something else and so on.
Things need to be owned by specific teams, because otherwise the codebase turns into a mess of ad-hoc patches concocted with little to no domain insight on the service being edited.
Your post is basically a description of the aftermath of this situation. Which is accurate. But the solution isn't in the description of the aftermath.
We don't know what the service does, why team B doesn't want to address team A's needs, can team A use something else and so on.
Things need to be owned by specific teams, because otherwise the codebase turns into a mess of ad-hoc patches concocted with little to no domain insight on the service being edited.