What Should a Product Owner Do with an Incompetent Team?

Published on
5 minute read

As a product owner, you might sometimes face the challenge of working with a team that isn’t meeting expectations. Incompetence in a team can be frustrating, but it’s essential to approach the situation thoughtfully and strategically before taking any drastic steps. So, what should you do if you find yourself in this predicament? Let’s dive into it.

🧐 First Things First: Define “Incompetence”

Before jumping to conclusions, it’s critical to distinguish between true incompetence and lack of knowledge or experience. Sometimes, what we perceive as incompetence is simply a gap in training, exposure, or communication. Let’s break down a few scenarios:

Are They Really Incompetent?

  • Lack of knowledge: Maybe the team has never been exposed to the right tools or processes. This isn’t incompetence but rather a training opportunity.

  • Inexperience: Sometimes, the team might be new to a certain technology or domain. They need time to grow.

  • Malice vs. Incompetence: Be careful not to confuse incompetence with malicious behavior. A truly malevolent team member could be worse than someone simply lacking skill. More on this later.

đŸ”„ When It’s Time to Let Go

If you’ve determined that the team is truly incompetent, or worse—intentionally harming the project—you need to act. A business cannot thrive with people who don’t contribute positively to the team or the product. In my experience, amazing teams build amazing products, and amazing teams don’t come from incompetence. If a team member or an entire team is genuinely holding your product back, don’t hesitate to let them go.

Steps Before Firing the Team:

  1. Engage and Support: Ensure that you’ve provided every opportunity for the team to improve. Engage them in meaningful ways and offer clear feedback on what’s not working.

  2. Provide Resources: Offer them training, tools, and support. Sometimes, what seems like incompetence is just a lack of proper resources.

  3. Evaluate Progress: After giving them support, check their progress. If they still aren’t meeting expectations, it’s time to consider more drastic measures.

💡 A Personal Story: Incompetence or Strategic Manipulation?

Let me share a story about a team I worked with at a bank. At first glance, their behavior seemed incompetent, but as I dug deeper, I realized it was more complex than that.

I was consulting on a project, helping a team transition from their previous systems to Azure DevOps (or TFS, as it was known then). This team was using Java, and if you know Java teams back then, many were resistant to moving to TFS. That was their first issue: hostility toward change.

The Real Horror Story: No Source Control

This team refused to use source control. They believed it would slow them down, preferring to log directly into their production servers and make changes live. Yep, you read that right—straight into production.

Even worse, each team member had their own server, and they would log in independently to make changes. You can imagine the chaos this caused. How did they synchronize across servers? They didn’t. Each person managed their own server, and the changes were not aligned.

To make matters worse, these weren’t just any servers—they handled real-time banking transactions for a multinational bank. This realization horrified me, and I immediately raised the issue with leadership.

Holding the Bank Hostage

Here’s where it gets interesting. The bank’s leadership knew about the situation but chose to stay silent. Why? Because these team members had essentially held the bank hostage. They knew that if leadership complained, they could leave, and the bank wouldn’t know how to fix the mess they left behind. This wasn’t just incompetence anymore—it was strategic malevolence.

What Should Have Happened?

In this case, my recommendation was clear: Fire the entire team. The organization needed to take the hit, remove the team, and rebuild properly. Keeping such individuals around would only lead to more sabotage and risk for the business.

đŸ‘©â€đŸ« A Word on Training and Knowledge Gaps

Not every team that struggles is incompetent. Often, they simply don’t know better because no one has ever taught them. For example, I’ve worked with teams that didn’t understand basic concepts like source control or how to properly manage code branches. This isn’t malicious behavior or incompetence—it’s a gap in knowledge.

How to Address Knowledge Gaps

  1. Training: Provide structured training sessions to fill those gaps.

  2. Mentoring: Pair inexperienced team members with seasoned veterans who can guide them.

  3. Continuous Feedback: Give them regular feedback so they know where to improve.

Teaching and nurturing your team can transform perceived incompetence into competence. However, if after extensive training, the team still doesn’t improve, it may be time to part ways.

đŸš« When to Cut the Cord

So, when do you finally decide to fire the team?

  • Malicious Behavior: If the team is intentionally holding your project hostage or creating unnecessary risk, fire them immediately. Don’t let them sabotage your business any further.

  • Lack of Improvement: If the team has been given every opportunity to improve but fails to do so, it’s time to let them go.

  • Cultural Misalignment: Sometimes, the team might be technically competent but not a cultural fit. If their way of working doesn’t align with the organization’s values and goals, it’s worth considering a replacement.

Key Takeaways 📝

  • Amazing teams build amazing products. If your team isn’t performing, take action.

  • Distinguish between incompetence and lack of knowledge. Sometimes all a team needs is proper training.

  • Don’t tolerate malevolence. If a team is intentionally holding your organization back, it’s time to fire them.

  • Provide every opportunity for improvement. Engage, train, and support your team before making the decision to let them go.

  • Act quickly when necessary. Prolonging the inevitable only hurts the product, the organization, and ultimately, your customers.

🚀 Moving Forward At the end of the day, a successful product owner understands when to invest in their team and when to cut their losses. It’s not an easy decision, but it’s one that can save your product—and your organization. If you find yourself in a situation like this and need advice or coaching, feel free to reach out. I’m always happy to chat about Scrum, Agile, or DevOps. Let’s build amazing teams together!

