はじめに
本記事は新人エンジニアにすすめたい、あなたの勉強法をシェアしよう! by Udemy Advent Calendar 2022 のテーマより「スキル習得までの道のり」を軸に、本質的な勉強法について記載しています。
エンジニアになるための勉強と、エンジニアになってからの勉強は違います。
本記事ではエンジニアになるために、どういった分野を勉強すれば良いかや、エンジニアとしてあり続けるための勉強内容などについては触れません。
目標を達成するための手段として、Udemyを効果的に活用するためのマインドセットと、本質的な勉強法についてまとめています。
これからエンジニアを目指す方の参考になれば幸いです。
Udemy
まずはUdemyについて簡単に紹介します。
ここ数年で、edXやCourseraなどMassive open online course(MOOC)のサービスを利用した勉強も定着してきたと思います。
またYouTubeを見て学習するなど、現代の勉強スタイルは大きく変わりました。
私自身、これまでedXやCourseraなどを使用して学習したことはあります。今でも使用しています。
このような無料で学習できるMOOCのサービスとは別に、Udemyでコースを購入する意義について述べたいと思います。
Udemyについて
Udemyは、オンラインで教育及び学習を行うこうことができるプラットフォームです。
またUdemyは自身で勉強を教わるのではなく、講師として登録することで以下のようなことが実現できます。
- 動画講座を販売
- スキルを共有
- 自分のブランドを確立
従ってUdemyは学習プラットフォームとして、誰もが自分の学びたいことを見つけて学ぶことができ、また世界中の人に自分の知識を共有することができます。
使い方はシンプルです。
何かを学ぶために利用する場合は、新規登録してコース購入後すぐに利用できます。
なぜUdemyを使うのか
私がUdemyでコースを購入する理由は以下の通りです。
- 専門分野で活躍している方々がコースを作成
- 講師の方に質問ができる
- 30日以内に返金可能(参考:コースの返金方法)
実際に現場で活躍している様々な分野のエキスパートの人達が、得た知識を惜しむことなく、このようなプラットフォームで共有されていることに価値を感じています。
またアプリも用意されているので、スマートフォンやタブレットにインストールすることで、通勤時間などのすきま時間を活用して、僅かな時間でも学習することができます。
Udemyでコースを購入するタイミング
Udemyでは定期的にセールが行われています。
本記事執筆中時はブラックフライデーのセール期間中でした。
このようなセール期間時は、通常価格に比べて大幅に安価で購入できるチャンスです。
おすすめの講座紹介
記事投稿ルールに則っておすすめの講座について2つほど以下に紹介します。
分野はセキュリティです。
こちらの講座では、タイトルに沿った内容を軸に、セキュリティの学習プラットフォームであるTryHackMeやHack The Boxを題材に学べる内容となっています。
こちらの講座では、一般的なWebアプリケーションの脆弱性や、実践的なハッキングが学べる内容となっています。
なお、当講座はキャンペーン時に購入できたので、無料で購入することができました。
セキュリティという抽象的な分野でも、専門分野に特化したコースを学習できるのが、Udemyを活用する最大のメリットだと思います。またコースによっては無料で購入できるチャンスもあります。
マインドセット
目標が曖昧だったり、惰性的な勉強ほど生産性がないものはありません。
どれだけ勉強を行い膨大な時間を消費しても、試験の合格や、学んだことが仕事の成果などに結びつかない限り、勉強に対する結果を得ることはできません。
何故勉強するのか、自分と対話を行い本質について考えることから始めましょう。
課題を見極める
前提として、勉強は学業や仕事に関する目標を達成する手段であり、目的ではありません。
目的と手段を混合しないことは、成果を出すために重要なことです。
何か到達したいゴールがあって、そこに辿り着くために、今の自分は何が不足しているのか?
現状(As Is)と、理想(To Be)のギャップを明確にするために、自分の課題を見極めることが重要です。
例えば、未経験からエンジニアに転職しようとして方向性を決めずに、とりあえずHTML、CSS、Javascriptなどを勉強することは本質的ではありません。
何のために、エンジニアを目指すのか?
エンジニアになって将来、何がしたいのか?
そもそも、エンジニアとは何か?
自分の描くエンジニアになるためには、何のスキルが必要か?・・・
本質的に考えるための思考法を身につけるためには、以下の本がお勧めです。
本屋さんに行くと、1つのソフトウェアをテーマに書かれている本が、たくさんあるのが分かります。
時間は有限です。限られた時間の中で、「本質的な選択肢」を見極めることにまずは注力しましょう。
目標をシンプルにする
クラウドファーストの今、エンジニアの役割も10年以上前と比べると大きく変化しました。
インフラエンジニアは、パブリッククラウドの知識だけではなく、SREやDevOpsなどを行うためには、コードの理解も必要です。
開発が主とするWebエンジニアや、アプリケーションエンジニアは、クラウドの知識や、Dockerなどコンテナ技術に関するインフラの理解も必要です。
技術は日進月歩とよく言われますが、仏教で言う諸行無常の世界に近いと思います。
クラウドによるインフラの抽象化、ライブラリ及びフレームワークなどのトレンドもどんどん変わります。
例えば、何かを実装するにあたりライブラリを使用して、要件を満たすことができれば、それに越したことはありません。
しかし、どのような原理で動いているかについて理解しているか、していないかでは大きな違いがあります。
最初は分からなくて当たり前です。
かといって、何でもかんでも詰め込もうとして、勉強が目的になっては本末転倒です。
限られた時間の中で効率よく勉強するためには、遅延評価の考え方を活用し、目標をシンプルにすることをお勧めします。
比較しない
Twitterなどで、駆け出しエンジニアや、つよつよエンジニアなどの比喩を見かけることがあります。
誰かをロールモデルにするのは良いことだと思いますが、無意味な比較は自己肯定感を下げるだけです。
エンジニアの世界に関わらず、生きた時代や、環境で価値観やルールは大きく異なります。
他人と比較するのではなく、過去の自分と比較し、昨日より1mmでも成長していることを確認した方が前向きになれます。
時代や育った環境で、価値観が異なるのは当たり前です。
つまらない尺度に捉われて、自己肯定感を下げるのではなく、合理的な正しいものの見方を身につけましょう。
やり抜く力
GRITは、日本語でやり抜く力と呼ばれています。
やり抜く力は、「情熱」と「粘り強さ」のふたつの要素から成ります。
「情熱」は、目標に対して興味を持ち続け、ひたむきに取り組むことです。
「粘り強さ」は、困難や挫折を味わってもあきらめずに努力を続けることです。
才能という言葉に捉われずに、やり抜く力にコミットしましょう。
できないことを言い訳にするより、どうやったらできるかを考える方が、建設的なのは言うまでもありません。
GRITがなぜ重要と言われているかを知るためには、以下の本がお勧めです。
アメリカの教育界で重要視されているGRIT研究の第一人者の方によって書かれている本です。
YouTubeのTED Talksから、理論の一部について視聴できます。
人生は短距離走ではなく、長距離走のマラソンです。
成功者の共通点は「才能」ではなく「やり抜く力」です。
ビジュアライゼーション
脳科学の世界では、人間の日々の行動について95%は無意識で行われていると言われているようです。
言い方を変えると、意識的な行動は全体の数%に過ぎないという見方ができます。
興味があればBruce Lipton博士の書いた本について調べてみてください。
以下の動画で解説しているビジュアライゼーションは、興味深い内容です。
動画では、脳の網様体賦活系によって、情報を無意識にフィルターしていることや、人間の脳は想像したことと、経験したことの区別ができないことなど脳の仕組みについて説明されています。
ピアノの物理的訓練と、想像上の訓練の違いを比べたビジュアライゼーションの研究結果では、ピアノの訓練を想像上で行うだけでも、物理的訓練の約50%の効果を得られる事が分かったとのことです。
無意識による思考が、人生に与えている影響の大きさにについて考えさせられます。
ビジュアライゼーションを使った無意識による思考のコントールは、脳を合理的に使用する最善の方法だと考えています。
ビジュアライゼーションのやり方は簡単です。
Step:まず、目をつぶる。そして、頭の中で最高の自分がどんな状況にいるか明確に想像する。(例:職場で発言している自分など)
Step:意識的にそのイメージがもたらす感情をしっかりと感じること。(例:こうなったら「幸せ」とか、「誇らしい」とか)
成功哲学の提唱者の第一人者であるナポレオン・ヒルの「思考は現実化する」は、思考が現実に与える影響について思慮深く説いた本です。こちらの本もお勧めです。
ゴミみたいな思考は取り除き、なりたい自分を想像しましょう。
本質的な勉強法
勉強の成果を上げるために、様々な角度から整理した勉強法について以下にまとめています。
思考法
バイアスは捨てましょう。
才能とスキルの違いは何でしょうか。
才能は先天的な意味を持ち、スキルは訓練によって向上できる意味で解釈されます。
エンジニアリングはスキルです。
学習スピードに個人差はあると思いますが、スキルは訓練し続ける限り向上できるものだと思います。
上記で紹介しているGRITの本にも、才能ではなくやり抜く力が重要視されているように、必ずしも才能は将来を約束しません。
常識や固定観念は捨てて、パフォーマンスを発揮するにはどうすれば良いか?思考を停止する事なく、脳を使って考え続けることが重要です。
また思考法については以下の本がお勧めです。
エッセンシャル思考は「何を」やるかを見極める技術、エフォートレス思考は「どのように」やるかを極める技術として書かれています。
バイアスをかけずに自分を客観的に見るためには、脳の背外側前頭前野を鍛えるのが良いそうです。
記憶の仕組みを知る
脳で情報を処理するために重要な働きをしているのが、記憶力です。
人間は、情報の殆どについて忘却するようにできています。(参考:忘却曲線)
繰り返し、反復することで脳に重要だと認知させることで記憶を定着させます。
また、ただ繰り返すだけでなく、脳に刺激を与えながら記憶することが重要です。
何かを覚える時は、手で書いて覚えるのが良いと言われています。
脳を効率的に使う方法が知りたい場合は、脳のメカニズムを題材にした以下の本がお勧めです。
「学ぶ力」は改善できます。
努力ではなく、勉強法を変える事から道は開けます。
練習の重要性
スキルを高めるための近道はありません。
身体技能をマスターするために練習が必要なように、エンジニアの世界も同じく、ただただ練習あるのみです。
資格の勉強、競技プログラミングなど集中力が求められる状況では、日々の効果的な練習が重要です。
練習が脳内の活動にどのような影響を及ぼしているかについて、以下の動画が分かりやすいです。
またあらゆるものをサクッと学ぶ方法について、以下の動画がお勧めです。
動画では、何かを学ぶのに必要な時間は少なくとも20時間は練習する必要があるとのことです。
自律神経を意識する
日々のパフォーマンスを発揮するためには、自律神経との向き合い方も欠かせまん。
加齢によって、自律神経の機能(副交感神経)は低下していくと言われています。
コロナ禍でリモートワークが進み、自律神経が乱れて日常生活や仕事に支障が出る人が多くなっているようです。
自律神経について知りたい方は、以下の記事が参考になると思います。
人間の資本は、心と体です。
勉強の効果を上げるためにも、自律神経を整えることも意識しましょう。
ポモドーロ・テクニック
ポモドーロ・テクニックは、すぐに実践できる時間管理術です。
一般的には25分の作業と、5分の休憩を合わせた30分1セットで勉強を行ないます。
人間はずっと座り続けているのも体に良くないことが研究で判明されています。
25分作業を行なって、休憩の5分間の間にストレッチを行ない、体を動かすことで血流を良くするのも良いと思います。
ポモドーロ・テクニックは、色々な方法で仕組み化できます。
ポモドーロ・テクニックを活用したガジェットなどもありますが、YouTubeなどでも手軽に活用できます。
集中力を高めるためにも、ポモドーロ・テクニックは最適な方法です。
またテレワークなど仕事にも使える時間管理術です。
おわりに
子供の時から戦略的に逆算して思い通りの人生を描く人は、多くはないと思います。
スタンフォード大学のクランボルツ教授は、キャリアの8割は偶然で決まるという計画的偶発性理論を提唱しています。
論文の中ではオープンマインドという言葉を使用し、オープンマインドな人は過去と未来の真ん中にいることを説いています。論文自体は20年以上前に書かれたものですが、今を生きるという考え方は今も変わらないのではないでしょうか。
オープンマインドの精神を踏まえて、好奇心を持ち学習し続けることが、未来のキャリアを決定づける要因になるとしたら、エンジニアという職業に限らず色々なことに興味を持ち続けることをお勧めします。
以上です。