プログラミングを学んでエンジニアになりたいけど、独学だと不安・・・。
プログラミングスクールは高いけど、社会人がエンジニアに転職するためなら通うべき?
今回はこんな疑問に答えたいと思ます。
この記事を書いている僕は24歳の時に独学でプログラミングを学び、転職してプログラマになりました。
この記事の目次
IT業界に転職するならプログラミングスクールは不要
いきなり批判的な内容になってしまうかも知れませんが、結論から言うとプログラミングを身につけてIT業界で働きたいと思った場合、プログラミングスクールは不要です。
お金に余裕があって数十万~百万円程度の出費は気にならないよという方は検討してみても良いかもしれませんが。
プログラミングを学ぶ目的を明確にしよう
本記事を読み進める前に、あなたがプログラミングを学ぶ目的を確認してみましょう。
おそらくほとんどの方が「良い待遇(収入や稼働時間、就業場所の自由)で働きたい」か、「自分でサービスを開発して世に出したい。」に二分できると思います。
どちらにしても、「実務レベルのエンジニアスキルを身に着けるため」と言えると思います。
(※上記に当てはまらず趣味として学んでみたい、という方には本記事はあまり参考にならないかも知れません・・・。)
実務レベルのエンジニアスキル=問題解決能力
実務レベルのエンジニアスキルを身に着けたいと思った場合、プログラミングの文法(書き方)を覚えた程度では正直お話になりません。
なにもTwitterで見かけるやたら初心者に厳しいエンジニアのように「エンジニアとはこんなに難しいんだぞ!」ということを言いたいわけではありません。
プログラミングの書き方を覚えるのと、アプリやサービスを作る能力はまた別物なんですね。
プログラミングをして何かを開発する上で、エラーやバグは必ず発生します。
そのときにエンジニアは目標物(本来あるべき、作るべき機能)を確認して、原因を特定して、修正方法を考えて、試して、というサイクルを回すのですが。
「プログラミングの正しい書き方」ばかり学ぼうと思ってしまうと上記のような問題解決のプロセスをおろそかにしてしまうんですね。
どういうことかというと、教材やサイトに書いてある通りにプログラムを書いてもエラーが起きてしまったときに、何が原因なのか自分でたどり着くような応用が効かなくなってしまうんです。
プログラミングの文法なんて開発作業のひとつの要素に過ぎません。
PC端末の問題、データベースの問題などによって正しい文法で書いているはずなのにエラーが出たりうまく動かないことなんてザラにあります。
プログラミング学習で身に着けるべきは「RubyやJavaの書き方」ではなく「問題解決のスキル」と言っていいでしょう。
プログラミングスクールの現状
前項でプログラミング学習で身につけるべきものは「問題解決のスキル」ということをお話ししました。
では、今のプログラミングスクールでは問題解決能力を身に着けるのに有効なのか、という問題になります。
こういった視点を持ちながら、プログラミングスクールの実態について見ていきましょう。
教材は市販のものと大差なし
まず、各スクールの扱っている教材ですが基本的にはどこも市販で売られている入門書やネットで検索すれば見つかるような情報と大差なしです。
それもそのはず、だってプログラミングなんて誰がやっても同じ仕組みで動くものですから。
天才プログラマが書いたコードでも、素人が書いたコードでも中身が同じなら同じように動作します。
よく、「○○回のアップデートを重ねた弊社独自の学習テキスト!」みたいな売り込みをするスクールがありますが、正直なんの強みにもなっていないと思います。
結局は自習時間がほとんど
プログラミングスクールと聞いてもしかしたら実務に必要なエンジニアスキルが身につくまでしっかりサポートしてもらえる。というイメージを持つかもしれませんがそれは誤りです。
基本的にはスクールごとに教材や課題が存在するのでそのテキストや動画に沿って自習学習を進めて行きます。
この間、やはり最初のうちはテキストの内容を間違えて理解してしまったり、自習学習でうまく行かないことが出てくるはずなのでその場合はスクールの担当のメンターにチャットやオンライン通話等で質問を行います。
そして、課題が一通り終わったらメンターと相談してオリジナルアプリケーションの作成をします。
オリジナルアプリケーションといっても、既に世に出回っているWEBサービスをコピーした簡易的なものです。
スクール側としては、挫折させずに卒業してもらったほうが満足感を与えやすいのであまり発展的な課題は与えません。
ほとんどのプログラミングスクールでは実務に通用するスキルの習得は見込めない
ここまで読んで頂いてプログラミングスクールにどんな印象を持ったでしょうか?
教材は市販のもので事足りる。
マンツーマンレッスンではなく自習、詰まったときのみチャットで質問。
僕はこれに数十万~数百万円の費用を支払うのはかなりもったいないと思っています。
プログラミングスクール自体が悪い。と言いたいわけではなく、プログラミング自体どうしても習得するためには
「自分で何か作ってみる→うまくいかない(エラー)→原因を考えて自分で解決する」
というサイクルを経て行かないとなかなかスキルアップに繋がりません
プログラミングを習得していく工程でプログラミングスクール自体が役に立てることってほとんどない→なら使う必要がない。というのが僕の結論です。
実際、「プログラミングスクールに通ったおかげで第一線で活躍できている」というエンジニアを見たことがありません。
プログラミングスクールを選ぶべき観点
上記で必要がないといったプログラミングスクールですが、何もこの世のスクールの全てがいらないと言っているわけではありません。
良心的な価格で十分なサービスを提供しているところもあります。
今度はプログラミングスクールを利用するなら重視すべき観点についてお話します。
現役エンジニアのメンターがついている
メンターがアルバイトやそのスクールの卒業生じゃなくて、ちゃんと実務を行っているエンジニアがメンター役をしているところが望ましいです。
メンターのスキルが低すぎると、そのスクールのカリキュラム以外の質問には答えられない可能性が高いです。
月額2万円以下
契約している期間、月額二万円を切るスクールがおすすめです。
プログラミングの習得スピードは人によってやはり大きく差が出ます。
数か月でモノを作れるようになる人もいれば半年以上かかる人もいます。
ここでは12ヶ月×2万円で年間24万円程度であれば生活費の負担も少なく気軽に挑戦できるのではないかと思います。
もしくは買い切りで永年サポートみたいなものも良いかも知れません。
就職サポートについて【重要じゃないです】
プログラミングスクールはカリキュラム終了後に就職サポートを行っているところも多いです。
こちらについては未経験からの転職先選びは結構重要なので、スクールの提携先に決めるというよりは自分で探して選ぶのが大事なのですが。
就職サポートは無いよりはあったほうが選択肢が増えるかなという感じですね。
結論
まとめると、「困ったときに現役エンジニアのメンターに質問できて、他のサービスはどうでもいいから月額費用がなるべく安いところ」
です。
おすすめのスクール【厳選2つ、ニッチです】
上記の観点を踏まえて、本当にプログラミング習得、エンジニアとしてのスキルアップに繋がると思っているスクールは下記の2つです。
Freeksは月額9800円でカリキュラムが学び放題。契約期間の制限なしなので月9800円で不要になったり合わなかったらすぐにやめることが出来ます。
JavaやPHP、Kotlin等仕事が多い技術を教えていることに感心が持てます。
現役園児エンジニアへのオンライン相談、就職サポート付きです。
ウェブカツは一年で年収1000万円のフリーランスエンジニアを目指す方向けのオンラインスクールです。
バックエンド(システムの裏側の処理)を作るエンジニアよりも画面側のデザインや機能を作ることに特化しています。
各コース内の掲示板で過去の受講者の質問のやり取りのログを見ることが出来るので同じようなことで躓いたときに解決しやすいです。
上記の2つは本当に無駄なサービスをそぎ落とし、出来る限り低価格で未経験者のスキルアップに役立つカリキュラムを提供しています。
使い分けをするならFreeksはまず気軽にプログラミング学習を始めてみたい方。
ウェブカツは案件の取り方や営業方法まで扱って濃密なので、ある程度「エンジニアとして食っていくんだ!」と決断した人向けになると思います。
最後に
繰り返し復習ですが。
プログラミング学習のついてはプログラミングスクールは不要で独学で全然OK。
スクールを利用するなら過度なサービスは不要、現役エンジニアに質問できる環境があってなるべく安価なものを選ぶ。
というのがポイントです。
高額なスクールに初期投資して挫折してしまったら経済的ダメージも大きいので、まずは気軽にはじめて圧倒的に独学に集中するのが得策ですよ。