見出し画像

エンジニアの生産性を定量化して爆速見もりにまで繋げた話

こんにちは、TECHFUND VPoEの林田です。NRIから転職してから1年が経とうとしていますが、VPoEとしてこれまでやったことの一部を事例としてご紹介できればと思います。

TECHFUNDは新規事業をテクノロジーで支援する会社で、受託型でのシステム開発を行っています。現在設立9年目で、2022年6月から林田が参画しました。

課題と対策指針

TECHFUNDには腕利きのエンジニアが多く所属しているのですが、参画した当初はエンジニアの生産性が定量化されておらず、エンジニアの評価や稼働の管理が曖昧になっている問題がありました。また、それに起因してプロジェクト毎の利益率もすぐに計算できる状況ではありませんでした。
そこで、以下の指針を立てて対策を打つことにしました。

  • 人月や人日(稼働量)ではなく、成果量に対して報酬を支払う

  • 人月や人日(稼働量)ではなく、求められる成果に対するプロジェクトアサインをする

つまり、成果さえ上げることができれば、それにかけた時間に関わらず報酬が支払われるということです。生産性が上がれば、結果的に時給をアップすることができます。
この指針を明確にすることで、生産性高く成果を上げることがエンジニアにとっての共通目標となることを期待しました。

基準FP(成果量)の定量化

成果量を定量化するために、CTOのPiyush氏に依頼して、Webシステム開発の際によくある機能毎に基準FP(Function Point)を定義してもらいました。例えば、ログイン機能は4FP、カート機能は9FP、といったような形です。
このとき、TECHFUNDのエンジニアがある機能を実装するのにかかる時間(SP)は、以下の式で表します。

実装にかかる時間(SP) = 基準FP × 生産性係数

生産性係数はエンジニアごとに異なり、標準的な生産性をもつエンジニアは生産性係数を0.8とします。生産性が高いエンジニアは、0.7、0.6と係数が少なくなります。

1ヶ月あたりの消化可能FPはエンジニアによって異なりますので、プロジェクトアサインはこのFPを基準に行います。

SPの記録と生産性の可視化

プロジェクトではJIRAなどのプロジェクト管理ツールを用いていますが、チケット上にSP入力欄を設けることで、チケットのFPに対して実際に掛かった時間を記録できるようにしています。
このとき、生産性係数を逆算すれば、チケットにアサインされたエンジニアがどの程度の生産性を発揮できたのかがわかります。

生産性係数 = 実装にかかる時間(SP) ÷ 基準FP

得られた効果

この方法をとることで、以下のような効果を得ることができました。

エンジニアの目標の見える化

エンジニア組織のOKRとして「1ヶ月あたりの生産性を5%上げる」などの目標が掲げられ、当初期待したとおりの共通目標化ができました。1on1で前月消化FPのフィードバックを受けて改善に向けた取り組みを行うなど、改善ループも始まりました。

見積もりの高速化

エンジニア毎のFP単価が明確になり(エンジニアの契約金額÷月平均消化FP)、機能に対するFP対応表ができたことで、見積もりのご依頼に対して爆速で回答することができるようになりました。
具体的には、数千万円程度の規模までの見積もりなら、半日〜1日のリードタイムで回答が可能です。内部的な見積もりコストの低減だけでなく、素早いお見積りはお客様にも好評頂いています。

プロジェクト毎の利益率可視化

エンジニア毎のFP単価が明確になり、アサインがFP単位となることで、プロジェクト毎の利益率をすぐに算出できるようになりました。この数字は、経営判断にも役立てることができます。

おわりに

TECHFUNDにおける取り組みをご紹介しましたが、何かのご参考になれば幸いです。
また、これが完成形ではないと思いますので、もっとエンジニアが活躍できる組織づくりができるよう、これからも頭を捻りたいと思います。


この記事が気に入ったらサポートをしてみませんか?