健全なチームを保つ OKR と Health Metrics
この記事は KNOWLEDGE WORK Blog Sprint の 21 日目の記事になります。
はじめに
ナレッジワークでは全社で目標管理フレームワークとして OKR を採用しています。筆者がマネジメントしている Platform チームでは Objective と Key Results に加えて、チームの健全性を保つために Health Metrics という指標を OKR フレームワークに組み込んで運用しています。本記事では Health Metrics と、Health Metrics を運用して感じた効果や課題を紹介します。OKR そのものについては割愛します。
OKR とその課題
ナレッジワークはスタートアップとして急成長を実現するために全チームが常にストレッチゴールを設定しています。実際にこれまで急成長といえる成長を遂げてきたと実感しており、その急成長を支えるツールとして OKR は重要な役割を果たしています。目標設定における全社員の共通認識を作り、シンプルなフレームワークでマネジメントコストを最小限に保つことができています。
ナレッジワークでは達成すべき重要な目標として OKR を設定する一方で、組織の背骨とも言えるフィロソフィーを最も大切にしています。ナレッジワークのフィロソフィーはミッションや行動指針[1]で構成されています。OKR は上手く使えばフィロソフィーを体現しつつ急成長に貢献し続けることができます。しかし、OKR を最優先に活動してしまうとフィロソフィーを犠牲にしてしまうこともあります。
例えば、OKR を運用する中で次のような事例がありました。
🔍 事例 1: チーム OKR の達成を優先して若手の成長機会を奪ってしまった
若手エンジニアにアサインされていた未完了タスクをシニアエンジニアが期日直前に担当して OKR を達成したという事例です。ナレッジワークはミッションであるイネーブルメントを社内でも実践したいと考えています。もちろんすべての同じようなケースをなくすべきかというとそうではないですが、成長機会を失わず OKR も達成する方法を模索すべきです。
🔍 事例 2: 期中に割り込みタスクが多く発生したが、期初に設定した OKR 達成も求められワークライフバランスが崩れた
スタートアップであるナレッジワークではスピードを重要視しており、日々目まぐるしく状況が変わります。そのような状況の中で割り込みタスクも多く、期初に想定していた見積もりが大きくずれることも少なくありません。それでも OKR 達成を求められワークライフバランスが崩れてしまったという事例です。行動指針の Act for People では健康や生活を大切にしようという考え方があり、早期に検知して対策を検討すべきです。
🔍 事例 3: OKR 達成のために間に合わせの実装をして技術的負債となった
OKR 達成のための機能開発で運用フェーズを考慮せずに設計・実装し、直後に技術的負債となり運用コストが高くなってしまったという事例です。ナレッジワークの行動指針の Craftsmanship では期日までに間に合わせの実装をせず、成果物のクオリティと提供スピードにこだわるという考え方があり、スピードだけにとらわれず内部品質にまでこだわるべきです。
このように短期目標である OKR を優先すると、短期目標では測れないフィロソフィーを犠牲にしてしまうケースが多々あります。人間は得てして短期目標を優先しがちなため、なんらかの対策を講じた方が上手く OKR を活用できそうです。
Health Metrics
Health Metrics[2] とは OKR 達成のために犠牲にしてはいけない指標です。ナレッジワークではそれがフィロソフィーになります。
Platform チームでは次のようにルールを設け、Objective、Key Results とともに Health Metrics を設定しています。
🎯 Objective
毎朝ワクワクできる定性的な目標を 1 つ設定する。
🔑 Key Results
Objective が達成できた、もしくは確実に達成に近づいたと判断できる定量的な目標を最大 3 個設定する。達成できる自信が 50% の水準で設定する。
💖 Health Metrics
OKR 達成のために犠牲にしてはいけない Health Metrics を設定する。
Health Metrics の具体例
現在 Platform チームは 2 つのチームで構成されています。それぞれのチームがどのような Health Metrics を設定しているか紹介します。
Middleware Group
Middleware Group は複数のプロダクトの共通機能を開発しているチームです。次のような Health Metrics を設定しています。
💖 メンバーのイネーブルメント
全メンバーがイネーブルメントを実感できているかという指標です。ナレッジワークのミッションでもあり最も大切な指標だと考えています。
💖 チーム内連携
チーム内、特に職種間でうまく連携できているかという指標です。直近で開発エンジニアと QA との連携が重要、かつ複雑なタスクが多くあり課題感を感じていたため、Act for People の連携志向を意識する指標として設定しました。
💖 レビュー速度
コードレビュー依頼を迅速に処理できているかという指標です。Middleware Group は共通機能を開発しているという特性上、他チームからのコードレビュー依頼が最も多く発生します。自分たちの OKR を追うだけであれば後回しにしたり最悪無視するということもできてしまいます。そのようなことをせずに Craftsmanship をもって素早く対応できるように設定しました。
💖 残業時間
残業時間が多くなりすぎていないかという指標です。ナレッジワークでは成長のために残業したいメンバーにはその環境を用意したいという考え方があります。一方で Act for People では健康と生活を大切にするという考え方があります。そのため、それぞれのメンバーで目標残業時間を設定して、それを越えてワークライフバランスを崩していないかを確認するために設定しました。
Platform & SRE Group
Platform & SRE Group は SRE と Platform Engineering を担当するチームです。次のような Health Metrics を設定しています。
💖 メンバーのイネーブルメント (同じなので省略)
💖 残業時間 (同じなので省略)
💖 本業への集中
割り込みタスクや toil が多すぎないかという指標です。Platform & SRE Group は社内で最も割り込みタスクが多いチームの 1 つです。割り込みタスクの流量や toil の量をコントロールし、本来やりたいことに対する Craftsmanship を発揮できるように設定しました。
OKR と Health Metrics の運用
Health Metrics を導入する際、最も注意したのはシンプルに運用できるフレームワークとして構築するということです。結果、今までのナレッジワークの運用とコンフリクトすることなく、OKR にまつわる情報を 1 つのフォーマットにおさめて毎日見るという形で運用しています。
OKR フォーマットとして次のようなテンプレートを Google Slide で用意し、weekly でページを増やしてそれを毎日見ています。
ナレッジワークでは四半期で OKR を設定するため、毎四半期末にチームで次の四半期の OKR と Health Metrics を設定します。
毎週月曜日に Planning を実施します。Planning ではその週のスライドを作成し、OKR 達成のためにその週で必ず完了する Weekly Commitments を設定します。
月曜日以外は毎朝 Daily Standup を実施します。Daily Standup では Weekly Commitments の進捗と障害になっている課題について確認します。
毎週金曜日に OKR Check-in を実施します。OKR Check-in では次のことを実施します。
- Weekly Commitments の達成状況の確認
- 各 Key Result のその時点での達成状況と達成自信度の報告
- その週の Health Metrics の報告
Health Metrics の報告は、まず各メンバーのスコア (☀️ or ☁️ or ☔) をスライドの speaker note に入力して、その平均 (切り捨て) をチームスコアとして記録します。☀️ でないものに関してチームで議論して対策を検討します。
効果と課題
効果として最も良かったのは、チームの health を可視化できた点です。これまでふんわりと会話の中で出ていた unhealthy な部分を Health Metrics により可視化できています。また、可視化してチームの課題とすることで、チームを healthy にするパワーが働きます。実際にアクションに落とし込んで改善することもあれば、毎日みて意識することで改善することもあります。
運用し始めたばかりですが、課題もいくつか感じています。Health Metrics を導入し、その議論に時間を費やすことで、定義されていないものに関して議論する時間が減ったと感じています。そのため、Health Metrics で定義されていない unhealthy さをどのように拾っていくかは今後の課題となりそうです。
今後の展望
今のところ Health Metrics はチームの健全さを保つのに役立っていると感じていて運用を続ける予定です。
現在は最小工数で実現できる実装として Google Slide というツールを使っています。将来的にはシステム化して、よりスムーズに運用したり履歴を追ったり推移を確認したりできるようにしたいと考えています。
また、効果の高い Health Metrics に関しては収集を自動化してアラートを設定することで、組織の SLO として運用する構想もあります。
おわりに
本記事では健全なチームを保つための Health Metrics を紹介しました。今後も急成長を実現しつつフィロソフィーを体現できるようなチーム運営を目指します。
KNOWLEDGE WORK Blog Sprint の 22 日目の執筆者は Corporate IT エンジニアのハリールさんです。ぜひ続けてお楽しみください。
-
Health Metrics は OKR シリコンバレー式で大胆な目標を達成する方法という書籍で紹介されています。チームで読書会を実施し導入するに至りました。 ↩︎
Discussion