Our website uses cookies.
Reject AllAllow all

This website stores cookies on your computer. The data is used to collect information about how you interact with our website and allow us to remember you. We use this information to improve and customize your browsing experience and for analytics and metrics about our visitors both on this website and other media.

Reimagining the MVP: Crafting a Market-Leading Product

The New Normal

The minimum viable product, as many founders understand it, does not reflect the reality of how products are developed today.

Building something valuable is no longer about proving a novel concept as quickly as possible. Instead, the modern MVP exercise focuses on creating a version of an idea that is both different and superior to what is currently available. Most of us aren't building for a completely new market. Rather, we're looking for ways to improve existing categories. We need an MVP concept that allows founders and product leaders to iterate on their initial ideas to compete in an existing market.

The MVP practice of creating a hacky product as quickly and cheaply as possible to validate the product is no longer viable. Many product categories are already saturated with numerous alternatives, and to truly test the viability of any new idea, you must build something significantly better.

That approach requires deep expertise in different areas that software agencies can deliver. However, most agencies are still focused on feature factory delivery. That’s a delivery focused on outputs, not outcomes, rarely giving the desired results.

Let me share our approach to working with client problems and align the results you want to achieve. This is part of our work on the concept of Empowered Software Agency. This is our desired client journey.

Listen to client

When clients come to us with a new app or feature request, they naturally come up with a solution and ask for delivery. That solution is based on the best client knowledge of implementing it. We should not stop here. We can only develop the best solution when we understand a deep need. That means that we should ask:

  • Why do they want to build the solution (using the five whys technique)?
  • What is the underlying problem they want to solve?
  • How will they measure the success of the solution?
  • What are the client's constraints (financial, timeline, dependencies, etc.)?

Context is the key to understanding what the client has in mind.

Consulting phase

We can take advantage of our expertise when we understand the client’s deep need for the requested app or feature. We know best how to validate the app idea, the cost of building a solution, our approach, and the complexity. We also leverage our experience in other projects.

That should lead us to build a plan (a strategy?) to reach client goals. We should use the best techniques:

  • like root cause analysis,
  • analyzing user data,
  • talking to users,
  • use our expertise

to deeply understand the problem and prepare a plan the client can understand. Our goal is to define the problem and approach to solve that problem.

The plan should also define milestones and key metrics we will observe during the execution phase. This will allow us to align the leading and lagging indicators with the clients as we execute.

Understanding constraints and measures of success from the previous phase allows us to prepare a plan that is not only viable but valuable. So, the estimated costs over benefits that the client counts on can be measured, and our chances of success can be increased. We should identify risks that increase the client's trust that we know what we are doing.

This phase ends with presenting that plan to the client. It’s essential to have a buy-in from the client. That means that our clients not only listen to our idea, but we ensure they understand it and they can give feedback. We use that feedback to engage clients and be part of this plan. The plan is the best possible solution to achieve the desired success metrics.

The consulting phase is important because I believe it will give benefits that will allow us to generate and capture more value.

Execution phase

Once we have a plan, it’s our reference point during execution. Our service is a unique mixture of consultancy and execution. As we move along the execution, we can refer to the progress of a plan prepared in the previous phase. That allows a decent trust, autonomy, and empowerment for a team.

We need to build the best team capable of executing a plan. That means that we need to know the skills and availability of our members who can drive it. The team should have all the competencies to deliver it. It’s our role to identify blank spots or lack of competencies in the team.

We might revisit a plan as we progress and learn new things. It shouldn’t be set in stone. We have a great reference and when we believe it should be revisited we have materials to work on.

Transparency & Iterations & Continuous Improvement

Open and honest communication is the key that determines how efficient and effective we can be from our first engagement to production deployment.

Every day is vital to learning something new. Every day is a significant investment for our client.

We should leverage the data and our experience and validate our plan and hypothesis with verve to achieve goals for our clients. They are paying us to reduce the risks of building their team. We should be significantly better than the hypothetical alternative team built independently.

We should constantly learn as a team as we go with a plan, revisit it, be critical. Every day counts. Every day can come with new learnings. We should be fast to the market.

Outcome over output

During the consulting phase, we define metrics that will allow us to track our progress as we move along the plan. The client's engagement in the plan helps us define his expected value. That’s the outcome that we work for. This is how our work is measured. This is how we should cascade and align the team around that plan and value. Everybody on the team should be aware of how we are doing.

That’s great information because now we can stop sending timesheets and send the progress updates on the plan and changes in metrics that we agreed on.

We should use Dual Track Agile to do product discovery and development simultaneously.

The role of product management

Product Manager (PdM) is builder, not facilitator. Product managers are responsible for ensuring that what gets built is valuable and viable. And to be clear, this is what makes the job hard. They will have no chance unless you do your homework and prepare. Their role isn’t to implement what stakeholders want. Stakeholders' voices are important, but we must listen to this voice as input. That defines their deep need. The plan from the consulting phase allows you to define problems the team will tackle.

Continuous Product discovery is a critical tool that you need to be good at. Product discovery is how we discover a solution that works – a solution that’s valuable, usable, feasible and viable. There are many techniques they will need to learn to understand how product managers collaborate with designers and engineers to discover a solution worth building.

The role of engineering

The role of engineering is to find the best way ‘how to implement it’. They know technology, architectures, team topologies, planning/review techniques and tooling to find the cheapest way to deliver it.

They are assigned a problem to solve, not a solution to build. That means they must look at data and consider their job once the problem is solved. They need to understand the context of the problem, the business, and how the solution they are building contributes to the overall plan.

They should move fast; I would be happy if we ship the product on every commit and not longer than once a week. No matter what.

I consider other supportive roles in the product team, like QA, business analyst, and researcher, as part of the engineering team.

I believe engineering needs to return to its roots to solve problems. My role model is NASA engineers from ‘60 when they were sending the human race to the moon.

The role of other supportive people

The main role of other supportive roles is to ensure that the core team is focused on product success. Many repetitive activities must be done well to increase the odds of product success, yet they aren’t core. Those should be separated into specialized teams that support the product team the best they can to allow them to focus on product success.

Optimize decisions for product success

Empowered Software Agency is a servant to the client’s product. All decisions made should be optimized for the product success.

Check out our Empowered Service homepage and start building with us here.