Editor’s Note: This article was first published in CIOReview here.
I’m often asked about what kinds of tools and technology we use at Drift to manage product development. It’s not surprising—there have been many recent developments across a variety of areas including product analytics, deployment process, and feature-flagging. But the truth is that product development innovation and success depend less on which particular technology you use and more on how you structure your teams and empower your people.
Modern product development isn’t about implementing the latest, shiniest piece of software. It’s about finding smart, efficient ways to solve customer problems more effectively and get those solutions to market faster than the competition.
There are a few specific tactical things that help us accomplish this. First, we give each product team ownership of their features and the deployment of those features, allowing for continuous development. The ability to act independently means that no team is ever left sitting around waiting on a release cycle or for permission. Each integrated team includes engineering, product management, and design, so they have all the skills and resources they need to operate autonomously and with full efficiency.
The second thing that helps us iterate more quickly is using our QA environment and feature flagging for effective, low-risk testing. Our QA environment mirrors our production environment exactly, giving us a very accurate idea of how things are working. And then feature flagging allows us to ship something to a specific subset of 5, 10, 100, or however many customers we choose, which allows us to try things out in a production environment that’s still somewhat contained.
Finally, we make sure that all our product people have quick and efficient access to data via analytics platforms. It’s critical to give these teams the information they need to make informed decisions, but—again—which analytics platform we use is less important than that they have access and that the people on the team know which questions to ask and how to get the most valuable insights.
This type of team structure and development process works beautifully for a startup, but for larger companies with legacy systems and more traditional organizational structures, it can be challenging. For these kinds of teams, it can be helpful to begin building alignment around a different kind of product development philosophy before you start changing up the way teams are built or how they operate. At Drift, we’ve developed a framework of eight leadership principles that help our entire company stay on track and in step. There are a few that are particularly applicable to product development:
Put the customer at the center of everything you do. Focus on solving customer problems, not responding to a competitor. Put the customer—not yourself or your team—at the center of your decisions. Take the time to get to know the customer every day.
Practice extreme ownership. Don’t point fingers or make excuses. Own the successes and the failures. Understand the mission. Ask questions. Be responsible for getting clear on where the team is going and how your plan supports that goal.
Have a bias for action and deliver daily results. Always be shipping. Break things down into small, daily wins. Don’t be afraid to make things happen before they are perfect. Over time, small wins help our customers take massive leaps forward.
Seek feedback, not consensus. Feedback is about getting to the best idea, not creating agreement. Consensus creates average ideas, speed, and results. We don’t vote on ideas or decisions because the best idea will never sound like the best idea to everyone. Take action and validate with customers instead of committees.
This integrated and independent approach works so well for Drift, sometimes it’s hard to understand why everyone doesn’t do it this way. We’re able to iterate on customer feedback extremely quickly and get to market faster. It’s a win-win.