世界一流エンジニアの思考法

第1章 世界一流エンジニアは何が違うのだろう?―生産性の高さの秘密

  • 理解には時間がかかるもの
    • 手を先に動かさず、まずは仮説をたてアプローチを選定する
    • 熟考なしの試行錯誤は悪
  • 根本を把握していないとトラブルに弱く結局は効率が悪い
    • 目先のアウトプットが本質的な理解を遠ざける
    • 未来の生産性
    • 基本的な構造から把握した知識は応用範囲が広く、複雑な問題も因数分解し対応できる
    • 牛尾さんの対応
      • プログラミングの基礎を学ぶ
      • C#の言語仕様を学ぶ
      • LeetCode
  • メンタルモデルをつくる
    • メンタルモデル
      • 人々が世界を理解し、予測し、解釈し、新しい状況に適用するための、自己の心の中のイメージや理論のこと

第2章 アメリカで見つけたマインドセット―日本にいるときには気づかなかったこと

  • いかにやることを減らすか?
    • 本当に必要なこと1つに集中する
  • 会議の「準備」「持ち帰り」をやめる
    • 💭準備なしの会議で効率的な時間が本当に実現できるのかな。前提として参加者の共通認識は必要そう。何の会議ための会議かとは知っておかないと...という気はする🤔
  • 計画は当初の予測であって、予測不能なことは起きるし、優先順位も変わっていく
  • どれだけ何をやったか?ではなく、どれだけ会社にインパクトを与えることができたか?
  • リスクや間違いを快く受け入れる
    • 間違いを厳しく批判したり懲罰したりしない
    • 失敗から学ぶ
    • 早く失敗する
    • 実験を推奨する
    • 現状維持や標準を要求せず、臨機応変が推奨される
    • 非難や恐怖感のない環境
  • チャレンジしない方が会社の将来のリスクを高める
  • 自分の能力以上のことにチャレンジしているので失敗は起こる
  • 会社と合意したゴール(KPI)を達成しているかどうかが重要
    • 💭 前提として評価基準や目標設定が整備されている、というのがあるのでそれらが整備されていないベンチャーだと違う気はする
  • 不確実性を受け入れる
    • 楽に達成できる計画で仕事をする
    • 無理と言う・断る練習をする
      • 無理の連鎖は疲労を生み、生産性を下げる
      • はっきりと意見表明をする
        • 人格の否定のニュアンスは含めない

第3章 脳に余裕を生む情報整理・記憶術―ガチで才能のある同僚たちの極意

  • 自分が「楽しくない、苦しい」と思う時は「無理」あるサインで、自分のレベルに合っていないことをやっている。上達しない。
  • 自分の言葉で説明可能な状態にする

第4章 コミュニケーションの極意―伝え方・聞き方・ディスカッション

  • クイックコール
    • 自分にその分野のメンタルモデルやコンテキストがなければ聞いた方が早い
    • 受ける側もチーム、プロジェクトを推進させることになる
    • 気軽に聞ける雰囲気は、気軽に断れる雰囲気(知らないことは知らないと言える)
  • ディスカッション
    • 正しいかどうか、ではなく自分の考えを自分なりに深める行為
    • 異なる視点から自分の考えや知識を深めることができる
  • PR コメント
    • In My Opinion
      • 相手を否定しない、相手のアイデアを否定しない、自分の考えとして意見をいう
      • 意見が違うだけであって間違っていると言うスタンスではない

第5章 生産性を高めるチームビルディング―「サーバントリーダーシップ」「自己組織型チーム」へ

  • サーバントリーダーシップ
    • ビジョンと KPI は示すが、具体的にどう動くかはチームやメンバーに任せる
    • チームメンバーをステークホルダー
  • 仕事を楽しんでいるか?を確認する文化
    • いかにメンバーたちが幸せに働けるかに高い関心を寄せ、エンパワーしてくれる
  • メンバーの自発性を促す
    • 自発性が低い人には「どのタスクやります?」とあくまでも選択するのはメンバー
    • メンバーが伸び伸びと仕事を楽しめる環境を作り出すこと

第6章 仕事と人生の質を高める生活習慣術―「タイムボックス」制から身体づくりまで

  • 生産性を上げたければ「学習」すること。仕事ばかりしていては短期的なアウトプットは上がっても根本的な生産性は上がらない。(第1章)
  • タイムボック制を導入し時間で区切る
    • 脳の酷使をやめる
      • 瞑想をする
      • ディスプレイから意識的に離れる
      • しっかり睡眠時間をとる
    • 発想のブレークスルーはその仕事をしていないときに生まれる
  • 身の回りの整理 → 情報の整理 → 頭の整理
  • 新しいことを学んだらブログでアウトプット

第7章 AI時代をどう生き残るか?―変化に即応する力と脱「批判文化」のすすめ

  • 専門性を高める
  • 脱批判文化
    • ソフトウェアの文脈においては、完璧を求める文化は少しも良いようには働かない
    • 完璧主義、失敗者を批判する文化が強い日本
      • 新しことへチャレンジする精神(=> 失敗する可能性の方が高い)
      • イノベーティブなことができない
      • 人がこれくらいやって当たり前、専門家だったら当たり前
      • お客様は神様
  • アメリカの文化
    • まずは自分がどういう貢献ができるか?と言う考えがベースにある
    • 人が自分に何かしてくれたら感謝の気持ちが生まれる
    • 自分が動かなければ良くならないのは当たり前
    • あくまでも自分次第
  • 感謝のループ
    • 作ってくれてありがとう、助かった => もっと良くしよう
  • マネジメントの姿
    • 今からどうやったらよくできるか?自分に何ができるか?
      • それぞれの立場でなすべきこと
    • 完璧主義やメンツからの精神論での納期順守はプロのマネジメントではない
  • 人間は失敗するもの、やってくれてありがとう
  • ポジティブフィードバック

所感

  • マイクロソフトのシニアエンジニアであっても「プログラミングの基礎を学ぶ」ことが大事とおっしゃっているので、もっとコンピュータサイエンスやプログラミングの基礎を学ばねば。
  • 「チャレンジしない方が会社の将来のリスクを高める」「自分の能力以上のことにチャレンジしているので失敗は起こる」という言葉を見て、最近失敗していない(= チャレンジしていない)ので自分を奮い立たせチャレンジし、盛大に失敗してみよう。
  • 脱「批判文化」のすすめ、というのはとても同意できるもので、エンジニアの文化として、HRT がよく取り上げれるが、HRT の前段(土台部分)に感謝(Thanks)というものがある気がしていて、この辺りについて言語化してブログ化する