技術者のスイッチングコスト

一般に、人間における仕事のスイッチは、CPUにおけるプロセスやスレッドのスイッチ同様コストを伴う。あまりスイッチが多ければ当然処理能力の低下を起こす。

他業種は知らないけれど、少なくとも技術者のスイッチングコストはかなり高い。文字どおり「コードに落とすだけ」まで書かれたプログラム設計書をコーディングしている「文字どおりのコーダー」ならともかく、そうでなければシステム全体に関する幅広く、階層的な、抽象的な知識をロードしておいて、そのフィールド内で作業しているからだ。この知識をロードするのに相当の時間が掛かる。

実際の所、「文字どおりのコーダー」の存在が全体の能率を上げるようなのは『 人月の神話 』で解説されているように、ハードウェア先行のプロジェクトや超大規模プロジェクトなど限られていて、少なくともweb系には関係なさそうだ。

なんでこんな常識をいきなり語りだしたかというと、今日そういうのがあったから。作業のストアに10分、ロードに20分、作業3分、報告5分みたいな。アホらしい作業。まぁ、そのプロジェクトの管理担当は私だから、誰のせいでこういう非効率が生じたかといえば、私がまだ管理体制をしっかり敷けていなくて作業の割り振りが適切に機能していないからなんだけどさ。だから、早く体制を固めなきゃという自戒を込めて。

ある技術者がいて、その人に30分に一回誰かが5秒間話しかけたとすれば、その日の進捗はゼロだと覚悟しなければならない。