正しい指標を追跡して開発者体験を向上。開発者の生産性を計測する「SPACEメトリクス」とは【テッククランチ】

2023年6月21日

寄稿者

Alex Circei

エンジニアリングチームのパフォーマンスを測定する開発分析ツール、Waydevの共同創業者で最高経営責任者。

過去数年間は従業員を労う動きが盛んだったが、近頃振り子が反対方向に振れているようだ。テック業界は解雇や景気の先行き不透明感によって苦境に立たされている。それは従業員のやる気や幸福感に直接影響を及ぼし、結果として生産性にも影響している。

デジタルヘルスツールの利用、より良いメンタルヘルス治療の提供、メンタルヘルスデーの実施などは素晴らしい取り組みだが、ソフトウェアエンジニアの仕事に対する不満の根本的な原因を直接解決しているわけではない生産性を低下させるこの傾向に立ち向かうために、企業は開発者体験(DX)についてもっと考える必要がある。ただ、DXは一般従業員の幸福感とは大きく異なる。

開発者体験とは、ソフトウェア開発者が日々の仕事についてどのように感じているかということであり、開発者らが使用するツールやプロセスに直接影響される。つまり、チームの職場での体験そのもの、使用するリソース、ワークフローの効率性に目を向けることを意味する。そうした要素を可能な限り良いものにすることのメリットは、開発者を幸せにするだけでない。ビジネスの成果向上にも直結する。

エンジニアリングのリーダーは、エンジニアチームの体験を損なっている要因を探し出すためにエンジニアの満足度とパフォーマンスをより効果的にモニタリングすることでこれを実現できる。エンジニアリーダーは、新しい総合的な指標を受け入れ、それらに生かす方法を学ぶ必要がある。以下、開発者の体験をこれまで以上によく理解して改善するために、どのテック企業でも実行できる取り組みを紹介する。

職場の問題の根源を特定する

世界のソフトウェア開発者のなんと4人に3人が燃え尽き症候群を経験したことがあるという。エンジニアリングのリーダーはどうしてなのか自問すべきだろう。問題のひとつは、私たちが本質的にエンジニアの生活を必要以上に困難にしていることだ。私たちは、ソフトウェア開発者が日常的に使用するワークフローやリソースをより最適化するためのツールを持っている。これらのツールは日々の体験を改善し、燃え尽き症候群のリスクを軽減するだろう。だが、エンジニアリングチームの働き方に関する適切な指標を追跡していなかったり、開発者の体験について十分に声を拾っていなかったりするために、改善の機会を逃している可能性がある。

もう一つの問題は、ソフトウェア開発者がより充実した業務に従事できるようにしていないことだ。2019 State of DevOpsレポートによると、ソフトウェア開発者が実際に機能をつくり出す業務に費やす時間は全体のわずか30~40%で、大半の時間は遅延や管理業務に消えていることが明らかになった。このような時間のかかる、得られるものが少ない業務をなくすことが素晴らしいキャリア開発と仕事の満足度につながる。

エンジニアリングのリーダーがこうしたデータをつぶさに見ることができるようにするツールは広く普及しており、開発者の体験を劇的に改善することができる。ツールを活用すれば、各企業は自社特有の開発者の仕事に対する不満の根本的な原因を特定し始めることができる。

開発者体験を向上させる方法:SPACEメトリクスの活用

エンジニアリングのリーダーが注目すべき点は2つある。開発者体験についての洞察を得るのに最適な指標と、その情報を使ってソフトウェア開発者が仕事で感じることを改善する方法だ。

ソフトウェア開発のパフォーマンスを測定するために、DORAメトリクス(Four Keys)を利用する企業が増えている。

これらは重要な指標で、基本的に機敏性と質を測定するものだ。だがこの指標は全体像を示すものではない。実際、DORAのFour Keysを作成したチームはさらに一歩進んで、全体像をとらえるSPACEメトリクスシステムを作成した。これはFour Keysを含みつつ、ソフトウェアエンジニアの仕事の人間的または感情的な側面(満足度と幸福感)にも目を向けている。

以下、SPACEの内訳を紹介する。SPACEはSatisfaction(満足度)、Performance(パフォーマンス)、Activity(アクティビティ)、Communication(コミュニケーション)、Efficiency(効率)の頭文字だ。
※参考:SPACE – 開発者の生産性を理解し計測する新フレームワーク

