本文へスキップ
ブクドリ | BOOK DRIP
戻る

『世界一流エンジニアの思考法』牛尾剛さん|試行錯誤は、実は「悪」だった

キャリア・働き方 ✍ 牛尾剛さん
約7分で読めます

※ 本記事はアフィリエイトリンク(Amazonアソシエイト)を含みます。

『世界一流エンジニアの思考法』
目次

プログラムが動かない。だから、あれこれ手を動かして試してみる。

ごく普通のやり方に見えます。ところが本書はこれを、はっきり「悪」だと言い切ります。

著者の牛尾剛さんは、米マイクロソフトのクラウド開発チームで働くエンジニア。自らを「要領の悪い三流」と呼びながら、世界トップクラスの同僚たちを間近で観察し、その思考法を一つずつ自分にインストールして生産性を激変させていきました。

本書は、その試行錯誤のプロセスを「誰でもアクセスできる基礎」として言語化した一冊です。

私がこの本を面白いと感じたのは、ノウハウ集ではなく「劣等感の記録」として読めるからです。できる同僚への嫉妬や焦り、自分の凡庸さへの苛立ち。そうした生々しい感情を起点に、では一流は何が違うのかを解きほぐしていく。だからスローガンではなく、腹落ちする話として入ってきます。

図解

「試行錯誤は悪」――手を止めることが近道だという逆説

本書を貫くメッセージは一つに集約できます。一流の圧倒的なパフォーマンスは、頭の回転の速さや記憶力ではなく、思考の習慣から来ている、というものです。

「小手先のテクニックでもなければTipsでもなく、その圧倒的なパフォーマンスは思考法から生まれている」

eXtreme Programmingの生みの親ケント・ベックも「自分は偉大なプログラマではなく、偉大な習慣を身につけたプログラマだ」と語ったそうです。才能の差ではなく習慣の差。だから誰にでも真似できる。ここに、読み手としての希望があります。

では具体的に何が違うのか。著者の同僚ポールは、問題が起きたときに手を動かしませんでした。最初のログを一つ眺めて仮説を立て、クエリを一つだけ書き、ほとんど一発で根本原因を指し示した。

手順にすればこうなります――まず事実(データ)を一つ見つける、いくつか仮説を立てる、その仮説を確かめる行動だけをとる。たったこれだけの順番の違いです。

裏返せば、エラーが出るたびに反射的にコードをいじるやり方は、一見勤勉でも、時間がかかるうえに「なぜ直ったのか」が手元に残らない。手は動いているのに、何も学んでいない。だから「悪」なのだ、というわけです。本書はできるプログラマとできないプログラマの生産性差を25倍とまで言いますが、その開きの源泉はこの一点にあると著者は見ます。

もう一つ、私が線を引いたのが「理解」への投資です。早く成果を出そうと焦るほど、かえって本質的な理解が遠ざかる。著者はこれを身をもって痛感し、「理解の三要素」を掲げます。

すなわち、構造をつかんで人に説明できること(説明可能)、参照なしにいつでも取り出して使えること、別の課題や新しい創造に応用できること。優秀な人ほど基礎を急がず、時間をかけて深く理解している。

「どんなに頭がいい人でも理解には時間がかかる」と著者は書きます。その遠回りが後のスピードを跳ね上げる、という逆説がここにもあります。早さを捨てることが、結局はいちばん早い。理屈ではわかっていても、実際にやれる人は少ないはずです。

「やらないこと」を決める技術――Be LazyとFail Fast

本書の代名詞といえば「Be Lazy(怠惰であれ)」でしょう。

「望んでいる結果を達成するために、最低限の努力をする。不必要なものや付加価値のない仕事をなくす」

怠けることではありません。少ない労力で価値を最大化する、という発想です。本書は具体的な数字でこれを示します。100のタスクのうち本当に重要なのは2割ほど。

残り8割を思い切って捨て、次の2割に手をつければ、4割の工数で160%の価値が出る。いわゆる二八の法則を、勇気をもって徹底するわけです。捨てることは罪悪感を伴いますが、捨てなければ価値の高い仕事に時間が回らない。

私がうなったのは、ここから出てくる時間の使い方の逆転でした。「やるべきこと」を全部並べてから時間を計算するのではなく、使える時間を先に固定し、その枠の中で価値が最大になる組み合わせを選ぶ。タスクを足し算ではなく引き算で見る視点です。

ここには「Fail Fast」――早く失敗することそのものに価値がある、という姿勢も連なります。完璧な計画を机上で練るより、早く形にして早く間違え、フィードバックで直す。失敗を避けるのではなく、安く早く失敗しにいく態度です。

「納期は絶対」という神話も捨てます。間に合わないなら残業ではなく、リリースする機能を削る交渉をする。日本の現場では摩擦を生みそうな提案ですが、変化の激しい時代にはこれが正解になる、と著者は説きます。

脳に余白をつくる――WIP=1とメンタルモデル

一流の生産性は、頭に詰め込む情報をどう減らすかにも支えられています。まず断言されるのが、マルチタスクの害。分子発生生物学者ジョン・メディナの研究を引いて、マルチタスクは生産性を40%下げ、仕事時間を50%増やし、ミスを50%増やすと示します。

答えはシンプルで、同時並行をやめること。

そこで掲げられるのがWIP=1(Work In Progress を一つに絞る)です。著者は一日のうち4時間をブロックし、Teamsもメールも閉じて、目の前の一つの作業だけに没頭しました。割り込みを断つのは怠慢ではなく、最も生産的な選択だという腹のくくり方が印象的です。

脳の負荷を下げるもう一つの鍵がメンタルモデル――システム全体の構造を頭の中で視覚化できると、情報処理が一気に速くなる。コードも「極力読まず、インターフェイスと構造だけを理解する」のがコツだと著者は学びます。全部を読もうとするから脳がパンクするわけです。

