Why devs should embrace project ownership and swift iteration
When you are looking to build development teams that deliver new features and products quickly and react fast to user feedback, I learned early in my career that one is better off creating teams that are empowered to make decisions independently and use data to guide their decisions. This approach is an entrepreneurial one: Tackle every opportunity with a swift test-and-iterate mindset that sparks discoveries, takes inspiration from previous successes and documents things to avoid in the future. And it applies to the entire development team, not only engineers but also supporting product managers and analysts.
At CarGurus, our teams conduct usability testing, and then prioritize work that addresses specific feedback. With each iteration, development teams (Engineers, Product Managers, Analysts) play a leading role alongside our product teams throughout the collaborative process: from identifying a problem, determining what a successful outcome would look like and how it would be measured, and continuing to monitor progress and make adjustments as needed after rollout.
In many instances, organizations of our size and scale are bound by red tape and a siloed product development structure. As companies grow larger or go public they tend to lose the agility of a startup, whereas we’ve made a commitment to supporting a continued startup-like mentality and approach. Our focus is always on getting feedback as quickly as possible to guide a project. We expect development cycles to keep a pace of days, not weeks or months. Swift turnarounds push CarGurus development teams to think of pragmatic ways to deliver a prototype early.
As a result, our team rarely has major product launches. For example some time ago, a group from our development team hypothesized that we could enrich the value of our site to car shoppers by enabling private sellers in addition to dealers to list cars on our site. The development team that generated the idea moved forward with an incremental solution that enabled private sellers to list their cars. The initial solution was rough around the edges, but got the job done. Initial engagement was promising, so we decided to proceed. Subsequent iterations further improved on user experienced and, as a result, improved adoption rate. At this stage, the full vision was far from realized. However, we had a product that seemed to resonate with the market and was gaining traction. This realization plus an evolving understanding as possible future directions this peer-to-peer (P2P) feature could take led us to more fully invest in this effort as a project with long-term strategic value. Years later the P2P team continues to iterate on this product, setting goals and overseeing the platform’s incremental growth to bringing to fruition the full vision we laid out years ago.
Giving developers this kind of project ownership and autonomy can improve their satisfaction at work, encourage professional growth, and ensure the long-term success of the product or feature. It can also improve their work with peers—in fact, developers are encouraged to share experiences with and learn from every area of the company, from the marketing team to product managers, and vice versa. We ask everyone to subscribe to a culture of open communication so that work like what the P2P team has accomplished help reinforce our our project ownership and iterative philosophy throughout Engineering and across the organization.
While companies will need to find a balance depending on a variety of factors, implementing an empowering, fast-paced approach to development can result in more team creativity and innovation. With the space to take an entrepreneurial approach to their work, development teams will be able to seek effective solutions to problems through experimentation and diverse sources of expertise—all while keeping the bigger picture in mind.