How do we go from an idea to working software that our customers use? There are a lot of moving parts to make sure this happens within the context of a large development team and to maintain the high level of quality our customers expect.
We have a lot to do. New features, bug fixes, UI improvements, code quality, custom client work, internal tools for sales and marketing, metrics, dev work-flow/tools improvements … The list goes on.
We know what to work on and when by prioritizing large team projects (or “Epics”) and individual contributions. This starts with an understanding of how our goals align from the individual to the company:
Company Goals → Team Goals → Individual Goals
All goals are completely transparent and shared with the entire team from the company level down to each individual. This means the entire team is involved when setting goals. We avoid goals being prescribed “top down” as this makes for an unhappy team and does not foster product ownership.
Though we make exceptions for critical issues or time sensitive opportunities, we generally try to prioritize on a quarterly basis. This process is cleverly named: Quarterly Planning.
Quarterly planning is informed by our company strategy which is more broadly determined and changes biannually (usually, sometimes it’ll be tweaked and discussed at our weekly townhall meeting). The goal of quarterly planning is to prevent too much shifting around and ensure we can deliver larger and more ambitious projects to our customers. These can span from 1 month to 9 months long with shifting team size.
The epic projects are inspired by our strategic goals, but typically come from the ground up. We try to keep quarterly planning as open and transparent as we can without getting stuck in endless meetings. Well before the start of the quarter Product Managers will source and gather ideas from everyone at the company. Then flesh out those which fit with our strategy for more details and discussion.
A set of ideas will then be put up for consideration for the next quarter. Everyone interested in advocating for a given idea/project will then work to put together a short proposal that covers scope of the project, the marketing message, and most importantly…key metrics this project hopes to improve and indicate success. These proposals are combined into a pre-read document that is shared to the whole company and is further fleshed out by any stakeholders and naysayers.
Next, the PMs will organize as few meetings as possible for each idea/project to be presented and discussed in an open meeting for the whole company. These discussion meetings are followed by a smaller meeting to force rank these projects. This will include all of our Functional Advocates in engineering and representatives from each department (sales, marketing, customer support…). And, we are now left with a ranked list of projects we hope to complete!
Maintaining a force-ranked list of projects can actually be a lot more difficult than it seems. We always face many distinct challenges, and understanding the tradeoffs is not trivial.
However, the process of ranking these projects pays off for us in several ways.
Product Managers have the final decision on the project rank. They are responsible for staying up-to-date with all stakeholders and ensuring the rank is updated when priorities shift.