世界一流エンジニアの思考法
■購入に至る経緯
先日読み終えた、牛尾剛さんの「世界一流エンジニアの思考法」について記載する。
IT企業にエンジニアとして未経験で入社した私は、コーディングに苦しんでいた。
エラーが出るのは当たり前、エラーの解決も自力で中々できない。
そんな自分を変えたいなと常に思っている。
そんな中、書店で見つけたのがこの本だった。
エンジニアの卵である私は、まんまと本の題名に惹かれてしまった。
いつも通りAmazonでレビューを調べてみると、どうやら悪くない。
買わない理由はなかった。
■第1章 世界一流エンジニアは何が違うのか?
障害を調査するときはいきなり手を動かしてはいけない。
まずは、事実を1つ見つける→いくつかの仮説を立てる→その仮説を証明するための行動をとる。
むやみやたらに試行錯誤するのではなく、まずは自分の頭で仮説を立て証明することが重要だ。
私はエラー文を見たときに、何を言っているのかわからないことが多い。
意味の理解もできなければ、どこで何が起こっているのか仮説をしっかりと立てられていないように感じる。
エラー文の意味を正確に理解できなかったとしても、どの辺が悪そうなのか?どんな原因が考えられそうか?今以上に仮説を立てることを意識したい。
単に思いつきでいろいろなパターンを試して正解を探しているだけでは、とても時間がかかる上、新しい知識を何も学んでいないということを自覚する必要がある。
■第2章 アメリカで見つけたマインドセット
この章は最も印象に残った部分の1つだ。
日本人とアメリカ人の考え方の癖の違いを理解することができ、とても面白かった。
「Be Lazy」(怠惰であれ)という単語がある。
これには、より少ない時間で価値を最大化するという意味が込められている。
一流のエンジニアは「いかにやることを減らすか?」に頭を使っている。
日本人は、全部やらないのは何となく悪いことのように感じてしまいがちだが、「減らすこと」自体に価値があるとマインドリセットするべきだ。
まずは、一番重要な「1つだけ」をピックアップする癖をつけると、仕事を高速で回せるようになってくる。
準備や持ち帰りをやめるてその場で解決することも必要だ。
日本では、会議というと、事前準備をし、終わった後は議事録を書いたりして様々な課題を検討しないといけない状況だった。
インターナショナルチームの人は常に「会議の場」だけで完結させている。
会議に出たら、「会議の時間内だけで完結」するよう訓練すると、非常に生産的になる。
Fail Fastの精神も重要だ。
チャレンジをしないと会社の将来リスクを高める。
成功しようがしまいが、まずはやってみて、早くフィードバックを得て、早く間違いを修正していくことだ。
人間は間違う生き物であるということを理解するべきである。
早く失敗することはそれ自体に価値があるのだ。
■第3章 脳に余裕を生む情報整理・記憶術
生産性とはいかに「何もググらず即実装」できるかを増やすかである。
時にはじゃぶじゃぶ時間を使うことも必要だ。
そうして技術を徹底的に理解し、情報の整理をして、すぐに取り出せるレベルの状態にしてこそ、長い目で見た生産性は上がる。
人に説明可能な状態にもっていく訓練として最良の手段の1つは、ブログを書いてみることだ。
プログラミング上達のコツは「新しい技術を学んだら、ブログを書く」つまり、人に説明可能なレベルで記述することが理解を深め、記憶を定着させることができるのだ。
■第4章 仕事と人生の質を高める生活習慣術
毎日仕事をして寝るだけの生活が続いていた作者は、超一流のメンターに生産性の上げ方を相談したところ、「生産性を上げるためには学習だよ。だから、仕事は定時くらいで切り上げて、自分のやりたいトピックを勉強したり試したりしている」との回答だった。
■第5章 AI時代をどう生きるか?
チャットGPTの開発者が、どうやったらつくれたのか?と聞かれ、「7年間の研究の成果だ」と答えたという。
エンジニアリングの世界では日本から革新的なサービスが中々生まれないのはなぜだろうか?
日本には「批判文化」があるからだ。
アプリケーションはどんなに優秀なチームが開発しようが、必ず何かしらの不具合は存在する。
ソフトウェアに瑕疵があるのは当然のことで、揚げ足をとろうとすればいくらでもとれてしまう。
何か新しいものを誰かが開発してリリースした後に日本では必ずと言っていいほど批判が発生する。
アプリの不具合を声高に批判するのみならず、開発者たちの人格否定レベルの発言をしている有名人さえもいる。
このような展開はアメリカでは起こらない。
日本のSNSの寒々しい光景をみて、折れてしまう開発者もいる。
世界からみたときに、こんな文化圏の国民を進んで助けにいこうと思う技術者はごくわずかだろう。
どんなシステムにもバグはつきもので、改善していくしかないことはもっと理解されるべきなのだ。
いいところが9あっても、問題の1をクローズアップされて批判されてしまうのが日本だ。
この異常な完璧主義、トライする人に対しての嫉妬、批判、中傷が、新しいことへのチャレンジ精神を根本的に奪い続けてきたのだ。
一方、アメリカには「コントリビュート」する精神がある。
まず「自分がどういう貢献ができるの?」という公共性をベースに考えるのである。だから、何かをしてもらったら「ありがとう」という気持ちが生まれ、感謝を表明するのである。
失敗しても現場の心が砕かれない文化的素地は非常に重要だ。
開発者に限らず、日本のあらゆる業界・職種において、批判ではなくポジティブフィードバックに変わったら、日本の生産性は間違いなく上がるだろう。
■第6章 まとめ
・エラーのログを確認し、試行錯誤する前に必ず仮説を立てるようにする。
・減らすことに価値があると考える。
・会議はその場で完結させることを意識する。
・早く失敗する。
・何もググらずに実装できることを増やす。
・新しい技術を学んだら、人に説明できるレベルにする。
・生産性を上げたければ学習。
・日本には異常までの完璧主義、批判文化がある。何かしてもらったらまず「ありがとう」の精神を持つべき。革新的な技術を生む第一歩。
この記事が気に入ったらサポートをしてみませんか?