学ぶことがありすぎた一冊です。一流のエンジニアでも失敗はするし、工夫と改善を継続することで成り立っていることがリアルにわかった。結論、今の自分の延長線上にも素晴らしいエンジニアになれる可能性が無数にあることがわかった。
一番ささっとことは、全てにおいて物事をシンプルに考えること。
納期に間に合わない時には、重要度が高いものだけにして、あとはやらないが正。(2:8の法則 20%の仕事が80%の価値を生む。)つまり作業量を落として、インパクトのあるものに集中することが会社と社員どちらにとっても良好。
納期ばかりに重きをおいて、すべてのことを終わらせようとすることがほとんどだが、実際は本当の価値あるものは、その中の20%らしい。全てを終わらせようとすると結局できなかったという結果になり自信も無くしてしまう。終わらないのに無謀に毎日残業する羽目になるり毎日追われている仕事になるから生産性も落ちてしまう。だから自分も何が本質なのかを常に検討する必要がある。
マルチタスクは生産性が落ちるので、work in progress = 1 の状態で仕事する。
一流の人がこう言っている。一流の人でも同時に複数のことをこなすことができないのに自分がこなすことができるわけがない。仕事だけじゃなく、食事、生活全てにおいて常にWPIを1にするよう意識しよう。
1日の反省に仕事内容をまとめる。前日のまとめたものを見返す。つまり理解に時間をかける。理解すると記憶力も生産性もよくなる。生産性を上げるために仕事を定時に切り上げて、自分のやりたいトピックを勉強したり試したりする。
優秀なエンジニアは記憶力と生産性がいい。理由の一つとして仕組みを頭で理解しているからイメージすることができる。イメージにするためには理解に時間をかけるらしい。多分頭にイメージできるようになることで記憶もアウトプットも連想の関係が早くなるのだと思う。理解を深めるためは、毎日の学習や仕事でやってことを復習する時間を取ることだと思う。
その場で解決までしてしまう。持ち帰りは生産性を落とす。
リモートでは特にだが、プルリクでやり取りに時間がかかる場合、オフラインで背景や動作説明する方が早い。
クイックコールは活用する。ただし相手に多くの工数がかからないものだけ。チームトータルの効率は高い。
気軽に聞ける空気の大切さ。初歩レベルの質問でも大丈夫。それでもバリューになる。
失敗に寛容になる。
夜10時に寝る 朝5時に起きる。脳が疲れていると記憶力、生産性が悪くなる。
物事を完了までやる習慣。(例:ランニング〜着替え〜洗濯〜シャワー)。未完了のものが頭に散乱しているせいで頭が散らかっている。物事を完了までやれば、そのタスクは完了済みとなり頭は整理される。