仕事で“無理をしている”と感じるときは「脳の使い方が間違っているサイン」――。そう語るのはベストセラー『世界一流エンジニアの思考法』の著者、米マイクロソフト現役エンジニアの牛尾剛さんだ。脳にとって一番合理的な仕事の仕方とは?

(※本稿は、前掲書から一部抜粋したものです)

◆◆◆◆

ADVERTISEMENT

©AFLO

いつも脳がぐったり疲れていた私

 私はプログラマでありながら、何を隠そう一番苦手で克服できていないことが、コードリーディング(ソースコードを読むこと)だ。ものすごく時間がかかるし、時間をかけたわりに読み間違えたりするし、脳がぐったりと疲れるので、敗北感しか残らない。

 マイクロソフトに来た当初、この問題をマネージャのプラグナに相談したら「最初は2 時間かかるだろうけど、3カ月もしたら5分で終わるわよ」と言われたが、そもそも今の自分は最低でも4時間かかるが……と愕然としたものだ。

 私は自分のキャリアの中で、OSS(オープンソースソフトウェア)の開発に関わることはあったが、巨大で複雑なコードベースを読んで理解する必要に迫られたことがほとんどなく、一からコードを書くのは得意だが、どうやったら他人のコードを読んでしっかり 把握できるのかがよくわからなかったのだ。

 当然、私は自分の周りのエンジニアたちにコツを聞いてまわったが、どうも要領を得ない。多分息を吸って吐くようにコードリーディングができてしまう人からすると、コツを 改めて聞かれてもよくわからないようだ。

超優秀な同僚の衝撃のひと言

 あるとき思い立って、入社間もない若い同僚のクーパーに聞いてみた。彼は、私が複雑すぎてうんざりしていた巨大なアーキテクチャにも怯ひるむことなく挑んでいて、しかも読むのがものすごく速い。悩みを相談すると、好青年のクーパーはこう言った。

「コードリーディングのコツは、極力読まないことですよ。他のデベロッパーのことを信頼して、実装はちゃんと動くものとする。だって、たくさんコード読むと、圧倒されちゃうでしょ?」

 なるほど……目からウロコだった。自分はいつもコードを端から端まで読もうとして、細かく読んでいるうちに、自分がどこにいるのかわからなくなって混乱したり、忘れたり、脳が疲れ切ってしまうことが頻繁にあった。

牛尾剛氏

 これは、自分が低レベルだからだと思っていたが、どうやらそうではないようだ。私は常に自己評価が低い性格だが、「自分ができないからこうなのだ」という思い込みはたいてい大きな事実誤認を生む。本質は脳の使い方にあるようだ。