Category Archives: Software Development

What is Product Management, anyway?

Defining Product Management as a discipline can be hard, here’s everything you ever needed to know!

by Eric Picard

Product Management resides within the “builder” organization, the team responsible for creating products, services, or media offerings to be sold to customers. These offerings are typically developed by engineers, powered by scientists, and designed by product designers. The entire process is orchestrated by Product Managers, who are ultimately accountable for ensuring products are properly defined, developed efficiently, launched effectively, and operate profitably.

The Spectrum of Product Management Work

Product Management spans a wide range, covering everything from what a sales team sells to what an engineering team builds. The work in between encompasses various roles, and in different companies, these roles may be divided differently. Below is a breakdown of the interrelated disciplines, illustrating why Product Management is challenging to define and execute. Note that while each discipline is described separately, Product Managers in many companies may be responsible for multiple (or even all) of these areas in their day-to-day work.

If we move from sales towards engineering, the breakdown sort of looks like this (note that the path isn’t truly linear, so it’s just a loose framework.)

1. Product Marketing / Go-to-Market

Product Marketing involves preparing products for market consumption, ensuring they are presented in a consumable form that sales and marketing teams can utilize to reach customers. Product Marketing is a distinct discipline closely aligned with the builder organizations, although sometimes it reports into Marketing. Product Marketing is not Marketing Communications, and is much more closely aligned to Product Management. Responsibilities include: Developing compelling product positioning that clearly defines the product’s value proposition. Crafting messaging that highlights key differentiators and resonates with target customers. Managing the end-to-end launch process, including internal training, external communications, and post-launch analysis. Sales enablement functions such as creating sales materials, presentations, and demos. A critical deliverable is the Product Positioning document, which includes messages or claims about the product that can be used broadly across the organization and easily transformed into marketing or sales materials. For example, a product positioning statement might be, “Renovate your home with confidence using our easy-to-use device that scans walls for wiring before you begin a project.”

2. Product Strategy / Product Planning

This discipline focuses on determining what to build, requiring extensive research to understand market needs. It includes competitive analysis to understand the market landscape, customer research to gather insights from current, potential, and former customers, and market requirements analysis. The long-term vision, ideally spanning three years, often resides here. A key deliverable is the Market Requirements Document, distinct from Product Requirements Documents, which emphasizes customer needs without detailing implementation specifics. For instance, a market requirement could be, “Customers need a way to find wires inside walls to avoid accidentally cutting them during renovations.”

3. Product Operations

Product Operations might fall under the Product Manager’s purview or exist as a separate discipline, especially in larger companies. This role manages the business of existing products in the market, ensuring product health, profitability and alignment across teams. It involves defining and measuring metrics to ensure product success, optimizing to increase profitability, and collaborating across disciplines to maintain clear communication and alignment. Product Operations is often responsible for pricing, performance measurement, and ensuring products meet KPIs and business goals. Product Operations Specialists work closely with Product Management, Engineering, Marketing, Sales, and Customer Support to align all aspects of the product effectively. A primary task is defining and implementing product dashboards to measure performance against KPIs.

4. Technical Product Management

Often considered the “core” of Product Management, Technical Product Management is responsible for creating and managing a product roadmap. This includes developing a Product Requirements Document that spans multiple releases, breaking it into individual features, and writing specifications. It involves collaborating with Product Design for user-facing features to develop prototypes, design systems, and screen layouts. Technical Product Managers work closely with Engineering to ensure requirements are clear, fostering debate and improvement within a healthy organization. They also collaborate with Sales and other customer-facing teams to ensure feature prioritization aligns with business needs and work with Marketing to ensure demand creation. They often manage daily coordination efforts like standups or scrums, or other mechanisms for coordinating the day-to-day work related to building and releasing software (unless a Technical Project Manager is assigned to the project, in which case they do those things). A primary deliverable of a Technical Product Manager is the Product Requirements Document, which details necessary features to solve customer problems while avoiding implementation specifics, which are handled by Engineering. Another important deliverable is the Product Roadmap, which can take a variety of forms. Ultimately PMs are responsible for defining the product and getting the right product built, and writing requirements is a core function. A good high level requirement could be, “Create a small handheld device that clearly alerts a customer that active or inactive electrical wires are inside of a given wall.”

