Agile goals with OKRs

OKR(Objective and key results) is the silicon valley approach for goals and strategic planning created at Intel around the 80s. OKR is not a prescriptive and complex method or methodology, OKR is a Go-To Philosophy which is super aligned with Agile.  Objectives in OKRs are a clearly defined goal followed by 1 or more key results that are specific and help to measure if we are achieving the goal. Key results can be measure in a non-binary way(did we achieve the goal? yes or no) but actually in a 0 to 100%.  Objectives need to be supported by initiatives. Activities help us to move forward and achieve objectives. OKRs become super popular at Google. I'm a fan of google in several aspects like Psychological safety, SRE and OKRs are definitely on this list. Google said OKR help them out to growth 10x. Who is using OKRs? Intel, Google, Slack, Netflix, Yahoo, Spotify, Twitter, Facebook, Amazon, LinkedIn, and several other silicon valley companies.
The issue with Traditional Goals

The subject is not new, companies do planning for ages. Several movements came like Agile, Lean, DevOps, SRE, UX, LeanStartUp, LeanUX, DTA, TTA and change how we build and discovery digital products but are we planning in an agile way? Are we doing agile in the heart of the company/business or agile is something just for engineering? Every company does a kind of strategical planning, via KPIs or any other methods. Traditional methods often have several issues like:

1. Too Slow - 3-5 years planning is too far away and the world change too fast.
2. Too Many Goals: Having too many goals create several issues because A) You lose focus and B) you will have dependencies to execute all these goals.
3. Low Feedback: When the company learn is too late. 
4. Low Engagement: Feel people know whats going on.
5. Losing Improvements: Traditional planning really just on top managers.
6. Worst Results due to poor execution. OKRs can fail due to poor execution too but you will Fail Fast(Agile Concept) and Fix it fast.  

So basically we need an Agile way of dealing with goals. The first thing SV does is working with quarters(3 months) instead of 3-5 year plannings. OKRs help us to deal with the traditional planning issues. 

Why OKRs are good for your company

First of all, OKRs are great Comunication and engagement tools. It really helps everybody in your company not only understand what's going on but connect and engage in the company goals. So the first and very difficult question to answer is where do we want to go? As the company discovers that, then you need to work on HOW DO WE GET THERE? 

Having clear cascaded goals is a very powerful comunication tool. Belonging is a strong feeling and at the end of the day, organizations should be focused on making customer impact. Mapping impact from the Board to everyone on the company can be very challenging.  Thats why OKRs are agile, it's not a static thing you do it once and you are done. OKRs are like engineering releases, you want to do as much often as you can and you want to pay attention to the execution and at regular times you want to do retrospectives and make sure you are learning and changing course as you learn and go.

OKRs will help you to:

1.  Work in short cycle goals (3 months).
2.  Fewer objectives (fewer dependencies, more focus).
3.  High Feedback via check-ins, retrospectives and effective learning. 
4.  High Engagement since everyone will see how they work is linked to the company goals. 
5.  Getting improvements and ideas, commitment from everyone, not only the top managers.
6.  Better results due the agile properties being applied to corporate goals and follow up.  

Avoiding Some Pitfalls

There are some pitfalls with OKRs you need to mind. First of all, you do not want to create many levels because this will create tensions and you will lose focus. Secondly, you do not want to make everyone create OKRs via default structure like financial folks create financial OKRs, engineering folks create engineering OKRs why not? Because this enforce SILOS and you should be working to remove silos. So People should organize around Objectives, not around the operational structure. 

You need to have control over the OKRs it's complicated to be charged by something you have no control, thats why you won't make sure you have the right goals, the right key results and the goals are not department goals. 

Agile Beyond Engineering

OKR is really great because it's becoming super popular in several companies outside SV and in Brazil. Which means we are finally pushing agile beyond team boundaries. If your company is waterfall being agile on engineering won't do much change. That's a very Lean mindset since Lean talks about optimizing the whole and empowering people. OKRs have the perfect match to Lean / Agile culture. Having said that, do not threaten OKRs are a waterfall thing and keep your mind open and keep learning and improving your strategy as you learn. 

Cheers,
Diego Pacheco

Popular posts from this blog

Kafka Streams with Java 15

Rust and Java Interoperability

HMAC in Java