〜『DevOps指標』を活用しよう〜こんにちは!Findyの田中(@dai___you)です!近年、IT系スタートアップが台頭しつつあり、またソフトウェアを軸として事業展開をする企業が増える中で、”いかに素早く、動くソフトウェアを顧客へ届けるか”が企業存続において重要な時代と言われています。この”素早く、動くソフトウェアを顧客へ届ける”とは、ユーザーへのプロダクト提供スピードを速くすること、またユーザーが不便なく使いやすいプロダクトを届けること、と言い換えることができます。そこで、今回は『エンジニア組織の生産性の可視化をテーマに、"素早く、動くソフトウェアを顧客へ届けるためには"どのような指標をみればよいのか』の一例について書いていこうと思います。Teamsの『DevOps指標』を活用しようエンジニア組織の生産性はどう測る?本記事では、ソフトウェアサービスを展開するIT企業を中心に、エンジニア組織の生産性を向上させるために見るべき指標について書いていきます。結論から言うと、素早く、動くソフトウェアを顧客へ届けるために、エンジニア組織の生産性を測る要素としては以下の2点に集約されます。ソフトウェアデリバリの速度ソフトウェアデリバリの安定性それぞれ解説していきますと、1つ目のソフトウェアデリバリの速度は、ソフトウェアが顧客のもとへ届くまでの時間であり、プロダクトの企画〜運用までのプロセスを速く実行することが重要です(今回はプロダクトの企画・仕様作成の時間は除き、エンジニアがコードコミットしてから本番環境へデプロイされるまでの時間として言及いたします)。2つ目のソフトウェアデリバリの安定性は、コードコミット〜デプロイするまでの障害および障害に対する復旧の時間であり、顧客へきちんと動くソフトウェアを届けることが重要です。これら2つの要素は、以下の指標として数値化し、定点観測することが可能です。Keys:4つのキーメトリクスとして紹介)は、組織全体のパフォーマンスおよび企業の業績に好影響を与える、という科学的な根拠をもって実証されています。このソフトウェアの速度と安定性は互いにトレードオフの関係性ではなく、両立しうるものである(ソフトウェアデリバリのプロセスの質を上げれば、速度も安定性も向上する)と本書では紹介されています。(稼働停止からの復旧に要する時間)は1/170変更失敗率は1/5というほどの差分があり、パフォーマンスが良好な組織は指標すべてにおいてハイパフォーマンスな成果を上げていることが見てとれます。以下Googleが投稿した記事内におけるソフトウェアデリバリのパフォーマンスを分類した表も自社のエンジニア組織の生産性を測る指標として参考になるかと思います。エンジニア組織の開発アクティビティを把握しようエンジニア組織における生産性指標は理解できた一方で、それらを指標として定量化/可視化する仕組みがない、という企業様は少なくありません。そのようなケースにおける解決策の一つとして、GitHubのようなソースコード管理ツールによって、まずはソースコードベースでエンジニアの開発アクティビティをログとして残せる仕組みを取り入れる方法があります。ソースコード管理ツールを活用することで、エンジニアの開発アクティビティが履歴化されるとともに、共同での開発作業が円滑になり、チームでの開発効率はよくなります。Keysに関連する指標を定量化する必要があります。Teamsのサービスに関してはこちらをご覧ください)。Keysに関連する指標をご覧いただけるようになっておりますので、最後にそちらをご紹介したいと思います。Teamsでは、『DevOps指標』として、以下の指標を見ることができます。Teamsを導入いただいている企業様はこちらから直接操作画面にアクセスできます)また、デプロイ頻度の先行指標として、プルリク・レビュー・マージ/クローズごとの開発アクティビティや、開発リードタイムを可視化することができます。自社内でもDevOps指標およびそれに係るプルリクベースでの開発アクティビティや開発リードタイムを把握し、エンジニア組織の生産性改善に繋げています。結果として、開発効率は3倍上がりました(詳細な取り組みの内容はこちらからご覧ください)。Teamsの指標を活用した生産性向上の取り組みは増えてきています。様々な企業様のエンジニア組織づくりのご支援をさせていただく中で、このようなデータを活用した取り組みには、採用効果があり、改善するエンジニア組織に優秀なエンジニアが集まりやすい、ということもわかりました。エンジニアが生産性高く働ける仕組みを取り入れることで、開発者体験の向上および企業業績の向上、また採用効果への影響など、さまざまなメリットがあります。本記事が、自社のエンジニア組織改善の参考になりましたら幸いです。Teamsにご興味があるという方は、こちらより資料請求・お問い合わせ頂ければと存じます。【CTO/EM100人に聞いた】約8割がエンジニア採用が難しくなっていると実感。Team+はGitHubやJiraなどエンジニア向けツールを解析することで、エンジニアリング組織の生産性を可視化するサービスです。