5. Technical Project Management

Technical Project Management focuses on coordinating engineering and other resources across a complex organization with varying timelines and levels of effort. The purpose is to keep projects on track and ensure complete transparency and coordination across teams. A key responsibility is maintaining a unified Gantt Chart, detailing team deliverables and timelines. Unlike other roles, Project Managers aren’t tasked with deciding what to build or communicating product details; they ensure that all teams understand their responsibilities, deadlines, and resource allocation, optimizing the efficiency of the overall process.

6. Product Design

Product Designers, sometimes called User Experience Designers, have a unique discipline within the world of design. Very often Product Designers are misunderstood by people outside of their day-to-day working chain as Graphic Designers. While Product Designers do sometimes create work that feels a bit like Graphic Design, their work is fundamentally different. The discipline ranges broadly from Research to Usability. User Experience Research includes deliverables like User Journeys, User Personas, Competitive Analysis Reports (from a design perspective), and Usability Research. They own the look and feel of the product by implementing design system that define how all aspects of the product look, and what the user interaction model of the product will be. This includes colors, fonts, and various elements of the styling of the product (buttons look like this, form fields look like that, there should be x many pixels buffer around images, etc…). Execution oriented deliverables include Information Architectures, proof of concept Wireframes, Pixel-Perfect Wireframes, and clickable prototypes. Product Designers, especially those building digital products or software, establish a design system for all aspects of the user experience. Product Designers are also responsible for usability testing and talking to customers about the products that they use to understand what works, and what doesn’t work. They sometimes do this with quantitative methods, and sometimes qualitative methods. Often they will also use automated tools that provide heatmaps and click-tracking analysis to show what users are looking at on the page, and what paths they are taking through the product or site.

A Complex Discipline

As you can see, the discipline of Product Management is complex and comprehensive. The work extends across a lot of discrete skills, and requires many different capabilities. Finding a product person who excels in all of these various disciplines is hard, we usually refer to those people as “Unicorns.” At early stage startups, the product managers are generally responsible for several, if not all, of these disciplines. As companies mature, the work breaks down into specific roles and responsibilities. When I was at Microsoft each of these were very clearly defined and separate roles, albeit sometimes with different names. Unicorns do exist, you can find people with the ability to effectively do all of this work, and to do it well. But they are extremely rare. My advice to most companies is to figure out what your teams do well, and what they need help with. Then find a logical breakpoint between the disciplines and establish the work in a way that everyone involved celebrates, rather than feeling like the work that they are good at and enjoy is being ‘taken away’ from them.

To show you how these teams interact, see the chart below. We’re looking at the product development life cycle from Left to Right, and the interaction between Product Marketing, Product Strategy and Product Management. You can see that Product Strategy starts the process off, and then hands off to Product Management. As the life cycle progresses, different roles are more or less engaged.

This is a product development life cycle map from a very mature company with a global footprint. Smaller companies will have less complexity in their map, and frankly, the roles will condense down to one or two rather than all three.

This chart doesn’t include software developers, scientists, researchers, technical operations, release management, product designers, or product operations. You can imagine how complex things might get in a fully resourced organization – and why a team might need a Technical Project Manager to coordinate it all.

I hope this gives you some sense of what Product Management as a discipline is all about. It takes a lot of work to build a product. Whether you’re a 3 person team or a 300,000 person organization, the work is the work, is the work. It all needs to be done in order to deliver a great product. It’s just a question of how large the offering is, and how streamlined of a process the team can use in order to deliver the product in a reasonable amount of time.

Tagged , , , , , , , , , , , ,

How AI will actually impact software development

By Eric Picard

