The 5W’s of Software Products

Over the last decade of building software products, I’ve noticed a pattern: product initiatives are more likely to fail if they don’t have the right roles in play.

Why, What, How, When, and Who: Each of these five questions needs a specific name assigned to it. Job title and management lines may not matter, as long the demand for the role is met. One person can play every role, or multiple people can play each role. Let’s dig in:

Why: The Executive Sponsor

The executive sponsor defines the strategy for the product. They believe in the idea, they advocate for it, and they’re bought in to its success. Depending on the organization, this might be a C-level executive, a product manager, an engineer, or an interested stakeholder. It could be anyone. Seniority may matter depending on the size of the initiative and the corporate culture; ideally this person needs enough influence to guide it through to success.

What: The Product Lead

The product lead internalizes the Why and works closely with customers, engineers, and stakeholders to determine what gets built. They don’t just gather requirements, they become subject matter experts, understand what motivates and incentivizes the customer, and determine what should be built next to best create value for the customer. This role is quite a difficult one, as they’re perpetually stuck between a rock (customers) and a hard place (engineers) without direct authority over execution.

How: The Tech Lead

The tech lead determines the best technical approach to delivering the product. An effective tech lead doesn’t only break down user stories into technical tasks, they own the overall technical design and architecture. They must deeply understand the Why and the What in order to deliver a viable product in a reasonable time frame while limiting the future impact of technical debt. The How and the What go hand in hand, so it’s important that the tech lead and the product lead have an effective working relationship.

When: The Project Manager

Great project managers are force multipliers. They coordinate the development process, enabling cross-team communication, keeping an eye out for scope creep, and minimizing the impact of change within a sprint/development cycle. Done well, their work promotes productivity, keeps team members focused, and minimizes the impact of blockers. They also regularly gather and report important metrics such as time allocation, capacity constraints, notable progress and escalation-worthy blockers to management.

Project managers work closely with the People Managers to ensure that the right people are allocated on the right projects and aren’t being spread too thinly. In my experience, the best project managers act as lubricants: they enable higher collective productivity by adding the minimum necessary amount of process required to succeed, rather than making the process itself the goal.

Who: The People Managers

In many organizations, the reporting lines for each team member differ. Forcing one manager to oversee all roles leads to less growth within each job discipline. Divorcing the reporting relationship from the team structure creates freedom to focus on growth and specialization within each role. People managers help their team stay focused, happy, and productive. They ensure that their team members are growing, are receiving frequent and constructive feedback, have regular reviews, are compensated increasingly over time (commensurate with growth), and have healthy working relationships with their coworkers.

Mind the Gap

The likelihood of success decreases when these roles go unfilled. Without an executive sponsor, you might be wasting your time working on something that doesn’t matter to the business. Without a product lead, there’s a good chance you’re building the wrong thing. Without a technical lead, be prepared to face with technical debt in the future. Without a project manager, delivery could become painful and challenging. And without engaged people managers, you might be allocating your best resources on the wrong things.

Make your team structure work for you. Fill each of these roles and you’ll greatly improve your ability to execute.

Big thanks to Kasey Klipsch for being a great sounding board on many software development and management concepts over the last five years.