CTO Fraction

A diverse team of engineers and product managers collaborating in a modern office space, demonstrating how to balance product and engineering priorities in a tech company.

How to Balance Product and Engineering Priorities

Product and Engineering teams often find themselves at odds when trying to balance product and engineering priorities. They struggle to decide how much “product” and how much “engineering” work should be done in a particular time period. Typically, the Product team advocates for features that benefit the customers directly and increase company revenue and profitability. On the other hand, Engineering wants to prioritize work that, in the long run, also benefits the customers and the company, but whose immediate value is harder to see. This includes security, infrastructure, refactoring, DevOps work, etc. Ignoring Product priorities will lead to fewer customers, reduced revenue, and ultimately reduced profitability. Ignoring Engineering work will lead to technical debt, security issues, quality issues, and ultimately expose the company to risks. This slows down Engineering production, which will lead to fewer customers, reduced revenue, and ultimately reduced profitability.

 

Definitions of “Product” and “Engineering” Work

For the purposes of this article, we will use the following definitions:

Product Work: Features that directly enhance the product. They add new functionality or improve existing ones to directly benefit the end user. When this work is completed, customers reap an immediate and visible benefit. This is the main work that the Product team advocates for and prioritizes.

Engineering Work: Work that indirectly enhances the product or directly enhances the software development process. Examples include improving the CI/CD pipeline to deploy faster, addressing security issues to prevent future breaches, re-architecting major software components to make them more extensible and easier to maintain, refactoring brittle and difficult code, etc. The Engineering team is usually the only one who advocates for this work, as they are the only ones dealing with the technical complexities of the product and the SDLC.

 

The Problem in Product vs Engineering Prioritization

In many cases, the Product team is focused on their priorities, while the Engineering team is focused on theirs. Both sides fail to see the importance of the other side, causing friction and tension among the two groups. Instead of operating as partners, they end up turning against each other. This destroys collaboration, creates a culture with an “us vs. them” mentality, and ultimately reduces overall productivity. The end result is unhappy customers and decreased business revenue and profitability—a lose-lose situation.

 

Key Elements to Balance Product and Engineering Priorities

Usually, the above problem stems from two separate issues: culture and process.

The cultural issue occurs when the way of thinking among Product and Engineering team members is misaligned. Each has a narrow focus and fails to see the big picture in relation to the company goals. By doing this, they only see part of the problem and vehemently advocate for solving it. In that endeavor, they fail to see the other part of the problem, represented by the other side, and end up optimizing the part while forgetting the whole.

The process issue happens when the two teams do not know how to process all the information and make the right prioritization decisions. In this case, they may or may not have a cultural issue. What is at play here is an inability to make decisions and filter down all the priorities to the most important ones. It is an inability to properly balance the right proportions of product and engineering work.

Therefore, to properly balance product and engineering priorities, a tech company must address both issues and in this order:

 

1. Cultural Alignment Between Product and Engineering Teams

First, work towards creating a collaborative culture where Product and Engineering teams:

  • See themselves as partners and work together collaboratively.
  • Are aligned around the same company goals, which are the drivers for all their prioritization decisions.

2. Process Alignment for Effective Prioritization

Work towards creating a better process for weighing the options and making the best prioritization decisions as partners. It is critical to mention that if Product and Engineering are very skillful at doing this but lack the first ingredient, “Cultural Alignment,” they will still fail.

My personal opinion is that if the teams have “Cultural Alignment” but lack “Process Alignment,” they still have a chance of making good prioritization decisions of product and engineering work. However, if they lack “Cultural Alignment,” it will be difficult to succeed even if “Process Alignment” is present.

 

1. Cultural Alignment for Product and Engineering Prioritization

The five steps below will help bring cultural alignment to Product and Engineering teams, which is the first ingredient for successful work prioritization.

 

1. Create a Common Vision

Company goals must be clear. This is why I emphasize the importance of vision and strategy. All decisions must point towards those objectives, which become the standard against which to measure the importance of any work. Arguing whether a product feature should be done in the absence of clear company goals is like arguing whether a driver is speeding in the absence of an established speed limit.

 

