Product managers and engineers — a tale of two frenemies

Lennon Liao
Atlassian Product Craft Blog
8 min readDec 16, 2022

As a product manager, when was the last time you had a disagreement with your engineers? Does this sound familiar:

Engineer: It’s unlikely that we will be able to deliver features A and B by the date you provided. We should just ship feature B first.

Product Manager: What if we put your other projects on the back burner, approach feature B differently and put in some extra hours to include feature A?

Engineer: It turns out feature A is more complex due to dependencies with XYZ. We have to wait for XYZ to complete their system upgrade. Otherwise, anything we build today will be throw-away work and we have to start from scratch again in a month’s time. Should we aim to deliver feature B first, and come back to A later on?

Product Manager: Hmm, I’m not sure if feature B alone will deliver the desired customer impact. Let’s have a quick huddle and come up with other options.

It’s not uncommon for Product and Engineering to butt heads. In fact, if your company creates each role and team with a clear set of strategic objectives that put the business first, you will often find some tension across your organization. This is not necessarily a bad thing because these individuals will be advocating for what they believe is best for your company.

Photo by jean wimmerlin on Unsplash

In this article, I’ll share why it is perfectly normal for tensions between Product and Engineering to exist, and steps you can take to turn that tension into triumph for your product and business.

Product and Engineering are joined at the hip

Photo by Aliya Amangeldi on Unsplash

Product managers are cross-functional leaders who rally teams across engineering, design, marketing, sales, customer success, etc. to get behind a shared product vision and strategy. When it comes to day-to-day product execution, product and engineering are joined at the hip. A healthy relationship between the two is paramount to building great products. When it goes well, we are partners in crime, marching shoulder to shoulder toward a shared mission. When it goes badly, there’s wasted work, pent-up frustration, and even resentment.

The reality is that these two functions can’t live without each other. A product company can’t survive with just a PM team and no engineers. While a PM team might be able to set a compelling product strategy and translate user pain points into business requirements, the lack of an engineering team means there is no one to build products to solve user pain points. On the flip side, a company with a stellar engineering team but no product managers might get by for a while. But it’s unlikely that the company will scale without PMs to own and prioritize the customer problems to solve to drive the most business impact.

Tensions between Product and Engineering are signs that the ‘system is working’

One of the core tenets of product management is to articulate what to build and why. Our job is to establish a prioritized list of projects that will deliver value for our users, and work with stakeholders to ensure our proposed roadmap items can be delivered with high confidence.

The amazing product idea you drew on a whiteboard, with all the shiny features you’re confident will delight users? Not feasible. Engineering’s job is to build products that work. They have to juggle new priorities coming from your roadmap and pay back technical debt. It’s sometimes a constant battle between adding new features, versus improving the ‘band-aid’ solution for a prior project we built. It’s evident that the goals of product and engineering are opposed, and understandably so. This is a classic source of tension between product and engineering.

Product managers want to deliver products that create value and impact quickly, while engineers wants to build things right.

Why is this tension important?

When both parties advocate strongly to achieve their respective goals, the healthy tension created ultimately helps serve the best interest of the product and the company. A few months ago, I had a disagreement with my engineers where I advocated prioritizing most of our engineering resources on projects designed to deliver user delight and drive virality for the business. However, my engineering counterpart felt strongly they needed to spend the next few sprints beefing up our platform’s security posture and operational readiness before opening up more features to the market.

Both parties have valid reasons for pushing their own agenda forward. If either team wasn’t advocating for their respective goals, this lack of tension would result in the product being underdeveloped in certain areas and not meeting customer needs in others, creating a lose-lose scenario for the business.

Managing that tension and turning it into triumph

It is imperative that product managers and engineers recognize they are part of the same team with shared business goals, but with distinct and sometimes conflicting internal goals. So how should product managers work with engineering to manage this tension and build healthy relationships?

1. Align on strategic direction and establish trust

Product managers set the product vision and formulate a winning strategy. They should understand their customers and the user problems they want to solve so damn well that they will always have more features to build than can be delivered realistically at any given time.

