"My team’s got more to do than we’ll ever have time for this year. I can tell you what I wish our OKRs were, the hard part is prioritizing it all.”
said every CTO everywhere.
I recently sat down with some of NYC’s leading CTOs and heads of engineering to discuss OKR and KPI best practices. The truth is, despite the fact that 2018 is underway, many tech teams are still scrambling to finish 2018 annual planning.
I’m here to tell you - it’s ok. Keep Calm.
Whether you use OKRs, KPIs, Rocks, or any other annual and quarterly planning process, the key to success is to find a process that is flexible and is embraced by your team.
While there’s no one-size-fits-all solution, these OKR and annual planning best practices should hopefully get your team over the finish line:
With the average tenure of today’s tech employee at 2 years, it’s important to keep in mind that a 20 or 10 year goal might seem to distant and unmotivating. Instead, anchor your team with a strong three year goal. Three years is a good amount of time for most tech teams. It’s long enough that it feels strategic and short enough that it’s motivating.Pro Tip: The 3 year goal should be measurable.
People, in general, hate being told what to do. Ensure your team is on board with your annual plan by getting buy-in from them early and often. Enable employees to poke holes in the plan and suggest improvements to it. Give employees permission to be vocal about areas they want to be involved in.
Annual planning doesn’t have to be anti-Agile. If done right, the annual plan can be a strong complement to a high functioning Agile team. Use Agile best practices to guide your annual planning session by setting a small handful of measurable initiatives, and account for slack time. Hold regular retrospectives, and create a process for pivoting or iterating on the plan that mirrors how you handle a new feature or epic or sprint planning.
Assign 1 person to be accountable for each OKR, each Rock, each KPI. Know who the product owner is for each initiative. Be crystal clear on the definition of “Done. Done.” Put the accountable person’s image next to the OKR. Whether you have an avatar, someone’s headshot, or a physical sign-off sheet, make it visible to the entire company who owns each initiative. For larger organizations, consider implementing RACI, or some other type of responsibility matrix, to create a shared understanding of the type of involvement various team members have in each initiative.
At Casper, each OKR owner presents their results to the entire team, regardless of how much of the goal they achieved.
Don’t go crazy with this, just figure out the ballpark capacity. How many person weeks do you expect to have, account for planned new hires, any anticipated turnover, holidays and vacations? With the ballpark idea of capacity, you can have a better chance of setting achievable velocity and outputs.
Instead, have a small handful of 3-5 metrics, each with an owner. Ideally, product and engineering teams have adjacent and aligned goals, but not the same exact goal.
Innovation is inefficient. Growth is inefficient. When you are doubling in size, be realistic about the temporary hit that velocity per employee is going to take. New employees need ramp up time and time to integrate with the team. So, when picking your OKRs, be realistic about the tradeoffs you are making when prioritizing either growth or efficiency.
Jira, Trello, Google Docs, Metronome, Clubhouse. Pick one tool, use it. It matters less which tool you choose. It matters more that you use it consistently. Just like you track progress towards epics and stories, track progress towards OKRs. Set a cadence for tracking progress and stick with it. You might choose to track OKR progress as part of each sprint, or you might choose to hold distinct meetings to review OKR progress.
What best practices have you seen? What mistakes have you made? Add your OKR best practices in the comments below.
For a Fortune 100 media firm, predicting viewership was crucial to revenue -- so they turned to Stride to rapidly prototype a solution using Agile programming. Read the full success story.