Some thoughts on dependencies:
It is impossible to have perfect coherence between strategy, org structure, skills/domain knowledge, and architecture. Therefore, you should expect that some percentage of work will involve dependencies on other groups or teams.
At a high level, I see three types of organizations.
1. In some organizations, leaders actively downplay the impact of dependencies. They expect managers to magically march forth and resolve issues, preserving the mirage of team independence. When the percentage of dependency-laden work is lower, this “works.”
2. In other organizations, the percentage of dependency-laden work is so high, and the appetite to remove the dependencies so low, that they have no other choice but to institutionalize the incoherence and project/program-manage the heck out of things.
3. Finally, you have some organizations that are actively working to re-architect, introduce platforms, add enabling teams, accept the current mess, and gracefully bring things to a better place.
In many rapid-growth tech companies, it is the “independent” teams—or teams that have the power to request whatever they want—that actually limit the ability to fix this problem! They advocate against any sort of process or workflow that forces them to show their work. They hate the overhead. They don’t like being dragged down.
Meanwhile, the shared teams, GTM teams, etc., are struggling as second-class citizens, overwhelmed by requests, and constantly blamed for things being slow.
Not all dependencies are bad.
If you want to do more integrated, coherent work that spans touchpoints and experiences, you are going to have dependencies. This is where program and project managers come in because, with the right approaches, they can preserve the independence of the pieces while making sure the “whole” fits together.
These types of dependencies are very different from blocking dependencies or the need to coordinate super closely across teams.
I do think that a reasonable metric for most companies is the percentage of teams that can operate fairly independently. But I don’t think this percentage should be 100%, or even 90% (maybe 80%?), because that might indicate a lack of cohesion.
Finally… the biggest issue.
The biggest issue with dependencies is when teams try to juggle all of their “other” work and then be a part-time working group member on the big cross-cutting thing.
That is bound to fail!
Managers get too defensive and try to act as human load balancers. Commit to the big messy project and knock it out, even if it means forming an ad hoc team.