Engineering sets the architectural vision and determines the technical strategy for the product. They are constantly honing in on their technical expertise to ensure they provide every product with the best opportunity for technical success, based on the strategic vision they receive from Product.

One way to foster shared understanding and alignment is to communicate regularly the strategic direction of the product to your engineering team. At Atlassian, we use Confluence to document our product strategy and invite our engineering team to review, ask questions and also contribute to it from a technical perspective. This is a living document that provides all stakeholders clarity about where the product is going and helps engineering think about the technical strategy to support our product goals.

Additionally, consider having at least a monthly sync with your engineering counterpart to understand and reassess each other’s strategic plans. As the market landscape evolves and as new user pain points get uncovered, this is a great opportunity to discuss and realign on the path going forward so that there are no surprises when it comes to day-to-day tactical execution.

2. Include engineers in product ideation and decisions

Some product managers assume it’s on them to do all the product exploration. They lock themselves up in a room with their designers and marketers to come up with an ambitious vision and dump it on the engineers for implementation.

At Atlassian, engineers are heavily involved in the product lifecycle, starting from the beginning. This enables them to understand why and how product decisions are made. First, they are invited to our end-user research interviews so they can hear first-hand the user’s experience and pain points associated with our products. These interviews are also recorded and shared out, so any team member can refer to them at a later date. This is a great way for all team members to keep our fingers on the pulse of our users, and provide relevant context for some of the product decisions we make.

Based on input that has been gathered across the company and customers, we will also include our engineering team to participate in brainstorming what the solutions would look like to best solve our customer pain points. Last month, my team conducted a product brainstorming session with our team of 20 engineers. Everyone was empowered to come up with ideas on the whiteboard and we worked collaboratively to refine them and converge on ideas that will make it to our product roadmap. Some of our roadmap items today come from engineers who proposed unique ideas stemming from creative technical solutions.

If you haven’t done so before, consider including your engineers in your next product ideation. You would be surprised to hear some great ideas and perspectives. This is a great way to bring them along on your product journey and build a healthy relationship.

3. Share leadership and credit

One sure way for product managers to hurt their relationship with engineers is by hoarding all the credit. They claim that all product ideas were conceived by them or they take up the most air time when presenting to executives. They behave like they are the most important person on the team.

At Atlassian, we embrace the concept of a leadership triad. The classic triad comprises a product manager, engineering lead, and designer with shared leadership and responsibility without any one person being “in charge”. For example, the triad owns the product roadmap, where they are collectively responsible for deciding what to do next. There are several considerations that go into the roadmap — business priorities, user experience, engineering team health, acceptable level of tech debt, etc. The triad is responsible for balancing all these competing factors to determine what goes into the roadmap. No one person has a monopoly on this. Similarly, the triad is responsible for setting and achieving the team’s Objectives and Key Results (OKRs). When our OKRs are at risk, we collectively come up with alternative ways to de-risk and create a path to “green”. We win as a team, we lose as a team.

Each role within the triad has a clear responsibility, but we all work together to share our viewpoints and drive better solutions together. We may have different points of view, but we’re all cognizant that we’re one team working towards shared goals.

Closing thoughts

A healthy relationship between Product and Engineering is important to the success of any project. It’s perfectly normal for both parties to butt heads along the way. In fact, I would argue that something is amiss if the relationship between the two is always smooth sailing. Imagine if a product manager is constantly happy with everything her engineering team delivers, even if it is delayed beyond the original timeframe set by the latter. Or how about engineers who are quietly executing all of the non-feasible asks made by the product manager? This is undeniably a lose-lose situation for the company, the product, and the customer.

The next time you have a disagreement with your engineering team, pause for a second and have a candid conversation with them on how to find a middle ground that will serve in the best interest of the company, the product, and the customer.

I would love to hear how you handle tensions with your engineers today or how this blog has helped you work more effectively with them.

--

--

Lennon Liao
Atlassian Product Craft Blog

SaaS product leader. Travel enthusiast. Currently PM @ Atlassian