世界一流のエンジニアの思考法読後メモ
はじめに
自身の情報を簡単に話すと
ゲーム会社でクライアントサイドのエンジニアとして3年。
担当領域は
アウトゲームのUIシステム
リアルタイム通信のクライアントサイド実装
アセットバンドルやAPI通信などの基盤機能実装
JenkinsなどのCI環境整備
社内ツールの実装
キャラクターアニメーション制御
オーサリングツールの設計・実装
UI Toolkitによるエディタ拡張
デバッグツール周りの実装
など、幅広め。
業界レベルで優れた得意領域と言えるものはないが、新しい技術や未知の分野に対する好奇心とキャッチアップ力が武器。
現在の一番の興味領域は「キャラクターアニメーション制御」
さて、以下はこんな感じの3年目(2024年度から4年目)になるエンジニアが読んでみた読後メモになります。
仮説のない試行錯誤は悪。成果にとらわれず長期的な生産性を上げる
優れたエンジニアは「仮説なしに手を動かさない」
事象を理解し、仮説を立て、検証し、そしてようやく実行に移す。
目先の成果(アウトカム)を上げることにとらわれ、正しい理解、適切な仮説検証、そして実装という流れを軽んじてはいけない。
「理解」に時間をかける
大規模なアーキテクチャ、未知の技術領域、自身の専門分野の根底知識など、基礎的なことから新しい技術のキャッチアップまで「理解には等しく時間がかかるもの」である。
表面を触るだけではなく、正しい理解を心がける。
他者に説明ができる
応用が効く
すぐに取り出せる
この3つが達成できてこそ「正しい理解」と言える。
「習慣」を身につける
「理解に時間をかける」ことと同様に、成長には時間がかかり、積み重ねることこそ重要。
偉大なプログラマではなく、偉大な習慣を身につけたプログラマになること
Be lazy. 限られた時間で正しい成果を生む
「全部やる」から「決めた一つに取り組む」マインドへ
「時間を延ばす」ことではなく「限られた時間で最大限のバリューを生み出す」思考を持つ。
「何かをやらない」選択ができるようになるべき。開発の現場において「やらなければならないこと」から「やれたらやりたいこと」まで様々なものがある。
ただし、2-8の法則とあるように20%の「本当にやるべきこと」に注力することで80%のバリューを生み出すことこそが「限られた時間で最大限の成果を出す」ポイント
自身の時間は限られている。どこまで伸ばしても限界はあるし、全てを仕事に当てていては自身の成長のための時間を確保できない、結果として長期的に自身のバリューを下げてしまうことに繋がりかねない。
「やることを絞る」
メンタルモデルと理解の構造
「理解」を助けるために
頭の中で情報の構造化を行う
他者に説明できる状態にする
アウトプット&思い出すという行為をする
などが挙げられる。
「情報の整理・構造化」「アウトプット」「思い出す」を行うことで「より深い理解」を得ることができる。
生産性を高めるための物理的な取り組み
瞑想
運動
食生活
これらを軽んじてはいけない。
生産性は自身の健康状態に当たり前だが大きく左右される。
仕事の時のパフォーマンスは、今日を生きる自分の過ごし方で決まる。
この記事が気に入ったらサポートをしてみませんか?