2. Align Team Motivations

Begin any planning session by reminding all participants that they are parts of a larger whole, working towards the same goals (see the previous point). The group needs to partner and work together to make decisions that best align with the company goals. Everyone is there to first serve the company and its customers, and this should be everyone’s primary motivation. Yes, in that process, we end up serving our teams as well, but that is not the primary reason for being employed. It’s not about anyone individually. It is about how the group can work together to create true business value.

 

3. Facilitate Mutual Understanding

Product should have a sound grasp of the main technical challenges and risks that Engineering has to solve. Product must understand how those challenges and risks can jeopardize the company if unaddressed. Engineering should have a solid understanding of the business goals and the reasons behind them. Engineering must understand how unmet business goals will negatively impact all employees. When this cross-pollination of knowledge occurs regularly, Product and Engineering leaders can unite to make the best prioritization decisions possible.

 

4. Promote Objectivity

When Product presents arguments for why certain features should be built, it needs to provide as much objective evidence as possible to explain and defend why those features are the most important work. When Engineering presents arguments for why certain non-functional features should be prioritized, it also needs to provide as much objective evidence as possible to justify why that work should be done instead of more product features.

 

5. Define Decision-Making Authority

Have a clear process for reaching a resolution in the event of an impasse. Here is one proposal:

The Head of Product has the final word. However, if the Head of Engineering cannot support a decision, it is escalated to the CEO for a final decision. NOTE: Being able to support a decision may or may not mean fully agreeing with it. One can support a decision even if they cannot fully agree with it.

Are you a tech startup or small software company struggling to balance product and engineering priorities?

As a Fractional CTO, I specialize in helping companies like yours launch products and scale effectively. With my expertise, I can guide your team to make the right prioritization decisions, ensuring your business grows smoothly. Learn more about how I can help your company overcome its technical challenges and achieve success.

2. Process Alignment When Prioritizing Product and Engineering Work

The sections below will help bring process alignment, the second ingredient for successful work prioritization, among Product and Engineering teams.

 

Two Approaches

There are two approaches to deciding product vs. engineering priorities.

1. Custom Prioritization

This approach evaluates everything on the table, both from product and engineering sides, every time planning and prioritization happens. This means that both Product and Engineering teams show up with their prioritized list of features and then engage in a custom approach of working together and deciding what work from each list should be done now vs. later. The end result is a priority list of both Product and Engineering features. The ratio of Product vs. Engineering work will vary every time, depending on factors such as company goals, team availability, time-sensitive priorities, etc.

Pros:

  • Higher likelihood of working on the most important things every time

Cons:

  • Mental energy, time, and effort required every time during planning

2. Fixed Percentage Allocation

This approach allows Engineering to dedicate a fixed amount of time to non-functional work, which is agreed upon ahead of time by both Product and Engineering (NOTE: In some cases it is good to allow the CEO and business stakeholders to also weigh in on this distribution, or at least be informed of the decision). For example, it could be decided that 20% of engineering capacity will be indefinitely spent on maintenance, addressing security issues, performance, etc. The remaining 80% will be spent on product features. While the exact split is less important, this approach removes the need to constantly evaluate engineering against product work and vice versa. There could also be an agreement that the fixed percentages will be valid for a certain period only and then be re-evaluated and possibly changed later, based on company needs.

Pros:

  • No mental overhead and struggles every planning session
  • Removes the need to justify engineering over product work and vice versa
  • Engineering does not feel neglected

Cons:

  • Potential to spend time and effort on less important things. NOTE: Most Engineering teams, given a bucket of work they can fill, will always find work to fill it with, whether that work is the most important from a company perspective or not.

Try both approaches and see which one you like better. It is okay to start with one approach and later switch to the other to see which one better fits the company’s needs.

 

Understanding Impact

Usually decisions are interconnected and nothing happens in a vacuum. Understanding the dependencies and impact is important.

Real-World Analogy: Balancing Road Trip Planning and Car Maintenance

Taking a trip in a car with worn out tires.

Options:

