技術者の学習習慣(エンジニア勉強法)

強いエンジニアが実践している調査・勉強・情報収集の手法をまとめた体系。kzk4043 が社内フロントエンドスペシャリスト10名へのインタビューと「ゆめみ/虎の穴ラボ」の勉強法の勉強会をベースに整理。

銀の弾丸はない。個人差が大きく、引き出しを持って自分に合ったものを選ぶのが本質。

調査の基本フロー(仕事でつまったとき)

コードを変えて境界線を確認
    ↓
AIに聞く(検索のヒントを得る・ラバーダッキング的活用)
    ↓
公式ドキュメント / Google 検索
    ↓
GitHub(社内リポジトリ・社外OSS)を検索
    ↓
人に聞く(20分タイマールール)

AIの正しい使い方

  • 解決ではなく検索のヒントを得る(ラバーダッキング的使い方)
  • 知らない単語の説明・「XとYの違い」の確認・理解の検証に使う
  • エラーメッセージ全体をそのまま貼る
  • エラーが出ない場合や言語化が難しい問題は避けがち

GitHub 検索の活用

  • org:組織名 /調べたい文字列/ path:package.json でライブラリの実際の使われ方を確認
  • 問題ライブラリのリポジトリで Issue を検索(. で github.dev を開く)
  • Google 検索と同頻度で GitHub を使うエンジニアも存在する

学習の主要メソッド

実装による学習

  • 同じブログを異なるアーキテクチャで5回作り直す:FW全体の把握と比較に有効
  • ゲーム(ボドゲ・トランプ)を実装:仕様が決まっており適度に複雑なため学習素材として優秀
  • 自分が使う用のツール、課題ベース・技術ベースで選ぶ

スクラップ勉強法

Zenn scrap を使ったスクラップ起票→追記スタイル。

  • とりあえず起票して、何かあったらメモを追加していく
  • 「一応公開されている感」が気軽でちょうどいい
  • 用途:調べ物実況・作業実況・ドキュメント読み実況

自分リリースノート

  • 1年間の目標を設定し、毎月リリースノートのように1ヶ月の成果を記載
  • 月次振り返りを可視化する継続的な自己評価メソッド

LT・勉強会の逆算活用

  • 先にLTを申し込んで、そこに向けて勉強する:締め切り駆動の学習
  • 勉強会は「ゴール設定なし・テーマのみ設定」「一回でも休まない」が習慣化の鍵

本の読み方

  • 1周目:実装せずサラッと読んで全体把握
  • 2周目:大事なところを実装しながら精読
  • 対象領域で2冊程度がちょうどいい
  • 技術書よりマネジメント・UI・自己啓発系を読んでいる強いエンジニアが多い印象
  • 能動的・批判的な読書には OUTPUT読書術(アバタロー) のフレームワーク(仮説→ツッコミ→要約→出力)も有効

人に教えることによる学習

  • 違う角度からの復習になる(コストが高いため実行率は低いが効果は高い)
  • 質問される場・ポジションを意図的に作ることが重要
  • 誰かの疑問は重要な問いである可能性が高い

最新情報収集のフロー

情報収集の鉄則

「単語を知っておく」を目標にする。理解を目指すと継続性が下がる。仕事で必要になったときの入口とする。

Pick と読むを分離する

  • 記事をPickするフェーズと読むフェーズを分けるのが効率的
  • 長い記事は Gemini で要約 → 興味があれば全文読む
  • 8割は流し読み、残り2割はメモを取りながら精読

チャンネル別の活用法

チャンネル推奨活用法
X(Twitter)良いTL構築。ブックマーク or その場で読む
times(社内Slack)JserInfo 等 Feed 購読。人の times を見るのが一番勉強効率がいい
メーリングリスト週1月曜にまとめてチェック → Zenn scrap に貯める
connpass月1参加。参加できない回も資料で補完
Podcast通勤・散歩中に聞く

マインドセット

学習の本質

  • 実戦に勝る修行はない(by 幽遊白書)— 実戦機会を得るしきい値まで努力が必要
  • 効率 × 時間 が学習量の本質。魔法はない
  • 自分の行動原理を肯定し、自分の欲求を学習に活かす
  • 人間が作ったものは人間が理解できる

学習曲線と停滞期

  • 停滞期があることを理解する
  • 時間だけでなく期間が必要(継続の重要性)

パレートの法則の応用

  • 価値の8割は2割の学習時間から生まれる
  • 伸びる人:2割効果の高い勉強に時間を集中
  • 伸び悩む人:8割の時間を効果の低い(残り2割の価値しかない)勉強に使っている

習慣化のコツ

  • 30分の勉強習慣から始める
  • 立ち上がりを簡単にする(やること決め・勉強工程の分割)
  • 完成させないことを悪く考えない(完璧主義を脱却)

AI時代の学習意義

  • AIは責任を取れない → 嘘を見抜く力が必要
  • 丸暗記は今まで以上に意味がない
  • 進化が早まるのでむしろより多くの学習が必要

強いエンジニアの共通観察

  • 明確な「勉強ルール・習慣」を持つ人は意外と少ない。好きだから強くなった人が多い
  • 平日は小分けに(気になったその場で調べる)、週末は趣味の勉強
  • times を中心に情報共有・収集している人が多い

無料リソース活用(独学者向け)

独学でプログラミングを始める場合は プログラミング独学リソース集 を参照。chi1180 が実体験をもとに厳選した神サイト集で、freeCodeCamp・W3Schools・AtCoder・MIT OCW など20以上のサイトが言語別・用途別に整理されている。

レベルチェックとしては 競技プログラミング(AtCoder) が定番。コンテストへの参加が学習意欲を大幅に高める効果がある。

牛尾 剛の学習フレームワーク(世界一流エンジニアの思考法)

牛尾 剛は学習における「理解」を3要素で定義し、エンジニアの脳の使い方を難易度レベルで分類している。

理解の3要素

理解の3要素(牛尾剛) 参照

仕事の難易度レベル分類

  • レベル1: 何もググらずに即座に実装できる(熟達した知識)
  • レベル2: 解法はわかるがぐぐる必要がある(理解済み・定着不足)
  • レベル3: スパイクソリューションで対応できそう(探索的学習が必要)
  • レベル4: 自分だけでは解決が難しい(他者への相談が必要)

デザインドキュメント先行

手を動かす前にDesign Documentを書くことが最も強力な理解深化手法の一つ。 → デザインドキュメント先行アプローチ

コーネルメソッド

3エリア(ノート・キュー・サマリー)構成のノート術で「後から思い出しながら書く」が核心。 → コーネルメソッド(ノート術)

関連