Modern software companies follow a variety of common conventions to scale quickly and efficiently. For example, most software companies have a defined and documented approach for engineers when it comes to writing, reviewing, editing, and deploying new code. It’s important to settle on some standards and procedures for software development because it means a company can write code quicker, reduce mistakes that are inherent in writing code, and provide a better working environment for software developers. The end result is more and better products delivered to the customer, which in turn is good for the business.
However, standardization of a product development process is uncommon within startups. Most companies lack a clear procedure for taking an idea and turning it into a high quality, shippable product. What typically happens is product teams form and are left on their own to figure out how they want to drive new product development. For example, who is responsible for conducting customer research, when, and how should it be conducted? How does a team come up with an initial prototype for a new product? How do you iterate on it over time? In what ways can you maintain clear internal communication with key stakeholders as the product is being built? When and how do you come up with the go-to-market plan for the product? A well-designed product development process will have an answer for each of these questions and will help you ship more and better products to your customers. Without such standards, each product team will build products through different methods, leading to inconsistent product delivery timelines and inconsistent product quality. The last thing a startup needs is more unpredictability.
I created the following content to prevent unnecessary churn when trying to create new innovative products. It describes a product development process I’ve refined over the years and use on a day-to-day basis when building compelling products customers love. The process is described in a way that will make it clear and easy to implement within your company. It is specifically designed for building large customer-facing features where “large” is defined as a product that requires 1 month or more of engineering time to complete.
Common Product Development Issues
First, it’s useful to point out the ways in which product development is typically broken or inefficient at young technology companies. Here are the common issues that I tend to see at startups:
- The value you want to create for your customer has not been clearly articulated upfront.
- Projects get “blown up” late in development due to large communication gaps during development.
- Creating the first product prototype takes far too long, leading to a lull in the pace of development.
- Customers aren’t being talked to enough, leading to products that don’t adequately reflect customer wants and needs.
- The project team building the product doesn’t have a clear escalation path to get unblocked.
The below process has been designed to explicitly solve or greatly mitigate each of the above issues when developing new products.
In addition to solving common product development pitfalls, this method of developing products is rooted in a set of guiding principles which further prevents the above issues and gives product teams a common language to use when describing how they build product:
- “Work backwards” from the customer: Start with intense focus and clarity on the value the company wants to create for customers as opposed to thinking about the value the company wants to create for itself. The belief is that if a startup makes the customer very satisfied, customers will engage deeper with the product, which leads to an increase in the key business metrics. Amazon is the best example of a company that begins product development with an intense focus on value to the customer.
- Collaborative: All key functions (e.g. product, design, engineering, and customer support) are present from beginning to end since each function provides a unique and valuable perspective. That means everyone must own the outcome of the product— e.g. engineering should care just as much about the quality of the user experience as a designer should. I don’t believe in the “PM as the CEO of the product” idea because most PMs don’t have CEO quality judgement. Software development is best conducted as a team sport.
- Interactive prototypes: A product development process should aim towards creating interactive prototypes worthy of being tested on actual customers, as quickly as possible. The reason is that startups learn the most when testing an interactive prototype on customers. Interactive can mean working code or a high fidelity visual prototype using something like Framer, which strings together visual designs through clickable hotspots.
- Measure and learn: Once a product is shipped, you’ll want to measure the outcome to see if it created the expected impact. If not, you can investigate why that is the case and use those insights to either deprecate the product, improve it, or carry forward those learnings into future products that are built. Shipping products without understanding the impact is unacceptable.
A Repeatable Process for Innovation
First, I’ll describe the process. Following the description is a visual concept. The product development process follows these steps:
- Begin with conducting Customer Research as part of “working backwards from the customer”. It’s through this research that you will refine the product hypotheses— i.e. what the product should do and why it should do it, what specific problems you’ll be solving for the customer, and what forms of delight you can provide. Customer Research can either be conducted by a PM or a designer, if your company doesn’t have a full-time research lead. Each conversation is 30 – 60 minutes and follows an open-ended format that allows for spontaneous discovery of rich customer insights. These insights should eventually make its way into product requirements.
- In parallel, the lead Product Manager begins drafting product requirements (which also includes an Amazon-style press release). A draft of the product requirements and press release must be finished before starting the design sprint, which is how a product team develops its first testable prototype. The initial draft should be reviewed by the design and engineering leads, so they are familiar with it and can provide useful feedback. You want all key team members to be versed in what value you intend to create for the customer.
- Once Customer Research is complete, and a first draft of product requirements and the press release have been drafted, the team will then run a design sprint to quickly design the first testable prototype of the product. I selected the Google Design sprint method since it was created with the time constraints of a technology company in mind. The issue with most traditional design processes is that they can take weeks to months to get to a testable prototype. That timeframe simply doesn’t work within a startup. The Google Design Sprint method is the most effective that I’ve seen when going from 0 to 1 within a software company. The design sprint takes 1 week, at most.
- Once the design sprint is complete, the team can finalize the product requirements and Amazon-style press release so that the requirements and customer value are crystal clear before full development begins.
- The results from customer research and the design sprint are brought into a kickoff meeting to get everyone on the same page prior to the development process ramping up to 100%. A kickoff meeting should be no longer than 45 minutes and should be conducted shortly after the design sprint is completed (e.g. within 1 week). You’ll want all primary decision-makers involved so that there are no surprises, which could lead to the project being derailed later in development. Feedback from primary stakeholders should then be taken into account and incorporated into the product plans.
- Once development begins, the project team will present the latest prototype(s) (across all platforms— e.g. web, iOS, Android) and overall status of the project during weekly or bi-weekly product reviews until the product is finished and launched to the public. Product reviews are also 45 minutes max and should take significantly less time (e.g. 20 – 30 minutes), if run efficiently. The purpose of product reviews is to maintain coordination throughout the project, give the project team a regular interface with the leadership so that they can ask for help or support when needed, and to incorporate feedback on the prototypes iteratively.
This is a conceptual diagram for the product development process from start to finish. It’s very useful for project leads (especially the product manager) to have this process memorized, so that they always know what should be coming next in the development process. If run well, it should only take 2-3 weeks to finish customer research, the design sprint, and have a kickoff meeting session. Keep in mind that this is for new, innovative products/features, so getting to the point of alignment on a medium fidelity prototype is impressive in such a short timeframe. From there, development starts to move quickly until the product is ready to launch.
Here’s the full list of templates that you can used in conjunction with the process laid out above. This will allow you to incorporate some or all aspects of this process into your own team or company.
- Guide to Conducting Customer Research
- Product Requirements Template
- Amazon Press Release Template
- Google Design Sprint Methodology
- Kickoff Meeting Template
- Product Review Template
Thanks to an abundance of data storage, analysis, and visualization tools, startups today have the ability to make rapid improvements to nearly every aspect of their business. However, this overabundance has led to a significant bias in that startups now lean on structured data too much. So much so, in fact, that some of the fundamentals of building innovative products, such as rigorous customer development, have fallen by the wayside. One of the byproducts of this data obsession is that many startups try to optimize their way towards success through relentless A/B testing. This typically pulls them further away from essential insights and truths that they might discover, if they spent less time analyzing structured data from a database and more time collating the unstructured data that can be discovered when talking to customers.
The good news is that data over-reliance can be easily corrected with a shift in mindset and some of the tools and guides I provided in this four part series. In terms of next steps, I hope you take a few key steps from here. First, move forward with designing a company-wide org chart that creates an explicit balance between optimization efforts and innovation efforts. It’s also critical to make wise decisions with the types of experiments to run and avoid running tests that will never meaningfully improve your business. And finally, that you adopt some version of the repeatable product development process I shared, so that you can innovate much more effectively for the betterment of your customers and your business.
As reference, here are all posts in the series in case you’d like to read them again: