Agile Advisor

The Product Owner's Dilemma

Agile Advisor columnist Aaron Bjork talks about why it’s both necessary and dangerous to listen to your customers.

How do you know that your Agile team is building the right product? That the value that your team is producing each sprint (iteration), is actually the correct assessment? If you’ve read Clayton Christensen’s book “The Innovator’s Dilemma,” you probably know where I’m going with this article. If you haven’t, I’d highly recommend the book. Why? Because Christensen outlines a trap many organizations fall into when product owners do what seems natural –they listen to their customers.

There’s a common saying that many organizations love to throw around– the customer is always right. Said differently, a company should put customers first. It’s a great statement and one that rings true in many industries. Restaurants, hotels, clothing stores, and other industries go to great lengths to ensure that their customers feel appreciated and loved. This keeps customers coming back, and it’s an easy way to differentiate your company's services from those of your competitors.

How does this relate to software? I often tell others that as a product owner, my job is to first listen to what customers want, and then ultimately, build them what they need. It’s a fine line to walk, but it’s an important one. My existing customers will, no doubt, lead me to making my product incrementally better. They’ll tell me about the rough edges I can smooth over, and they’ll push me to discover new scenarios I can support. But my existing customers will rarely help me recognize something new or disruptive in the market.

Disruptive Technology
You can see why I call this the product owner’s dilemma. Agile teaches developers that they need to be collaborating with customers throughout the software development lifecycle. Engaging customers is critical to your ability to deliver value that meets their needs. This is all true and something I fundamentally believe in. The dilemma lies in the fact that while listening to and engaging with customers, a product owner must also carefully watch and analyze the market landscape. As a product owner, you must pay attention to new, disruptive products or technologies that present threats, and be prepared to make hard decisions about items on the backlog.

I often tell people that a good portion of my job is apologizing and empathizing with customers about things we’re not building. It’s often difficult, but it’s absolutely necessary. A decision to not do something is just as important as a decision to build something new. It’s a bit of a backwards approach to thinking about value, but it’s true.

If you’re a product owner, you might ask yourself, are you just improving on existing products? Or are you paying attention to what’s going on outside of your own product, and looking for that next disruptive technology that could turn your industry or market upside down? It’s the product owner’s dilemma.

About the Author

Aaron Bjork is a Principal Program Manager at Microsoft working on Agile experiences and tooling within Team Foundation Server (TFS). Prior to joining TFS in 2008, Bjork worked as a software engineer and development lead in Visual Studio. He is passionate about Application Lifecycle Management solutions and has a strong desire to see teams improve their software engineering practices. Follow Bjork on his blog at

comments powered by Disqus


  • Visual Studio 2019 v16.7 Ships with Better Git Integration

    Better GitHub integration and other improvements highlight the new Visual Studio 2019 Version 16.7 and first preview of v16.8.

  • Visual Studio Codespaces Private Preview Woos C++ Developers

    Microsoft announced a private preview of Visual Studio Codespaces, which eases the setup and use of cloud-powered development environments that can be used from anywhere for remote development and other scenarios, targeting C++ console app and library developers.

  • Data Prep for Machine Learning: Normalization

    Dr. James McCaffrey of Microsoft Research uses a full code sample and screenshots to show how to programmatically normalize numeric data for use in a machine learning system such as a deep neural network classifier or clustering algorithm.

  • Microsoft Intros Azure Well-Architected Framework Best Practices

    Taking a page from the Amazon Web Services (AWS) book on cloud computing platforms, Microsoft has introduced its own Azure Well-Architected Framework, providing a set of architecture best practices to help users build and deliver great solutions and improve the quality of cloud workloads.

  • Creating a Progressive Web App with Blazor WebAssembly

    Not surprisingly, it's dead easy to create an app in Blazor that runs outside of the browser window and (potentially) in an offline mode. Before you get carried away, though, there are some key design decisions to make.

.NET Insight

Sign up for our newsletter.

Terms and Privacy Policy consent

I agree to this site's Privacy Policy.

Upcoming Events