How to Bring Engineers Into the Product Discovery Process
Mar 27, 2024Carl Vellotti is a Sr. Product Manager at GoodRx and creator of Carl’s Newsletter. His mission is to create tactical, helpful, and fun resources that PMs can immediately apply to their day-to-day work and build better products (and also to make the best product memes on the internet). You can find Carl on X / Twitter, LinkedIn, and Instagram.
Some takeaways from our conversation:
- Product discovery is not just having ideas or making things you think are cool–it's grounded in users and their problems.
- Assumptions can be dangerous without validation.
- Engineers are a underutilized source of great ideas. Use them.
- Make discovery a shared team effort, not just a product/design activity. Engineers should be part of the process from the beginning, not brought in at the end.
- Make space for discovery work for engineers. Don't let daily feature requests and bug fixes crowd it out.
Can you talk a bit about product discovery? What is it, what is it not, and why is it important?
Think of trying to solve a problem as entering unknown territory. You might have a map with a vague outline of what’s out there, and you might have an idea of what you’re looking for, but the only way to actually discover how to get where you want to go is by actively exploring the space.
That’s basically what “product discovery” is – exploring an unknown space to chart a path to success. Your tools for exploration are user needs, new ideas, prototyping, and iterating as you go.
Product discovery is not just having ideas or making things you think are cool. It is grounded in users and their problems, with the goal of discovering a product that solves problems better than any other method out there.
Discovery is incredibly important because it reduces risk and increases the chances of success. It makes sure you have a solid map to rely on before you invest all your resources on a specific path.
How would you describe the product discovery process? What’s the right way to do it and are there any wrong ways to do it?
The goal of product discovery is to deeply understand user needs, problems, and behaviors so you can design solutions that truly benefit them. This involves a lot of upfront research and experimentation before committing to building anything.
Some good practices:
- Talk to real users to understand their challenges and goals. Don't make assumptions. Use interviews, surveys, site visits, etc to get insights.
- Identify the user jobs, pains, and gains. What are they trying to get done and what prevents them from doing so? Empathize with their situation.
- Define the problem space before jumping into solutions. Resist the urge to start building too soon.
- Come up with hypotheses and run experiments to validate them. For example, create prototypes or landing pages to gauge interest.
- Iterate based on feedback. Treat ideas as hypotheses and let users tell you what resonates.
Some bad practices:
- Relying solely on internal opinions rather than users
- Skipping problem validation and going straight to a solution
- Getting attached to your first idea rather than testing alternatives
- Not seeking feedback frequently and incorporating learnings
The key is maintaining curiosity, talking to users, and staying flexible. Assumptions can be dangerous without validation. Avoid big bets without evidence. But do experiment quickly and often.
Why is it crucial to bring engineers into the product discovery process?
There are two main reasons including engineers in the product discovery process is so important.
First, imagine you’re a product manager who’s taken the time to deeply understand your users’ needs and you’ve come up with the best idea in the world. You have high confidence that it will solve all your users problems and be a huge success. But there’s only one problem – it’s completely impossible to build! Engineers will help ground discovery in reality and keep you from going down impossible paths.
Second, engineers are smart, dedicated people with deep familiarity with how your product really works. They’re an often underutilized source of great ideas. I can’t tell you how many times I’ve seen quick wins with huge impacts come from encouraging engineers to share their ideas.
What tips do you have for bringing engineers into the product discovery process?
Here are a bunch of tips:
- Make discovery a shared team effort, not just a product/design activity. Engineers should be part of the process from the beginning, not brought in at the end.
- Include engineers in user research activities like interviews, usability tests, and site visits. Seeing real users firsthand builds empathy.
- When brainstorming solutions, have engineers sketch and prototype right alongside product managers and designers. Don't limit their involvement.
- Frame discovery as identifying and validating problems, not presented solutions. Engineers will feel ownership over helping figure out the right problems to solve.
- Leverage engineers' technical expertise during discovery. Have them spike solutions to evaluate feasibility early on.
- Make space for discovery work. Don't let daily feature requests and bug fixes crowd it out. Protect time for engineers to discover.
- Involve engineers in synthesizing findings, defining success metrics, and framing what "done" looks like for discovery sprints.
There’s a lot of talk about protecting engineer’s time so they can spend as much time as possible coding and building core functionality. Do you agree with this?
People often make the mistake of thinking that if an engineer isn’t coding, they aren’t working.
This is a terrible mindset for leveraging an engineer’s unique skillset and way of thinking to build the best product most efficiently. In reality, while coding time is precious, some non-coding activities ultimately enable engineers to be more productive and build higher quality products.
Insulating engineers from customers and business context risks building products that don't fully meet needs. Some cross-functional collaboration is important.
Finally, engineer satisfaction often comes from having context, autonomy, mastery, and purpose. Strictly limiting work to isolated coding can negatively impact motivation.
What are some do’s and don’ts for bringing engineers into the product discovery process?
Do:
- Get engineer buy-in on the value of discovery before kicking it off
- Make sure engineers are part of discovery activities from the very beginning
- Have engineers collaborate closely with product/design in hands-on activities
- Leverage engineers' technical expertise to explore feasibility early
- Protect time for discovery work amidst competing priorities
- Frame discovery as identifying the right problems, not just solutions
- Celebrate insights uncovered during discovery
Don't:
- Only bring engineers in at the end to implement pre-defined specs
- Limit engineer participation to just technical feasibility spikes
- Make engineers feel like their coding time is being "wasted"
- Fail to explain why discovery work is valuable for the product and team
- Allow discovery work to be consistently deprioritized and descoped
- Neglect including engineers in synthesizing findings and framing problems
- Only celebrate shipped features, overlooking discovery insights
- Position discovery as a linear hand-off process with set phases
Sign up for the Skiplevel newsletter to get more content like this straight to your inbox.
If you like what you read, make sure to ❤ it, share it, and leave any thoughts in the comments!
Follow and subscribe for more technical tips!
Want to feel more confident in your technical skills?
Become more technical in just 5 weeks, without learning to code! We also train teams! Find out more at skiplevel.co/teams and book a call with me to get started.
Skiplevel is a program that helps product managers and teams become more technical without learning how to code.
Learn more about the Skiplevel program ⟶
Connect with Irene on LinkedIn and Twitter and follow Skiplevel on LinkedIn, Twitter, and Instagram.
Become more technical without learning to code with the Skiplevel program.
The Skiplevel program is specially designed for the non-engineering professional to give you the strong technical foundation you need to feel more confident in your technical abilities in your day-to-day role and during interviews.