開発者の学習と成長 - 文章版
(kciter.so)以前すでにGeekNewsで共有された発表資料(https://ja.news.hada.io/topic?id=6797)を文章として整理してみました。
- 開発者の悩み
- 何を勉強すべきか?
- スケジュール見積もりはどうすればよいか?
- できる開発者とは何か?
- 自分が勉強したことをどう活用すべきか?
- 自分は本当に成長しているのか?
- 戦略的な学習が必要
- 診断、学習、成果物
- 診断
- 開発の3つの領域
- 思考、技術、科学
- 思考 : 論理的・抽象的・構造的思考に関する領域
- 技術 : 考えたことをそのままコードにうまく落とし込める能力
- 科学 : コンピュータサイエンスに関する知識
- 3つの領域は互いにシナジー効果をもたらす
- 抽象化、例外処理、最適化など
- 足りない部分を把握する必要がある
- 何らかの問題が繰り返し起きるなら、それは自分に足りない部分があるという意味
- 開発の3つの領域
- 学習
- 思考
- 常に疑い、比較し、分析することを通じて練習できる
- 技術
- コードをうまく書きたいなら、できるだけ多くコードを書くことが重要。ライブラリやフレームワークのようなツールは、学ぶときに公式ドキュメントを見ること
- 科学
- 基盤知識であるため、簡単かつ素早く身につける方法はない
- 継続的に学習しつつ、自分にどのような助けになるのかを理解しておくことが重要
- パターン学習
- 業務で繰り返し使われるパターン
- パターンに気づいたら、その場ですぐ整理して記録する
- やったことのないことをやる
- 公開されているソースを参考にする
- 実際に適用する
- 思考
- 成果物
- 知識を整理することと、何かを作ること
- 知識を整理することは、自分が抽象的に理解していることをより具体化するプロセス
- 他の人に公開しなければならないという不便さが成長を助ける
- 何かを作ることは、自分が学んだ知識を実際に活用してみる経験
- 実際の事例を間接的に体験できるということ
- 文章の主題からは外れるが、ソフトスキルもまた重要だ
2件のコメント
ジュニア向けの教育用としてかなり良い内容です
ありがとうございます!