The best product solution I've ever shipped came from a fight. The most expensive failure came from avoiding one. Those two experiences taught me that conflict isn't something to manage away - it's a signal that your team is grappling with real problems, and the outcome depends entirely on how you handle it.
When Conflict Sparked Our Best Solution
Several years ago, I managed a product feature that consistently earned our lowest customer satisfaction scores: an image upload and categorization system. Users had to navigate countless dropdowns to categorize photos after uploading, creating a frustrating experience that generated constant complaints.
Our machine learning team had an automated categorization model achieving about 80% accuracy. The solution seemed obvious: integrate their model. But their system operated on batch processing that worked after images were uploaded, not during. I asked them to create a real-time service. They refused, explaining it would require a major engineering effort.
The disagreement reached a standoff until one of our UI engineers discovered TensorFlow.js, which could run on images client-side as users uploaded them. Initially it achieved only 65% accuracy, but it still saved users dramatic amounts of time. When our ML team saw the working prototype, they offered to help improve the training model. Through collaboration, we eventually reached 80% accuracy without building a real-time service.
Customer satisfaction scores improved dramatically. The initial disagreement forced us to explore creative alternatives that satisfied everyone's constraints. The ML team did want to help improve the customer experience. When the opportunity came for a win-win solution, the ground was set, even though it started with a fight.
The Cost of Avoiding the Fight
The contrast came when I inherited a legacy UX revamp already in progress. The head designer was building three separate experiences: one for internal users, one for external customers, and one for auditing functions.
The approach felt overly complex from the beginning. When my boss specifically asked whether I thought this was the best course of action, I had a perfect opportunity to voice my concerns. Instead, I avoided the difficult conversation. I was new and didn't want to challenge the head designer's expertise immediately.
This conflict avoidance led to months of wasted effort on a project that was ultimately abandoned. We discovered the auditing function was being eliminated entirely, and internal teams would rather use the external interface because they needed to see what users were experiencing. We could have built one interface with some advanced details for internal users, achieving the same goals with dramatically less complexity.
Fighting Well
The image categorization fight produced our best solution. The UX revamp silence produced our worst failure. The difference wasn't whether there was disagreement - it was whether we engaged with it.
High-performing product teams fight more, not less. The difference is how they fight. Strawman your own positions and expect your PMs to do the same. Include opposing viewpoints in major decisions to ensure alternatives get explored. Even if nobody wants the alternatives, give them a chance to convince you. The ability to hold two opposing viewpoints at once is a sign of a strong team. But watch out before things get personal, and establish clear escalation paths when disagreements need resolution.
The teams that learn to fight well don't just build better products. They build stronger relationships through shared problem-solving and mutual respect.