1. Start driving – get lucky and arrive to destination without issues

Pros

  • Get to destination fastest 
  • Delay new tires cost

Cons

  • No guarantee for luck – taking a risk

2. Start driving – get a flat tire, without causing an accident

Pros

  • If you have a spare tire, you can still make it to your destination in a reasonable amount of time
  • Delay new tires cost

Cons

  • No guarantee that flat tire will not cause an accident
  • If you have a spare tire, you can replace it on the road but will lose some time
  • If you don’t have a spare tire you may lose more time than having replaced all 4 in the first place, and end up spending more money for towing

3. Start driving – cause an accident because of flat tire or inability to stop, resulting in car and body damage, or fatality

Pros

  • none

Cons

  • Damage your car
  • Damage another car
  • Damage your body
  • Damage other people bodies
  • Cause another to lose their life
  • Lose your own

4. Get new tires first and then start driving

Pros

  • A flat, because of worn out tires, is not likely
  • An accident, because of worn out tires, is not likely

Cons

  • Spend new tires cost upfront
  • Delay the start of the trip

Boiling it down

It comes down to 3 questions:

  1. What is important?
  2. What is the risk tolerance?
  3. What are the probabilities?

Let’s examine these questions in the context of the above analogy example.

1. What is important?

Understand what is most important:

  • Getting to the destination fast?
  • Spending as little money to get to the destination as possible?
  • Travel safety?

PRO TIP:

The answer cannot be: everything is equally important. In that case priority is lost. Therefore, while all things can be important, they cannot be of equal importance.

2. What is the risk tolerance?

Some options present more risk than others. The comfort level about risk taking will play a role in the decision making.

PRO TIP:

The risk comfort level will be directly related to the probability of the bad scenarios happening. Therefore, it is important to have as much data as possible to weigh the probability level

3. What are the probabilities?

Having accurate data will help to get a more accurate estimation of the probability. 

Example:

  • The tires are worn. How worn are they?
    • So worn that I can see some of the bead wire
    • There is no thread at all and the tire surface is pretty smooth
    • Red Zone (Replace Zone): Tread Depth: 2/32 inch (approximately 1.6 mm) or less
    • Yellow Zone (Caution Zone): Tread Depth: 3/32 to 5/32 inch (approximately 2.4 to 4.0 mm)
  • How far is my trip?
    • 50 miles
    • 100 miles
    • 1000 miles
  • What are the roads like on my trip route?
    • Narrow, winding mountain roads
    • Flat and straight highway
    • Interstate highway
  • Do I expect a lot of other cars on my route?
    • Yes, it is a popular route
    • No, not a popular route and it is off-season
  • What weather do I expect during my trip?
    • Snow storm
    • Rainy
    • Warm and sunny

PRO TIP:

Avoid personal opinion and subjectivity as much as possible.

 

Putting it All Together

Product vs. Engineering is like Road Trip vs. Car Mechanics

It is not one or the other; it is both. There has to be a partnership between Product and Engineering where both sides’ ultimate goal is success for the company and the customers.

For this reason, it is important to give consideration to both. The Product and Engineering leaders need to understand each other’s worlds. This is like the driver knowing some things about car mechanics and the mechanic understanding the importance of the trip.

When balancing product and engineering priorities, things are not as simple as deciding between replacing the tires or not. There are numerous decisions that need to be factored together. Therefore, the above example looks a bit more like this:

I need to make it to destination A first, spend 3 days there, then go to destination B, spend a day, and then to C. I have worn-out tires, my yellow check engine light is on, and my battery has been giving me some trouble lately. I have limited time and money, and must make it to all 3 destinations within a limited amount of time. Since I cannot fix all the mechanical car issues at once, nor do I have the time right now, I need to use my money and time in the best possible way to reach my destinations. Once I am through with the trip, I will address the remaining mechanical problems.

Therefore, it comes down to this:

  • Understand both product and engineering priorities and their impact. Both sides need to understand this.
  • Everything cannot be equally important.
  • Personal opinion cannot be a deciding factor.
  • Final decisions need to point to the company goals.

Further Reading