【20】集中する時間を取る

ジェームス・リー(James Leigh)
カナダ、オンタリオ州トロント

 ソフトウェア開発者は決まって、「ミーティング、デモ、緊急のバグ修正といった割り込みがあったせいで、仕事が終わりませんでした」と報告します。割り込み後に思考の流れを取り戻すのには、20 分程度かかると言われています。つまり、5 分の質問も実際には 25 分のコストになり、10 分の簡単なミーティングも実際には 30 分の潜在的な作業コストになるのです。典型的な知識労働者は 1 日の 28% を割り込みとその復帰に費やしています。このことは過度のフラストレーションとストレスの原因になるおそれがあります。

 この問題を解決するために、割り込みが発生しない時間を 1 日に 2 時間取りましょう(例えば、朝 10 時から昼 12 時まで)。ミーティング、質問、メール、電話などの割り込みを許さない日を用意することで、開発者が 1 日中、全力で仕事に集中できるようにしても構いません。インテルや IBM は金曜日をその日に設定して、それぞれ “zero-email Fridays” や “Think Fridays” と呼んでいます。

 その期間に効率よく仕事をするためには、開発者がプロジェクトにおける上位 2 つの優先事項が何なのか知っておくことも重要です。いくらすぐれた開発者でも、何がプロジェクトに真のビジネス価値をもたらすのかを明確に伝えられなければ、やみくもに推測するしかありません。

 インフォマニア(Infomania、情報過剰で衰弱した状態)は、開発者の生産性にとって大敵であると知られています。開発者がプログラミングをするときには、同時に多くのことを記憶しておく必要があります。変数、クラス構造、API、ユーティリティメソッドといったものからディレクトリ階層まで、覚えておくべきことはさまざまです。割り込みがあると、こうした情報の多くが「スワップアウト」してしまい、それを取り戻すにはかなりの精神エネルギーが必要になります。これは生産性に多大な影響を及ぼします。研究によると、インフォマニアのために、従業員は自分の能力を最大限発揮できず、新しいアイデアを生み出すことに集中できないことがわかっています。

 また、割り込みの種類によって、開発者の思考の流れに及ぼす影響は違ってきます。頭の中でプログラムやデータを活発に循環させたまま、立ち上がったり、トイレに行ったり、コーヒーやサンドイッチをとったり、ホワイトボードに向かう人もいます。実際に体を動かすことは、問題を解決するための新しい手段だと見なせるかもしれません。

 事前に計画されたミーティングは、プログラマにとっては特に問題です。スケジュール通りにやってくるイベントがあることがわかっていると、時間をムダにしてしまうおそれがあるためです。彼らはこう考えます。「30 分もしないうちに割り込まれるのがわかっているのだから、いま仕事を始めても仕方ない」 そして、ミーティング中にすばらしいアイデアが浮かんでも、コンピュータの前に戻るころにはすっかり忘れていたり、陳腐化してしまうかもしれません。

 開発者の生産性は、同時にやるプロジェクトが増えるたびに 50% 以上低下すると言われています。3 つ以上のプロジェクトに取り組んでいる開発者は、ほとんどの場合、ミーティングに出席する時間が飛躍的に増えてしまいます。なぜなら、どうして仕事があまり進展していないのか説明しなくてはならなくなるためです。開発者が複数のプロジェクトに貢献しなければならないときには、別のプロジェクトにスイッチする前に、そのプロジェクトに少なくとも丸 2 日は専念できるようにしましょう。こうすることで、プロジェクトに自分を再投入するのにかかる時間を最小限に抑えることができます。