How do you prioritize various validated problems?
One way I like to prioritize problems is based on the level of risk these will pose to the final solution. Which are the riskiest assumptions or riskiest bets that will affect the success of your product? (Risk can be defined crudely in terms of Low, Medium, High or in some cases you might have a model with some sensitivity analysis built in). Regardless, if you can quantify the risk (and thus impact) of the problem to the final solution, you have a clear blueprint of where to begin.
A related method is to consider one-way vs two-way decisions. One way decisions are challenging or impossible to reverse - these have multiple downstream effects on the solution. Two way decisions can be reversed easily or adjusted over time once you have more data. I prefer to focus my time and energy on one way decisions first, as these will build the pillars of the product. If there is considerable time or effort spent by your team on a two way decision, you can make the argument to come back to this once you have more information or once all the one way decisions have been made.
Usually, there is a pre-determined prioritization framework that your product org should use to prioritize which problems to work on. There are multiple inputs with different weightage that are used in the prioritization framework, depending on the phase of the product, business and company.
The most common inputs are:
- business and strategic product priorities
- degree of user friction (eg: adoption blocker vs nice to have)
- market and sales priorities (eg: is delivery of a feature important to win against a competitor in this cycle)
- internal priorities (eg: technical debt removal, infrastructure upgrades etc.)
Prioritizing validated problems ensures you are focusing on the most pressing problem that will have the largest impact. It is finding out what will give you the biggest bang for your buck. Prioritization requires a thoughtful and strategic approach. Here are some ways to prioritize various validated problems:
Assess the impact: Evaluate the impact of each problem on the user and the business. This can include factors such as how many users are affected, how much time or money is lost due to the problem, and how much revenue is at stake.
Evaluate feasibility: Assess the feasibility of potential solutions to each problem. This can include factors such as technical feasibility, resource availability, and the level of effort required to implement a solution.
Consider urgency: Evaluate the urgency of each problem. Some problems may be more urgent than others, such as those that impact user safety or result in significant financial losses.
Consider strategic alignment: Evaluate how each problem aligns with your overall product strategy and business objectives. Some problems may be more closely aligned with your strategic goals than others and therefore may be a higher priority.
Involve stakeholders: Involve stakeholders in the prioritization process. This can include designers, engineers, go-to-market team members, as well as users and other external stakeholders. Getting input from a variety of perspectives can help ensure that priorities are aligned with user needs and business objectives.
Use a prioritization framework: Consider using a prioritization framework to help guide the prioritization process. There are many frameworks out there; my favorites and ones that I use frequently are Value vs Effort and RICE.
Prioritization is an art + science thing. The reason I say this is no matter what frameworks you use or apply, you will always be working with less than 100% data. Hence, your past experience is going to guide the recommendation on prioritization. That said here are a couple of dimensions to look at how to prioritize:
- Company Goals:
- Product Goals:
- Define a criteria
- Score the problems
- Identify enough customer development partners
- Constantly Re-evaluate
I typically take the following into consideration for prioritising (in no particular order):
Assess impact: Evaluate the magnitude and consequences of each problem.
Align with business objectives: Prioritize problems that align with strategic goals.
Evaluate urgency: Consider the severity and time sensitivity of each problem.
Consider feasibility: Assess the resources and complexity required to address each problem.
User feedback and demand: Give priority to problems frequently reported by users.
ROI considerations: Assess the value and potential return on investment for solving each problem.
-
Evaluate dependencies: Consider if solving one problem is a prerequisite for others.
The final prioritisation score is a weighted average of all the above. Having said that, its important to adopt an iterative approach: Continuously reassess and reprioritize as new information becomes available.
It depends on the product outcomes you are looking to drive based on your company goals. For e.g. if your NPS is really low then understand what is causing that NPS to be low and prioritize those. If your customers are churning then figure out why and prioritize that. If you have a lot of great capabilities but you are not making money then figure out whether you need to invest in repackaging and pricing.
Every company has come combination of customer growth, retention, and monetization investment. The key is to align with your leadership on the goals to be hit for each of those and then creating a product roadmap that helps you deliver those.
Outside of these you will always have things to improve quality (via bugs).