フィボナッチ数付加価値度による勤務評価の善し悪し

エンジニアの勤務評価を非エンジニアが行う場合の難点として、技術的な難易度が見えにくいというものがあります。簡単そうに見えるけど内部処理をいじるのが超手間ということもよくあり、そういう場合に、その作業に関する評価で揉めることもよくあります。こんな簡単なことにどれだけ時間掛かってるんだ、いやこれ簡単じゃないですよ的な。


そういう問題の解決策の1つとして、作業の難易度は評価する上で考慮しないという考え方があります。評価するのはどれだけ難しいことをやったかではなく、ビジネスやユーザーに対してどれだけインパクトのあることを行ったかだけで評価するというものです。エンジニア側からすると受け入れがたい部分もありますが、結局は会社のためになってナンボであるという原則に立ち返れば、それもまたありなのかなと。特に小チケットを消化していくスタイルの場合、同時に多くのチケットを持っていることが多いわけで、評価の高いものを優先し低いものを後回しにすれば良いだけです。



で、実際にどんな評価を値として付けていくかですが、今の会社では「付加価値度」と称したポイント制になっていて、そのポイントはフィボナッチ数列になっています。すなわち小さい方から「1、2、3、5、8、13、21、34」となっていて、最大は34です。決定はすべて社長が行い、月ごとに目標達成度を決めて集計。四半期毎に評価を行って待遇へ反映されているようです。インパクトが大きくなるほどポイントの上がり幅が大きくなるという点で、合理的だなと思うこともある反面、どうしても手頃なポイントの作業を優先して行ってしまうという問題点もあります。ポイントを稼ごうと思ったら、あまり難しくなくて時間が掛からずポイントが稼げる案件を優先してやっていく方が効率的です。

結果的に「5」「8」くらいの付加価値度が付いていて、見込み1時間から2時間程度の改修で対応出来そうな案件が最も優先されます。また、僕の場合はあんまり大きな案件が下りてくることはありませんが、大きな案件に手を付けるときには同時に簡単そうな案件もキープしておいて、大きな案件で掛かった時間をフォローするために簡単な案件をまとめて処理して、月の達成度に間に合わせる……みたいなことも行われている様子。「34」とか大きな数字が付いた案件は、大抵が将来の売上の柱を作る的なスケールがデカすぎる案件で、とてもじゃないけど何時間とかそういう単位で出来る作業ではありません。結局インパクトが大きい作業は、時間の消費が割に合わなくて放置されていく(やるつもりはあるけど後回しになっていく)と。そりゃそうなるよねえ。



RPGでいかに効率的にレベル上げするか?みたいなのにも似ているところがあります。モンスターを倒して経験値を得るタイプのゲームの場合、いかに倒しやすくたくさんの経験値が入るかを考えるわけです。はぐれメタルを狩り続けても良いけど、それははぐれメダルが普通の何百倍もの経験値を持っているから倒しにくくても割が合うわけで、「8」と「21」くらいだと全然割に合わないんですよね。経験値が少なくなったはぐれメタルを頑張って狩るよりも、メタルスライムに聖水を掛けてた方が効率がいいって言うね。

じゃあ、大きな案件を進めたい時どうすればいいかというと……果たしてどうするのが良いのか。フィボナッチ数をどんどん大きくしていっても良いけど、いきなり「233」とか出てきてもそれがどれだけ意味があるのか全然解りません。そもそも工数を考えなくても付加価値度を決められるのがこの場合の利点であり、各ポイントにはそれぞれきちんと定義がある(「13」リリース後継続的に利益に貢献し続ける「21」将来的にも会社の資産となりうる、など)ので、安易にポイントを大きくするわけにも行きません。解決するとしたら、大きな案件をいくつかの案件に分割してそれぞれに適切なポイントを付与し、順次消化していくしかないでしょうね。そうすれば結果的に作業規模に合ったポイントを付与することが出来ます。「34」となされていた案件が10個の「8」作業に分割されれば、実質的に「80」ということなので。でもこれもあんまりやり過ぎると、インパクトに対して付加価値を定義するという根幹が崩れる可能性があり、諸刃の剣。エンジニアの要求に流されてポイント追加してもキリがないし。



僕の月目標がどれくらいで達成度がどれくらいだったか、僕には特に知らされていないのでよくわからないですが(一応、その報告はredmineに上げられて誰でも見られるようになっているけど、回覧されては来ないので敢えて見てない)、僕にとって今現在のエンジニアの仕事はあくまでパートタイムであってその延長上にキャリアパスを描いているわけではないし、一定以上の評価を上げないと契約が更新されないというわけでもないです。なので、どう評価されてようとまあ別にいいかなと。このポイントシステムも割り切って受け入れていますし、小さいポイント作業の落ち穂拾いもおまかせください。

なんですけど、一般的に考えて、汎用化するにはまだまだ改善の余地のある評価スタイルだなあと思います。わかりやすいし見通しがいいのは良いんですけどね。なんかこう、事務処理作業とか、作業のバリエーションが少なく効率が求められるような業務に使うといいかも知れません。ルーチンワークはそれで一定の評価を与えておき、それを越えて会社の利益に資すような業務にはさらにインセンティブを付けるみたいな感じで。



ちなみに

社長から「付加価値度の大きい方から手を付ける」という提案もあったんですが、それだと例えば「34」が付けられているデカい案件に縛られてしまうので、採用されませんでした。例えば、「顧客の行動指標をビッグデータとして蓄積・解析し、経営にフィードバックする」とかいう案件があったとして、確かに経営へのインパクトは大きいでしょうけど、それで改修が1ヶ月止まるというわけにはいかないので。