SPACEメトリクス

1. 満足度と幸福感:ソフトウェア開発者の仕事に対する満足度、幸せ、前向きな習慣
指標例:一般的にアンケートを用いて定性的に測定される。

2. パフォーマンス:チームのシステムとプロセスの結果を追跡する
指標例:稼働に失敗したケースの発生率。チームの本番環境へのデプロイが失敗したり、キャンセルされたりする頻度を示す。

3. アクティビティ:開発チームのアウトプットを測定する
指標例:進行中のプルリクエスト、レビューされたプルリクエスト

4. コミュニケーションと共同作業:ソフトウェア開発のプロセスにおいて、チームがいかに効果的にコミュニケーションをとっているかを測定する。
指標例:共有インデックス、コラボレーションマップ

5. 効率とフロー:迅速かつ中断を最小限に抑えて達成されるタスク
指標例:復旧にかかる平均時間(本番で障害が発生してから復旧するまでの時間を測定し、チームの問題解決の効率性を示す。)

関連するメトリクスを使って具体的な方法で体験を改善する

開発者体験を向上させるためには、まず、体験に悪影響を与えている可能性のある要因を特定する必要がある。ボトルネックはストレスの引き金になることがある。時代遅れ、あるいは複雑な技術はエンジニアリングチームの仕事を指数関数的に難しくする可能性がある。

どのメトリクスが足りていないのかを特定する。チームの数値を業界のベンチマークと比較したり、前四半期の数値と比較したりして、ネガティブな変化がないかチェックすることで特定できる。

例えば、重要な指標のひとつに「変更のリードタイム」がある。変更がコードベースに反映されるまでの時間(コードを確定してから本番環境に送るまでにかかった時間)だ。リードタイムが長すぎる場合、開発プロセスに非効率性があることを意味する。コード変更の実装やテストのプロセスが複雑すぎるためにワークフローが中断している可能性がある。このような中断に気づかれず対処されないままだと、チーム内に不満が生じ、結果的にチーム全体の成果に影響を及ぼすことになる。

潜在的な不満の原因を可視化することは、「満足度と幸福感」の指標の一部として、体験に関する個別のフィードバックを開発者に求めることでもある。他の指標からすでに危険信号が出ている場合は、開発者の仕事の特定の側面について的を絞ったフィードバックを要求することもできる。核心的な問題についてチームに話すことなく、解決策を推測しようとしてはいけない。

広いレベルでは、満足度はリテンションでも測定される。パフォーマンスを示す指標は高いようなのに開発者が減っている場合は、社内の別の側面に障害があるのかもしれない。チーム内のコミュニケーション不足で開発者が孤立感を抱いているのかもしれない。あるいはワークフローが乱れているために、より構造化されたプロセスに逃げている可能性もある。好奇心とオープンマインドを持って、あらゆる影響を考慮しながらこの問題に取り組む必要がある。

開発者の満足度が高ければビジネスの成果も上がる

開発者体験の向上は、より機敏な開発プロセスや生産性の向上と密接に関係している。ソフトウェア開発者を苛立たせる障壁を取り除くことで、よりスムーズで効果的なワークフローを実現することができる。効率性が高まれば個人が自由に使える時間ができ、こうした時間をより充実した、インパクトの大きな仕事に充てることができる。自己啓発とキャリアの開発に時間を費やすことは、開発者が貴重なスキルを身につけて満足することを意味する。

開発者の満足度が顧客やブランドにどのような影響を与えるかについても考える必要がある。満足度の高い開発者は、大きな負担がかかり不満を抱えた開発者よりも、よりポジティブにユーザーと接する傾向にある。また、満足度の高い開発者は最も重要なブランドアンバサダーとして機能する。開発者の待遇や他者への敬意など、開発者らが社内の状況をどう見ているかも現在そして将来にわたって世界に発信される。

ソフトウェア開発プロセスの可視化は数字だけにとどまらないことを忘れないでほしい。開発者の体験を把握する最善の方法、それは開発者に尋ねることだ。開発者が職場でどのように感じているかを気にかけていることをチームに示すことではるかに良い関係を築き、生産性を妨げる障害がチームやビジネスに大きなダメージを与える前にそれらを取り除くことができる。

元記事:Track the right metrics to improve your developers’ work experience
By:Alex Circei
翻訳:Nariko

関連記事

人気記事

  • コピーしました

RSS
RSS