世界一流エンジニアの思考法を読みました。
全体的な感想
一流のエンジニアでも理解に時間がかかることであったり、単に記憶力が良いというわけではなく深く理解した結果の記憶なんだということがわかって安心しました。
また7章は特に牛尾さんが言いたいことが書いてある章だと感じました。
単に一流のエンジニア個人について書いてあるだけでなく、チームビルディングや文化についても触れられていて、エンジニアとして生産性を上げるための様々な観点が書かれている本です。
特に目を引いたところの抜粋と、感想を書いていきます。
第1章 世界一流エンジニアは何が違うのだろう?
- 試行錯誤は悪
- 手を先に動かさず、仮説を立ててアプローチを選定してから動く
- 頭が良くても「理解」には時間がかかる
- 頭のいい人が理解が早いように見えるのは時間を書けて基礎を積み重ねているから。
- 理解とはその構造をつかんで人に説明できて、いつでもどこでも即座に取り出して使えて、知見を踏まえて応用が効くこと。
感想
「試行錯誤は悪」は誤解を招きそうな表現だが、牛尾さんが言いたいのは仮説を立ててから行動したほうがよいということ。データ分析にせよ施策を打つにせよ、いくつかの仮説を用意してその中で筋の良さそうなものから検証していくというアプローチが有効で腹に落ちる内容だった。
理解が早いように見えるのは基礎を積み重ねているから。これにはコピペエンジニアになることのだめなところが端的に現れていると思う。短期的に成果が出せるように思えても積み重ねが浅いから長期的に見て生産性が下がってしまう。
自分は仕事が忙しい時でもドキュメントをよく読み込むのでそれで良かったんだと思えた。(ものすごく忙しいときはあまり読めてないけれども)
生成 AI のコードを使うとしても、あくまできっかけ程度に考えて自分で調べて理解を深めていきたい。
第2章 アメリカで見つけたマインドセット
- 怠惰であれ。
- つまりより少ない時間で価値を最大化すること。
- いかにやることを減らすか。
- リスクや失敗を快く受け入れる。
- やらないことのほうがリスク。
- 納期は絶対ではない。
感想
この章はエンジニア個人よりもむしろマネジメント層が読むべきかもしれない。
開発をしていると無駄な報告、無駄な打ち合わせ、無駄なドキュメント、無理なスケジュールなど、無駄・無理を感じる瞬間がある。
日本人の傾向としてどうしてもリスクを避けたり納期は絶対という意識が強いように思えるが、かえって価値に繋がりにくくなる面があると思う。
価値に繋がらないのなら積極的に No と言いたいと思った。
第3章 脳に余裕を生む情報整理・記憶術
- 「アウトカム至上主義」が上達を阻害する
- 成果を出すことを目標に働くのはコンサルタントにはマッチするがプログラマにはマッチしない。プログラマは細かい技術の積み重ねが勝負。
- 優秀なエンジニアの記憶力が良いのはよく理解しているから。
- 自分がやったことをクリアに説明できるよう時間をかけて言語化すると理解が増す。
- ブログを書いてみるなどのアウトプットがよい。
感想
1章の内容に通じるが、技術の積み重ねが大事なことがここでも書かれている。うちの会社はコンサルティングの会社なのでこのようなことが書いてあるとちょっと安心する。
自分は記憶力には自信がないものの、経験上自分の興味のあることに対してはよく記憶できる。これは興味の強さが直接の理由というよりは理解の深さの問題なのかもしれないと思った。
第4章 コミュニケーションの極意
- 情報量を減らすコミュニケーションが重要。
- 質問が来たら追加説明すれば良い。
- 気軽に聞ける空気が大事。
- 気軽に断れる空気とセット。
感想
コードの量は少ないほうが良いのと同じで、同じ情報を持つなら量は少ないほうがいいので共感できる内容だった。
第5章 生産性を高めるチームビルディング
- 現場のメンバーがどのように動くか考えて意思決定していくチームがソフトウェア開発に向いている。
感想
エンジニア個人の話というよりかはチームの話。個人的には他の本でも読める内容であんまり興味がわかなかった。
第6章 仕事と人生の質を高める生活習慣術
- 良い習慣を持つ
- 瞑想する
- 睡眠を取る
- 筋トレするなど
感想
これも一般論なのであまりエンジニアには関係ないと思う。
第7章 AI時代をどう生き残るのか?
- 日本の批判文化によって開発者の心が折れてしまう。それがすべてをぶち壊しにする。
感想
ほんとうにそう。
牛尾さんの思いが一番こもっている章に思えた。