![見出し画像](https://assets.st-note.com/production/uploads/images/148194326/rectangle_large_type_2_70422deaeaef040007e350e2fed4a7d5.png?width=1200)
「エンジニア組織を強くする 開発生産性の教科書 ~事例から学ぶ、生産性向上への取り組み方~」 読書メモ #開発生産性の教科書_findy
今回は、書籍『エンジニア組織を強くする 開発生産性の教科書 ~事例から学ぶ、生産性向上への取り組み方~』を読んだメモまとめです。
ちなみに、本書籍はFindy CTO https://x.com/ma3tk によって執筆された書籍になります。
ユーザー価値提供を前提に、プロダクトをつくる
ユーザーへ価値を届ける、結果としてプロダクトKPIが上がり、その先に売上・利益など企業財務へのインパクトに繋がる。
プロダクトというアウトプットはユーザー価値といったアウトカムや財務インパクトを考えることなしに成立しない。
その前提に立った上で開発生産性と向き合うことは大きな意味がある。
ファクトを正しく捉えるための定量化と可視化の重要性
開発生産性指標を定量化することの意味
定量化はファクトを把握し、自分自身にも他者に対しても認識を揃えるための手段のひとつ。ファクトを正しく把握し目線を合わせることで、目指す方向性に対する現状とのギャップが生じにくくなる。
ファクトや定量指標は背景に複数の事象が絡み合って表出した結果なので、定性要素含め多面的に捉える必要がある。開発のパフォーマンスを定量的に捉える「開発生産性(Developer Productivity)」のほかに「開発者体験(Developer Experience)」といった定性要素も加味した開発のパフォーマンスを捉える考え方も浸透してきている。
開発生産性指標を可視化することの意味
可視化も同様に、ファクトを正しく捉えるための手段。ファクトを捉えてそこからインサイトを得て、どうネクストアクションしていくか?を考えることが重要(監視のための可視化ではない)。チームの開発プロセスのボトルネックを把握したりメンバーの成長機会を見つけてパフォーマンスを最大化するための参考として取り扱うことが重要。
DevOpsの歴史的変遷
2013年から現在に至るまで発刊されている『State of DevOps Report』では開発パフォーマンスの定量化がキーワードになってきている 。当初は開発プロセスにおける開発と運用一体化によるエンジニアリングへの影響調査だった。
現在はDevOpsケイパビリティや企業業績へインパクトを与えうる各種開発生産性指標なども整理されるようになっている(以下2023 年時点の『State of DevOps Report』 )。
開発生産性の向上への取り組み
開発生産性向上の第一歩
開発生産性の向上には、いくつかの阻害要因が存在する。エンジニア個人・エンジニアチーム・組織全体で生じうる阻害要因にうまく対処していく必要がある(本書では阻害要因を網羅的に取り上げているが、本記事では割愛)。
様々な阻害要因はありつつも、まずはコントローラブルな範囲で、理解と熱量のある特定のチームから部分的に開発生産性の向上にトライし成功体験を積み上げるのが重要。
開発生産性指標選択の考え方
開発生産性を向上させるためにはファクトを捉えて継続的改善を促進させるための指標選択が必要になる。
指標選択の考え方には以下のようなものがある。
1.計測の難易度
2.開発生産性への影響度合い
3.ユーザー価値や事業貢献との関連性
4.改善可能性
5.わかりやすく受け入れやすい指標か
6.中長期のビジョンに沿った指標になっているか
7.組織全体のパフォーマンスに寄与する全体最適の指標になっているか
など
指標は、個人・チーム・システムなどのプロセスやパフォーマンス・エンゲージメント指標がある。また、短期成果に紐づくか・中長期成果に紐づくかといった先行指標か遅行指標であるか、また指標の取得元がどの開発プロセスから取れるものかなど、検討すべきである。
代表的な開発生産性指標
代表的な指標に、Four KeysやSPACEがある。そのほかにもプルリクエスト作成数やマージクローズ時間など
個人・チームやシステムのアクティビティから取得できる指標だけでなく、そのほか多面的に様々な指標が紹介されている。
※どの指標を取り扱うにせよ、数値”のみ”を追求しないようにする必要性については繰り返し言及
開発生産性可視化・向上の取り組み事例
各社の開発生産性向上の取り組み事例を紹介(ここでは参考リンクベースに紹介)
BuySell Technologies社
開発のボトルネックを解消してチームの生産性を上げた話 - バイセル Tech Blog
ツクルバ社
経営と開発をつなぐ架け橋に。事業成長を加速させるツクルバの開発生産性指標の活用方法とは?
クラスメソッド社
「受託開発組織における定量的な目標設定」
ワンキャリア社
『開発生産性を測る新たなフレームワーク「SPACE」の定義と実践』
定量目標を設定してスピード感のあるユーザー価値提供を目指す取り組み
ファインディ社
爆速開発をしていくためのFindyの取り組み 〜2022年編〜
LLMがもたらす開発生産性の未来
最後は、サイバーエージェントさん・ZOZOさん・マネーフォワードさんの事例などを例に、LLMがもたらす開発生産性の未来の話(ここでもリンクでのご紹介)。このあたりから海外事例なども盛り込まれていた。
サイバーエージェント社
対象者は1,000名以上、サイバーエージェントがグループ全体でGitHub Copilotを最大限活用できている理由
サイバーエージェントのGitHub Copilot導入と 開発生産性
ZOZO社
開発効率の向上を目的とする施策の一環として、GitHub Copilotを導入
GitHub Copilotは開発者の生産性をどれだけ上げるのか?ZOZOでの全社導入とその効果
マネーフォワード社
開発生産性が上がるって分かったので GitHub Copilot Business を積極活用しています
これからのソフトウェア・エンジニアリングトレンド
ソフトウェア・エンジニアリング・インテリジェンスやプラットフォームエンジニアリングなどのトレンドも末節に紹介されていた。
Gartner、2024年のソフトウェア・エンジニアリングに関する戦略的テクノロジ・トレンドのトップ5を発表
ソフトウェア・エンジニアリング・インテリジェンス
昨今のトレンド『ソフトウェア・エンジニアリング・インテリジェンス』
— ゆーだい@Findy Team+ (@dai___you) June 28, 2024
#開発生産性con_findy
#開発生産性con_findy_mainhall pic.twitter.com/nHHPQFXCti
ソフトウェア・エンジニアリング・インテリジェンス・プラットフォームでは、透明性の高いエンジニアリング・プロセスの統合的なビューが提供されるため、リーダーはベロシティとフローだけでなく、品質、組織の有効性、ビジネス価値についても理解し、測定できるようになります。2027年までに、ソフトウェア・エンジニアリング組織の50%は、開発者の生産性を測定し向上させる目的で、ソフトウェア・エンジニアリング・インテリジェンス・プラットフォームを使用するようになるとGartnerでは予測しています (2024年の5%から増加)。
プラットフォームエンジニアリング
社内の開発者ポータルや複数のプロダクト・チームが利用できるプラットフォームを通じて基本機能を提供することで、開発者の負荷を軽減します。このようなプラットフォームにより、ソフトウェア開発を促進する「舗道」が提供されるため、開発者にとっては時間の節約につながり、満足度が向上します。2026年までに、大規模なソフトウェア・エンジニアリング組織の80%は、プラットフォーム・エンジニアリング・チームを立ち上げるとGartnerでは予測しています (2022年の45%から増加)。
AI拡張型開発
AI拡張型開発とは、ソフトウェア・エンジニアによるアプリケーションの設計、コーディング、テストを支援するために、生成AIや機械学習などのAIテクノロジを利用する開発です。AI拡張型開発ツールは、ソフトウェア・エンジニアの開発環境と統合され、アプリケーション・コードの生成、設計からコードへの変換、テスト機能の強化などに利用されます。AI拡張型開発に投資することで、ソフトウェア・エンジニアリング・リーダーによる開発者の生産性向上とコストの管理を支援できるだけでなく、チームの能力も向上し、より多くの価値を提供できるようになります
ソフトウェア・エンジニアリング・インテリジェンスやプラットフォームエンジニアリングが注目されていくと同時に、開発生産性を測定するプラットフォームも徐々に浸透していく可能性がある。
また、前述のZOZO社やマネーフォワード社のようにAI拡張型開発を推進される企業が増える中で生産性向上のBefore/Afterをきちんとみていくことは、AI拡張型開発への投資対効果を測るうえで重要だと感じる
感想
開発生産性可視化・向上の取り組みを検討している企業の参考になる書籍だと改めて感じた。
今年第2回目となる『開発生産性Conference2024』も約2000名の申し込みを頂き今回ご紹介していない各社の生産性向上事例を聴いて、国内でのトレンドが高まりつつあるのと感じるとともに、Gartnerのソフトウェア・エンジニアリングに関する戦略的テクノロジ・トレンドのように海外マーケットでもポテンシャルが予測されていることを勘案すると、今後の開発生産性におけるマーケットがどうなるか?は個人的にも非常に楽しみです。
『開発生産性Conference2024』の様子はこちら👇