記憶術として紹介されるのがコーネルメソッド。ノート(記録)、キュー(きっかけ)、サマリー(要約)の三つに分けて書き留め、後日「人に説明できるか」で定着を確かめる。

記憶力が悪いと感じる原因の多くは、実は理解の浅さなのだ、という指摘が私には刺さりました。覚えられないのではなく、わかっていないだけ。

耳が痛い話です。

情報量を減らすコミュニケーション――サーバントリーダーシップ

伝え方も同じ論理で語られます。日本では情報を網羅的に伝えるのが丁寧とされますが、著者の手厚いプレゼンは米国で「情報が多すぎて消化できない」と不評でした。

報告は背景を詰め込まず、結論と相手が一番知りたい点だけを簡潔に。問題があれば一人で抱えず、チャットで違和感を覚えたらすぐ短いビデオ通話(クイックコール)に切り替え、画面を共有してその場で片づける。チャットの往復を延々と続けるより、はるかに速いというわけです。

チームづくりの鍵として挙げられるのがサーバントリーダーシップ。リーダーが細かく指示・管理する「コマンド&コントロール」とは逆で、ビジョンとKPIだけを示し、実行はチームに任せる。

マネージャの役割は、メンバーが働きやすい環境を整え、業務が滞れば障害を取り除く「アンブロック」に徹することです。

著者の上司は、進捗管理より「仕事をエンジョイしているか?」とメンバーの幸福度を気にかけたといいます。これは綺麗事ではなく、幸福感がパフォーマンスを高めるからこその実利的な問いかけです。

議論ではAgree to disagree――合意できないことに合意する。相手のアイデアを否定せず、自分の考えとして意見を言う。この作法が、互いのメンタルを守りながら議論を前へ進めます。

長く働くほど、生産性は下がる

個人的にいちばん耳が痛かったのが、生活習慣の章です。

「生産性を上げたければ長時間労働をやめないといけない、というシンプルな事実に気づかされて、衝撃を受けた」

長く働くほど偉い、たくさん抱えるほど頑張っている。その常識を、本書は一つずつ裏返します。人が一日に一つのことへ集中できるのは4時間ほど。だからタイムボックス制を敷き、17時になればどんなにキリが悪くても仕事を強制終了し、空いた時間を学習や運動、睡眠に回す。

睡眠は100万人規模の調査で7時間の人が最も長生きし、運動はHIIT(高強度インターバルトレーニング)が効率的で、10分で30分のランニング以上の効果がある――そんな具体的な数字とともに、体づくりまでが生産性の一部として語られます。休息も「何もしないことではなく、いつもと違うことをするのが重要」だと言い、部屋の掃除すら、タスクを完了させ切る習慣として人生のコントロール感につながる、と。

終盤はAI時代の生き残り方へ。著者の答えは「専門性」です。世にサンプルが落ちていない未解決の複雑な問題や独自のロジックは、現在のAIには生成できない。AIモデルを実サービスに統合する仕事にも、人間のエンジニアが欠かせない。

AIを恐れて遠ざけるのでなく、アシスタントとして使い倒しながら自分の専門領域を磨き続ける。さらに著者は、ミスを責め立てる日本の「批判文化」に鋭く切り込みます。

接触確認アプリを有志で開発したエンジニアが、不具合をめぐる罵声で心を折られた例を挙げ、批判の代わりに「自分ならどう貢献できるか」を考える――この「貢献と感謝のループ」こそが社会全体の生産性を上げるのだ、と。

この提案は、エンジニアに限らず働くすべての人に響くはずです。

どんな人に効くか

技術職以外でも、長時間労働や抱え込みに心当たりがある人なら得るものは多いと思います。とくに、頑張っているのに成果が出ないという焦りを抱えている人には、頑張り方そのものを問い直すきっかけになるでしょう。

一方で本書の方法は、自立したプロが揃った環境を前提にしている面があります。トップダウンの強い組織で一個人がBe Lazyを実践しようとすれば、周囲との摩擦も起こり得る。

そこは著者自身も認めるところで、万能の処方箋として読むと肩透かしを食うかもしれません。Be Lazyや「定時で上がる」を表面だけ真似れば、ただの手抜きと受け取られる危うさもあります。

本書の核は、減らした先で価値を最大化するという厳しさにあることは押さえておきたいところです。

それでも、読み終えて残るのは「頑張り方を間違えていたかもしれない」という静かな気づきです。試行錯誤より仮説検証、長時間労働より学習と休息。どれも気合では届かない場所にあります。

まずは次にエラーが出たとき、手を止めてログを一つだけ見る。その小さな一歩から、思考の習慣は変わり始めます。


合わせて読みたい

『一点集中術』デボラ・ザック 1日中働いたのに何も終わっていない理由を解き明かす一冊。本書のWIP=1やマルチタスク批判を、集中力の科学としてさらに掘り下げられます。

『仕事の「生産性」はドイツ人に学べ』隅田貫 残業せず成果を出す「70点主義」の極意。本書のBe Lazyや「定時で上がる」という発想と、別の国の文化から響き合います。

『限りある時間の使い方』オリバー・バークマン 効率化の罠から抜け出し、4000週間の人生を取り戻す方法。本書の「やることを減らす」「自分の人生をコントロールする」というメッセージと深く重なります。


この記事をシェア:

次に読む一冊

同じテーマを、もう一段深く考えるための一冊です。

キャリア・働き方『日本一稼ぐ弁護士の仕事術』福永活也|才能がなくても「スピードと時間量」で勝てる『日本一稼ぐ弁護士の仕事術』(福永活也)の要約。「忙しい」「疲れた」「無理」。