As a product person, I am constantly intrigued by emerging technologies and how they shape the future. The true game-changer of our age, possibly in all of history, is Artificial Intelligence (AI). There’s a lot of hype, and when I hear people talk about AI right now, it’s often discussed as if it’s a mature offering.  Nothing could be further from the truth, we’re in AI’s earliest stages. But the potential is vast. 

I’ve had the great fortune to work with some of the smartest engineers in the world, and in my recent conversations with them I’ve gained some insights into what lies ahead. These engineers, often referred to as 10X engineers (a few are even more than 10X) due to their exceptional productivity, are in awe of what they’re seeing. I’ve collaborated with these engineers in the past, witnessing their ability to tackle complex technical problems, invent new technologies and products, sometimes on a daily basis. 

I’ve been hearing remarkable stories from this cohort, some of whom are among the best living engineers. Overwhelmingly I’m hearing that they have experienced an astonishing 100X increase in productivity by utilizing ChatGPT 4 and other open-source Large Language Models. Some have built working prototypes where AI-powered bots with specific skill sets form functional teams. These bots collaborate, architect solutions, and even write code based on detailed business problem prompts. Although some fine-tuning is necessary, the progress is truly remarkable, and is getting better very fast.

Conversational Software Development: A Paradigm Shift

Spending a significant amount of time immersed in ChatGPT and Google’s Gemini, I am convinced that we are on the verge of a monumental shift in software development. Conversational software development powered by AI is set to make agile methodologies seem quaint in comparison. This transformation will revolutionize the industry, enabling projects to be completed with far fewer engineers than before.

Before you misunderstand, let me dispel the notion that this reduces the value of engineers. Over the past three decades, there has been a severe shortage of engineering talent. Far from diminishing the need for engineers, AI will exponentially increase the amount of software being written with the same number of engineers. It will propel us into a world where agile sprints and extensive planning will be replaced by direct transitions from concept to functional prototypes.

Picture a scenario reminiscent of the Iron Man movies, where Tony Stark converses with Jarvis, his AI assistant, rapidly manufacturing and discarding prototypes until the desired outcome is achieved. Every prototype becomes a complete product and every line of code will become disposable, allowing AIs to iteratively build new versions with seamlessly integrated upgrades. This fundamentally changes our conceptions of technology development and product lifecycle management. Far from being unnecessary, engineers will become even more valuable, with the smartest among them assuming the role of architects of the AI and the development processes, shaping the infrastructure.

Evolving Roles and New Opportunities

In this transformed landscape, certain roles will take center stage. Product Management will become even more critical, with many engineers transitioning to product-focused positions. Crafting executable prompts that AI models can understand will be a new skill set for product-oriented individuals, who will define what needs to be built.

Collaborating closely with Product Managers, software architects will play a pivotal role. Their expertise will ensure that architectural decisions align with product goals and requirements, providing guidance while engineers focus on implementation.

While the roles of Product Marketing, Sales Enablement, and Marketing Communications will remain crucial, they will need to adapt to the surge of software products flooding the market. Differentiating and creating demand through effective marketing will become even more vital in this highly competitive landscape.

About ten years ago I heard Quentin George (who was at advertising agency holding company IPG at the time) give a presentation where he said something like, “There is a massive overabundance of manufacturing capacity in the world, and too many products are rolled out every year. Most of this output goes to the landfill. The only way to compete in a manufacturing economy with such overabundance of capacity is by using marketing to differentiate and create demand for your product.”  

This same set of problems will exist for the first time in software development. When there is not a shortage of engineering capacity, and we 100X the throughput of engineers, we’re going to have a lot more software exploding into the world. Marketing becomes critical in that scenario – in ways it simply wasn’t in the past, because there wasn’t a ton of competition.  Consumer software development is about to explode in volume.

The AI revolution is poised to transform software development by exponentially increasing productivity, automating processes, and moving from a long development cycle to a rapid development and iteration cycle. It will be faster to simply write the code and build the product than to design, mockup, write specifications, drive alignment, then go through multiple development sprints. We’ll simply build working products, and if they’re not correct, we’ll throw them out and build better versions.