Have you ever heard someone say, “I’m a jack of all trades but master of none”? Usually, it’s not a compliment. However, originally, it was.
The full saying actually goes: “A jack of all trades is a master of none but oftentimes better than a master of one.”
There is something to be said for standing out as an expert, but it’s also important to know a little about the whole process. Sometimes breadth of skills outweighs depth of expertise.
The same holds true for successful teams that embrace sound Product Culture by emphasizing a team over function mindset because it:
- Creates efficiency
- Puts the customer’s needs first
- Keeps priorities in the right order
- Delivers value
- Benefits the bottom line
Customer Success is a Team Effort
Product development teams usually consist of specialists. In the best teams, though, each member puts aside their specific roles and does whatever is needed to meet the common goal. There is a mutual understanding amongst the team that everyone is in the same boat rowing to get to the same destination.
“I worked with a team of engineers who took on writing documentation for a full quarter. The team had been established to make their SDK easier to consume. They talked to customers, though, and discovered it was already easy enough, just poorly documented. The doc team was fully allocated to other things, though. So they switched gears and solved the real customer problem. Successful customer implementations jumped by 3x and the team celebrated.”
Bruce McCarthy
The best teams don’t say, “that’s not my job.” Instead, they understand that it’s everyone’s job to make the customer successful.
Efficiency Starts at the Team Level
You might think a team achieves efficiency by routing each task to the best resource. It’s tempting to have highly trained, highly paid specialists only focus on their specific job because the downside is asking people to do work they’re not the best at performing. Now, on a task-by-task basis, I would say yes. However, in my estimation, that’s the wrong measure of efficiency. Team success shouldn’t be how much work we did but rather answering yes to these questions as many times as possible:
- Did we meet our customers’ needs?
- Did we make them feel awesome and powerful?
- Did we make them want to use our product forever?
For this very reason, product teams that value team over function also know efficiency in output is not as important as effectiveness in outcomes.
The Danger of the Bottleneck Effect
A team over function mindset also promotes efficiency by preventing the bottleneck effect.
Often in software organizations, some technical specialists always do specialized work on an obscure part of the software platform because no one else knows it, and it needs to be correct.
However, that expert might not always be available. It creates a bottleneck when that particular individual isn’t available to perform the specialized task, which also backs up the rest of the team and the whole product development process.
It’s possible that everyone on a team will be optimally busy, but you won’t have any results. When there is only one person completing a necessary task, it causes the rest of the team to find other busy work while they wait. The problem is, often, this work is secondary and much less leveraged in moving a product forward.
“One product manager I know asked a developer why she was working on something low priority. ‘I can’t work on the higher priority stuff because I’m waiting on changes to the API. It’s ok, though,’ she added, ‘because I have this work I can do.’ Work isn’t the point, though. Solving pressing customer problems is.”
Bruce McCarthy
This team was using valuable developer time on low-priority tasks while waiting on a specialist, and what’s worse, they could be tied up for weeks or even months. Yes, they might be efficient at these jobs, but they’re still inefficient in terms of providing value.
When teams adopt this practice in response to a bottleneck effect, they mistake efficiency at the task level for efficiency in delivering value.
Product teams should be willing to assign a “less expert” team member to get the high-priority jobs done because embracing team over function practices makes it possible to iterate and deliver value to customers faster.
Objections to the Team Over Function Mindset
Some engineering managers would object to many of these team over function claims, saying there are some cases where you need the expert because a mistake is too risky. You may need to wait for an expert in a highly regulated situation, when security is involved, or where there could be physical danger to people. Agreed. But those situations are the minority, and in most cases, you can accept a small dip in quality to get the job done sooner.
There are gray areas, of course, where expertise would still help ensure a good result. The solution is to make the expert an advisor, coach, or reviewer for anyone else on the team making changes in their area. Usually, experts need less time to review changes than to make them.
“A MedTech company needed to quickly adapt their solution to new information exchange standards. Their database team was underwater with other work, though, and it would be months before they could update the schema, a delicate job. One of the developers was able to produce an updated schema for them to review (a matter of hours). With their supervision, this developer updated the schema and they met a critical compliance deadline without derailing the database team’s other work.”
Bruce McCarthy
Teams Take a Well-Rounded View
A team over function approach also allows team members to get a wider view of what their whole team is building and how it all works.
Developers often resist doing work outside of their specialty. Front-end developers sometimes see backend work as a necessary evil, while backend developers sometimes look down at their front-end colleagues. The customer benefits, though, when everyone knows how the whole system comes together and, at least at some level of proficiency, is able to get necessary work done.
This practice is important both in terms of efficiency and delivering value. And what’s more, working across these arbitrary lines of specialty makes for a highly-skilled, more well rounded team. Win-win.
Embracing team over function is about skill development mixed together with effective teamwork to accomplish the most important tasks that lead to locking in lifelong customer satisfaction.
That is the goal.
That is the measure of success.
That is great Product Culture.