「世界一流エンジニアの思考法」読みました。とても良本だと感じたので、」本記事で要約を残します。当ブログを閲覧しに来てくれた方はエンジニアの方が多いと思うので、ぜひ参考にしてみてください。
✅本記事で学べること
「世界一流エンジニアの思考法」の要約が掴める。
結論。エンジニアであれば「必読書」です。
まず結論です。はっきりいって、ITエンジニアの方は誰でも「必読」に値する神本です。
一通り読み終えた時、「えー本やなあ..」って思ってAmazonを開いてみると、どんどんレビュー数が膨れてあっという間に100を超えて★5つでした。納得ですね。
本書の良いところは、著者が米マイクロソフトでシニアエンジニアを現役でされているということ。その日常のリアルな環境、一流エンジニアのチームメンバーとのやりとりから「いかに彼らはどのように考えているのか?」ということを著者自身が体験し、エンジニアとしてたくさんの気づきを基に、僕らに教えてもらえるところだと思います。
さて、どのような本の内容になっているかは、次です。
「世界一流エンジニアの思考法」の要約
本書は7章から成り立っています。
- 1章 世界一流エンジニアは何が違うのだろう?
- 2章 アメリカで見つけたマインドセット
- 3章 脳に余裕を生む情報整理・記憶術
- 4章 コミュニケーションの極意
- 5章 生産性を高めるチームビルディング
- 6章 仕事と人生の質を高める生活習慣術
- 7章 AI時代をどう生き残るか?
各章ごとに簡単に見ていきます。
第1章: 世界一流エンジニアは何が違うのだろう?
最初の第一章は、エンジニアであれば誰もが気になる、筆者の視点から実際の現場で「超一流エンジニアは何を考えているのか?」のリアルを各ケースごとに語ってくれます。
一番響いたのは、業務の際のトラブルや何か躓いたときに「感覚で判断せずファクトを積み重ねる」ということ。別に著者に乗っかるわけではないですが、自分も著者と同じ大阪人で遺伝子的に?「急ぎ癖」があります。
なので、何かトラブルがあっても感覚で「あーこうちゃうかなあ?」と思うことで行動してしまったりすることが多々あります。
幸い、僕の周りは優秀なエンジニアばかりなので、周りを見るとみんなちゃんと「ファクトを積み重ねる」ということをしてると思います。
そのおかげもあって、だいぶ改善はされたと思いつつ、自分ではいけない、とわかってはいてもやっぱり遺伝子的に感覚肌で行動してしまうことがあります。これは本当にエンジニアとしてはよろしくない癖なので、何よりファクトを人一番意識しながら行動していかないといけないなと改めて実感しました。
繰り返しますが、良いエンジニアとしての一歩は「感覚で判断せずファクトを積み重ねること」これに尽きます。
第2章: アメリカで見つけたマインドセット
「Be Lazy」(怠惰であれ)というマインドセットの一つを本書は述べられています。
「より少ない時間で価値を最大化するという考え方」です。
以下、その習慣リスト。
- 望んでいる結果を達成するために、最低限の努力をする。
- 不必要なものや付加価値のない仕事(過剰準備含む)をなくす。
- 簡潔さを目指す。
- 優先順位をつける。
- 時間を費やした努力より、アウトプットと生産性に重点を置く。
- 長時間労働しないように推奨する。
- 会議は会議の時間内で効率的かつ生産的に価値を提供する。
というもの。
日本とアメリカの大きな違いとして、「優先順位」をつけるのは同じでも、アメリカの場合は一つだけをピックアップして、その価値を最大化するということです。※それ以外は基本的にやらない。
逆に日本人は「すべてをやろうとしてしまう」傾向があり、それは良い側面も味方によってあると思いますが、その結果、長時間労働につながるケースが多いとのことでした。
それと、2章で一番大切にしたいと感じた個所は、
「成功しようがしまいが、まずはやってみて、早くフィードバックを得て、早く間違いを修正していくーFailFastの精神」
という個所。早く失敗することで、結果的に問題解決に早い段階で向かっていけることは仕事を進めていく上で大切なことだと思います。
著者も語られてますが、日本は失敗に寛容でないケースが多いとのこと。反転、アメリカの文化は「失敗して、おめでとう、ありがとう」と前向きにとらえている所に大きな差があると主張されています。
失敗してはいけない文化だと、間違ったことを言ってしまっていないか、という自己疑念に陥りやすく、発言が後回しになってしまう傾向があるとすれば、それはよくないことだと強く思います。
第3章 脳に余裕を生む情報整理・記憶術
第3章で、特に覚えておきたいことは、
「どんなすごい人でも、時間がかかることはかかる。焦らず時間をかける」
ということ。どうしても周りのエンジニア仲間がほいほい問題解決していく姿を見ていると、焦りがちになりがち。でも、結局焦っても何一ついいことはないんですよね。
繰り返しになりますが、問題解決には「ファクトの積み重ね」が肝心で、焦ってしまうとどうしても感覚で決めてしまいがちになります。
他、自分も心掛けていることですが、「マルチタスクはしない」ということです。何か一つのタスクを取り出したら、それだけに集中する。
プログラミングも同じです。あれやこれやと頭が散乱している状態だと、結局プログラミングが進まないです。
まずは、できるだけ細切れにして「今自分は何がしたいのか?」を常に明確に持つことが生産性の高さにつながると思います。
本書はより具体的にマルチタスクにしないようにブラウザのタグ閉じなども推奨されています。(自分もタグを少なくするようにしています)
第4章 コミュニケーションの極意
本章で、ぜひ覚えておきたい大切な項は、「コードを読みものとして捉える」です。
著者がプルリクエストをした際に指摘コメントの多さに「なぜ?」を感じていた際、同僚から言われた言葉は
「みんなコードの内容がわからないからコメントを書くんだよ」ということでした。
コードを一つの読み物としてレビュワーを意識した書き方をすることは、プログラムを書く際に忘れてはならないことだと思います。
「とりあえず、実装できればいい、目的を達成できればいい」というのは、ある意味正解の側面もあれば、一歩踏み出した考え方をすると、不正解でもあるな、と感じます。
ほかにも、「意見が対立しても否定しない」という項目も、僕の職場でのコードレビューの基本方針にも盛り込まれていますが、コミュニケーションの基本として常に心掛けておきたい事柄です。
第5章 生産性を高めるチームビルディング
「サーバントリーダーシップ」「コマンドアンドコントロール」皆さんは聞いたことあるでしょうか?
・「サーバントリーダーシップ」
メンバーが主体で動き、マネージャは彼らの障害を取り除く役割
・「コマンドアンドコントロール」
マネージャが部下に指示をする
日本で主流なのは、残念ながら「コマンドアンドコントロール」が主流。要はマイクロマネジメントですね。。
自分も今の職場環境以前では、コマンドアンドコントロールが主体で、何をするにしても上司の許可を得る必要がありました。(というか、そこまで典型的でなくても、社内政治はあったし、上下関係もはっきりしていた感がある)
コマンドアンドコントロールでは、部下が常に「指示待ち」の状態になってしまうので、生産性は上がらないし、そもそも自分の頭で考えることを放棄している状態です。
なので、米国では「オールドファッション」と呼ばれているらしいです。(皮肉っぷりが共感)
本書では、いかにサーバントリーダーシップ環境のチームビルディングが生産性向上につながるか、仕事を楽しく主体的にこなせるようになるか、ということを中心にお話されています。
エンジニアにとってサーバントリーダシップ体制という形は必須だと考えていいと思います。新たに職場環境を考える際取り入れておきたい、理想的なチームビルディングの形だと思いました。
第6章 仕事と人生の質を高める生活習慣術
さらにエンジニアの生活に踏み込んで、長期的視点で、生活習慣についても述べられています。
著者は、後片付けが苦手だったらしく、部屋が散らかっている状態が常だった模様。ですが、片付けを最後までやり通すことで、頭や心がすっきりすることを実感し、それを実践し続けているようです。
あと、睡眠や、食べ物、仕事は定時上がりが生産性につながること、これらは自分の生活に当てはめて、改善の余地がありそうな方は、実践する価値は十二分にあると思います。
コンピュータの仕事は確実に運動の面で不利です。僕も必ず時間をとって運動するようにしています。
健康を維持する生活を継続することで、長期的にエンジニアとしての仕事を長く続けることが可能ですし、成長し続けることができると思います。
長時間労働は昭和の考え方。重い病気になったら、誰も助けてくれません。自分が損するだけですよ。(ほんまに)
第7章 AI時代をどう生き残るか?
最後の章はChatGPTを代表とする、様々なAIの登場によって、今後キャリアの生き残りをかけて、どのようにアクションを起こしていけばいいのか?ということについて言及されています。
結論として「より専門性を磨き、強くしていくこと」ということです。
当然、AIは今後発展していくことは間違いないですが、筆者はプログラミング作業時にも「Copilot」を導入して実装を進めていたり、AIをうまく活用していると思いました。エンジニアはAIを使いこなす側であるはずで、使われる側に立たないように日々の研鑽は欠かさないようにしたいものです。
まとめ
各章ごとに自分自身が一番強く印象に残った部分を抜粋しつつ、「世界一流エンジニアの思考法」の紹介をしました。
本当に少しの気づきしか紹介していないので、本記事を読んだ方で少しでも引っかかる内容があれば、一読してみる価値はあると思います。
また、エンジニアとしてのキャリアを考慮する際にも、「どんな職場環境を求めればいいのか?」が明確になると思いますし、ビジョンが広くなります。
エンジニアとして日々の過ごし方もそうですが、何より一流エンジニアがどんなことを考えて、どんなアクションを起こし、人間関係やチームの在り方を望むのか、というロールモデルが示されていることは、エンジニアとして参考にできることはたくさんあると思います。