So the question is, what does a product owner do if the team are incompetent? Well, if it’s really that bad and the team really are incompetent, I would say fire them and get a new team. That’s ultimately where I would go with that. Now, that predisposes, obviously, we’re going to try our hardest to engage with that team to enable them to have every opportunity to improve. All of the things that you would expect to happen, right? We’re not just going to fire people for no reason. But the fact that the question is the team is incompetent. Don’t work with incompetent people. Don’t hire incompetent people. Don’t keep incompetent people. They are not the people you need in your business to be successful. Amazing teams build amazing products, and amazing teams don’t come from incompetence. So get rid of those folks as quickly as you humanly can.

Now, if it’s they don’t know something that they could have known, that’s not necessarily incompetence. You want to provide them with training opportunities. You want to provide them with knowledge opportunities. You want to provide them with… I don’t know, I’ve never worked with a truly incompetent team. Actually, that is not true. Well, it’s kind of true, kind of not true. I was going to say I’ve never actually worked with a truly incompetent team, but I have. But they were not incompetent in their favour, if that makes sense.

So I worked with a team in an organisation; it was a bank, and they had… man, I’m trying to think of other teams. Yeah, plenty of other teams I’ve worked with that present as incompetent that actually aren’t. So this team that I’m talking about, they… I was a lowly DevOps consultant helping a part of the organisation transition from what they were using before into Azure DevOps, TFS at the time, and this was Java teams. So at the time, if you were a Java team and you had to use TFS, you were already a little bit hostile towards it, right? But this particular team didn’t want to use source control. They believed that it would slow them down. That’s their comment on source control.

And I kind of asked them, I challenged them a little bit and said, “Well, why do you think it would slow you down?” And they’re like, “Well, if we need to make changes, we just log into the environment and make the changes.” So I asked them about how they develop, and it’s like, “Well, we just log into the server, the production server, we open up our IDE, we make changes to the code, and we publish it right away.” And I was kind of like, “But how do you do that publish?” And they’re like, “Well, we just click the publish button and it goes straight into production.” So already, I’m horrified, right? I was horrified already, even more horrified now.

And then I asked, because they have five servers around the world, I said, “How do you keep all of those servers in sync? You know, how do you make the changes across all of those servers?” And they said, “That’s why there’s five of us.” There were five people on this team; each one owned a server independently. And when there were changes needed to the code, they would all log in independently, write their own code in their own way on their server in order to action those changes. So I was even more horrified. And then you find out that it’s the real-time banking transaction system for a multinational bank, and now you don’t want to keep your money in a bank anymore.

And those types of teams, there was a strategic incompetence, right? Because they’re making sure the bank can never fire them. And when I brought it up with leadership and said that this is a massive risk to your business, they said, “We know, but if we say anything, they’ll leave, and then what do we do?” Right? So this small group of people were holding an entire multinational bank hostage for this piece of software, and that’s not okay. That goes beyond incompetence towards malevolence, right? And that level of malevolence, the organisation, this would be my recommendation: the organisation needs to fire that entire group of people and take their lumps for figuring out how to resolve the problem, right? Of actually figuring out the software, getting it out of those servers. If those people are still around, they’re going to sabotage that at all costs because it’s their property. They believe it’s their property; they believe they control it.

So if you have a truly malevolent team, definitely fire them. If you have an incompetent team, probably fire them, but be careful that you’re not reading incompetence into just they don’t know stuff; they’ve never been told. I’ve worked with teams that don’t understand how source control works, that they know how branching works, but they didn’t know how merging worked because nobody had ever explained it to them. So teach them as best they can, get rid of the malevolence, work on the incompetence. But ultimately, if they’re that bad, get rid of them.

Thanks for watching the video. If you enjoyed it, please like, follow, and subscribe. I always reply to comments, and if you want to have a chat about this or anything else, Agile, Scrum, or DevOps, then please book a coffee with me through Nak Agility.

People and Process Personal Pragmatic Thinking

Connect with Martin Hinshelwood

If you've made it this far, it's worth connecting with our principal consultant and coach, Martin Hinshelwood, for a 30-minute 'ask me anything' call.

Our Happy Clients​

We partner with businesses across diverse industries, including finance, insurance, healthcare, pharmaceuticals, technology, engineering, transportation, hospitality, entertainment, legal, government, and military sectors.​

Hubtel Ghana Logo
Xceptor - Process and Data Automation Logo
Kongsberg Maritime Logo
Workday Logo
Bistech Logo

CR2

SuperControl Logo
Teleplan Logo
Philips Logo
Trayport Logo
Genus Breeding Ltd Logo
Higher Education Statistics Agency Logo
Ericson Logo
New Signature Logo
Brandes Investment Partners L.P. Logo
Boeing Logo
MacDonald Humfrey (Automation) Ltd. Logo

NIT A/S

Nottingham County Council Logo
Department of Work and Pensions (UK) Logo
Royal Air Force Logo
Washington Department of Enterprise Services Logo
New Hampshire Supreme Court Logo
Ghana Police Service Logo
Hubtel Ghana Logo
Genus Breeding Ltd Logo
MacDonald Humfrey (Automation) Ltd. Logo
Lean SA Logo
Boxit Document Solutions Logo
Healthgrades Logo