こんにちは。もんしょー(@sima199407)です。
という疑問があるかと思います。
これについてもう少し詳しく解説していきます!
動画でも解説してます
プログラミングスクールについてなんですが、
・ざっくり知りたい?
・結局どこに行った方がいいのか?
・独学の方がいいんじゃない?
とかそういう意見に応えていきます。
7つの項目に分けて解説していきます。
1.学べる言語
ここが決め手の一番だと思います。
じゃあ、
・どんな仕事をしようか?
・自分がどんなことをやりたいのか?
そういうことに関わってくるからです。
大きく分けるとWeb系の言語、スマホアプリ系の言語の2つです。
これらを解説していきます。
Web系の言語
まずWeb系の言語は多くのスクールが扱っています。
どんな言語が多いかっていうとRubyとかPythonとかJavaとかそういう言語ですね。
Webサービスを作る人の求人って本当に多いんです。
IT企業だけじゃなくメーカーでも求めていますし、人材派遣、飲食系でもホームページ作って欲しいなどの求人があります。
スマホアプリは作っていないけれどもホームページ作るよってところはあったりします。
基本的に選ぶならWeb系の言語がいいと思います。
最初はWeb系から入るっていう人が多いです。
僕もWeb系から勉強始めて、webサービスの立ち上げや改修に関わってます。
スマホアプリ系の言語
次にスマホアプリ系ですけど、今後の需要を考えるならすごく良いです。
使う言語はSwiftやKotlin(コトリン)などを覚えておくのがいいかもしれません。
web系との違い
需要的な問題ですが、教えてくれるスクールがWeb系と比べると少ないんです。
ただやってる人が少ない分給料が高かったりします。
なかなか見つからないからですね。スマホアプリを作ってくれる人っていうのが。
今後市場としても大きくなる可能性はあると思っています。
皆さんも例えばLINEやNetflixやSlack使ったりとか色々とあると思います。
これらのスマホアプリを作る時には必ずと言っていいほどさっきの言語が使われています。
そういうのを見越して今のうちに勉強しておくのも1つの手だと思います。
スマホアプリ系の新しいトレンド
ちなみに新しい技術としてFlutter(フラッター)っていうものがあるのですがご存じでしょうか?
Googleが作った言語(orフレームワーク)なのですが、iPhoneのiOSっていわれているものとAndroidどっちも一緒に開発できるよっていうスマホアプリの技術で話題になっています。
これもスクールで学ぶよりもUdemyとかで自分で勉強するほうがいいと思います。
もしスマホアプリ系を勉強するのであれば知っておいて損はない知識です。
2.期間
期間と一口にいっても最短何ヶ月、半年ぐらいやりましょうっていうところもあります。
どれくらい行けばいいのかは、人それぞれタイプによって変わります。
このセクションでは短期集中型と長期型と分けて解説し最後にどちらいいのか解説していきます。
短期集中型
まず短期集中型ですが、期間としては1ヶ月、2ヶ月をイメージしています。
どんな人が向いているかというと、
1.プログラミングに興味があるまたは興味程度の人
2.基本的なところは分かっていてプロダクト作成だけやりたいっていう人
3.学生とか長期の休みを利用してガッツリやりたい人
になります。
この期間だとしても十分プログラミングの知識を知ることができますし、Webってこういうことなんだなってことは段階的に分かってくると思います。
僕も最初1ヶ月くらいやったんですけども大方のプログラミングはこういうものなんだなっていう知識は身に付きました。
基礎をやってから行くのがオススメ
基本的な勉強をした人、自分でドットインストールやProgate使いましたっていう人は、メンターを付けながら1ヶ月間、面接とかの対策のためにポートフォリオ作りたいという人でも1ヶ月くらい集中してやれば作れます。
このパターンの人は結構多くて、僕が行っている時にもとりあえず基礎はやっているっていう人が多くてそういう使い方があるんだと思いました。
大学生とかだと夏休みとか春休みとか使って一気にガッとやったほうが時間効率がいいと思います。
長期型
つぎに長期ですが僕のイメージとしては3ヶ月から半年くらいです。
どういう人が長期に向いているかというと
1.イチから覚えたいという人
2.転職とか就職を考えている人
3.会社とか学校に通いながら勉強したい人
になります。
本格的にやるって決めたらこのくらいの期間があったほうがいいかなと僕は思っています。
短期集中でも結果は出せるのですが、記憶の定着とか時間の制限とか考えると長期のほうがいいと思います。
転職を支援してくれる会社とかだったら最短2ヶ月、平均で長くて半年とかかなと思います。
こっちのほうだと基礎からしっかりやって仕事できる最低限のレベルまでもっていってくれます。
例えば、webサービスの一連のだったら、
インフラ環境構築のところからやって、サーバサイドの勉強して、フレームワークやって、フロントエンドの勉強して、あとサーバにアップロードするまでとか、そういうところまでやってくれるところがあるので結構いいんじゃないかなと思います。
たまに長すぎて半年とかだと挫折してしまうっていう人もいるんですけどもエンジニアの仕事考えています、転職したいです、新卒でいきたいですっていう人だったらこっちがおすすめです。
最後にどっちがいいのか?
これは難しいところで、
「1ヶ月で結果を残せるかもしれない」
「半年ぐらいないと不安です」
っていうところとあると思います。
僕の意見は延長できるような仕組みがあるスクールがいいと思っています。
どういうことかというとポイントは、作品作りが終わるかどうかで延長するかどうか決めた方がいいと思います。
最初2ヶ月くらい契約してみてプロダクト作成が間に合わなさそうだなってなったら1ヶ月延長するというイメージです。
自分の進み具合って始めてみるまでわからないじゃないですか。
どれくらい自分に適正があるのかとか。
なのでそういった延長できる仕組みがあるといいと思います。
とりあえず不安なので半年契約しますって考えるよりも、ちょっと様子見つつっていう感じの方がいいと思います。
3.場所
結構迷いますよね。
「近くに教えてくれる人がいたほうがいいのか?」
「家で受講できるオンライン型なのか」
といろいろと考えると思います。
ここで比較したいのがオンラインと通学の2つで最後に僕なりの考えを提案します。
オンラインタイプ
まずオンラインですが、最近はこっちがメインで増えてきていると思います。
理由は対面でやる必要性がないとか感染症対策です。
基本的にパソコンで自分で勉強コツコツやっていくっていうことなので、ぶっちゃけ教えてくれるメンターがずっと近くにいる必要とかってあんまりないんですよね。
メリット
オンラインのいいところとしては、当たり前ですが、場所を選ばないことです。
僕みたいにこうやって自宅からプログラミングの勉強するっていうこともできます。
もちろんカフェに行って行うこともできます。
通学だと通学時間や通学の費用も掛かりますし、そういった時間、労力は学習に充てたほうがいいと思います。
オンラインだからといって対面と質が変わるかというとそういうこともあんまないと思います。
結局カリキュラムは同じですし、メンターさんもちゃんとオンラインのビデオ通話などで週何回とか月何回とかお話してくれるわけなんで、勉強とかそういう進み具合の管理とかもちゃんと担保されているんじゃないかと思います。
通学タイプ
一方通学はオンラインで十分勉強できるのに通学するメリットは何か?
僕的には3つあると思います。
1.メンターさんとの距離が近い
2.生徒通しのつながりが大きい
3.転職型は通学が多い
1つ目と2つ目は分かりますよね。
メンターさんや生徒が近くにいれば、コミュニケーションってあるじゃないですか。
仕事でもそうなんですが、僕は今リモートワークしてて週3回働いているんですけども、そういう時よりもオフィスに行ったほうがどちらかというと会話しやすいんです。
例えばリモートの時に先輩にちょっと通話しましょうとか言って、たわいもない会話すると結構時間取っちゃったりします。
「この人暇そうだな」「ちょっと忙しそうだな」って思うとさじ加減しながら会話できますよね。
話し好きの人は通学タイプのほうが向いているかもしれません。
3つ目の「転職型は通学タイプが多い」ってことなんですが、これは色々とスクールを調べると分かるのですが、転職支援の場合、通学してくださいというパターンが多いんです。
明確なことは分からないのですが、おそらく面接対策とかエントリーシートの添削をしやすいから、あとはチーム開発をメインにしているからだと思います。
転職コースが通学する意味
企業は基本、複数人で仕事を回したりするんですよね。
そのためにもチーム開発を覚えてもらって、オフィスの雰囲気や実務に入った後もちゃんと仕事ができるような環境に最初から慣れておくっていうことで「通学してください」としているのかもしれません。
どっちがいいの?
最後にどっちがいいのか、結論から言うと、僕はオンライン派です。
しかし、僕がプログラミングスクールに行っている時は、オンラインでできるけど通学していました。
カリキュラムはパソコンで見れるからどこででもできたのですが、僕はどんな人がプログラミングを勉強しているのかとか近くにメンターさんがいたほうが話しやすかったっていうのもあって通学していました。
その選択は僕的には良かったと思ってて、
とか色々と雰囲気を知ることができたので楽しかったです。
無理して行く必要はない
教室が本当に遠かったらあまり行かなかったと思います。
たまたま都内にいて都内に教室があったから通ってたというのもあります。
わざわざ地方から来るとかは無理にする必要はないと思っています。
基本的にはオンラインでもいいと思いますが、通えるんだったら通学もやってみるのもアリだと思います。
4.費用

何だかんだ気になるところだと思います。
できるなら安く抑えたいというのが本音だと思います。
だってエンジニアになって、「お金を稼ぎたい!」という目的があるとしたら、そこでお金を使いたくないですよね。
まずは無料と有料のスクールについて解説していきます。
タダで勉強できるしくみ
初め聞いた人は
と思うかもしれませんが通学タイプが多いのですが意外と無料のスクールがあります。
なぜ無料でできるかというと基本的に転職支援スタイルのコースだからです。
プログラミングをスクールで勉強して、その生徒を企業に紹介して転職させます。
その後企業から
ってことで紹介料をプログラミングスクールが貰う、こういうのが一般的な仕組みです。
つまり、新人研修の代わりをプログラミングスクールがやっているわけです。
このため無料でできるわけです。
無料のスクールの場合
僕が知っている中だとGEEK JOBとかウズウズカレッジ
軽く説明するとGEEK JOBっていうのはインフラとかサーバサイドとかオンラインでも通学でもできて新卒でも対応できて、結構幅広く対応してくれます。
都内に結構スクールがあると記憶してて、四谷とかにあったと思います。
ウズウズカレッジは、人材会社が運営しているスクールっていうか研修サービスなんですが、そこが転職支援とかイベントをやっていたりするので結構有名です。
最後にポテパンキャンプですが、これは転職支援型に対して珍しいオンライン型です。
無料と言ったのですが、一旦授業料を払います。
払うのですが転職をスクール経由で成功させると全額戻ってくるというタイプです。
RubyっていうWeb系の言語を使っているので人気なんじゃないかなと思います。
ちなみにですが無料のスクールってJavaを使う研修が多いです。
これ何でかというと求人が多いっていうことと老舗や大手の企業が使ってる割合が大きいからっていうのもあります。
老舗の企業って新人に対して入社後もサポートしてくれます。
それなら最初から自社で研修すればいいじゃんって思うんですが、それができないから一括で人材集めてくれて研修してある程度ちょっと触れるようになった人材を企業で仕事させる。
多分ですが人材教育するための人材が本当に不足しているんだと思います。
転職サポートとかそういうところを見るとJavaの求人が多いと思うのでチェックしてみてください。
有料スクールの場合
次に有料のスクールですが、こっちがメインなイメージだと思います。
有名なところは結構あってだいたい10万くらいかかるコースが多いです。
僕が行ったのは転職ではなく教養みたいなコースでWebアプリケーション作りますってコースでした。
そういうコースよりも転職コースのほうが値段も高く、期間も長かったりします。
僕が知っている有料スクールを3つほど紹介します。
テックキャンプ
TECH CAMP
テックキャンプ
いわゆるスパルタ方式です。
僕は転職コースじゃなかったんですけども、その人たちを見てめちゃくちゃ気合入っていると思いました。
島が区切られているんですが朝から晩までずっといるんですよ。
この人たちなんなんだろうって最初思っていました。
それぐらい転職コースは、気合入っています。
チーム開発とかしっかり学ぶんだったらいいかなと思います。
オンラインでも対応できるようなのでテックキャンプ
TECHACADEMY
次にTechAcademyですが、こちらは完全オンラインです。
こちらも基礎から転職までできるコースがあって、特徴としてコースがめちゃくちゃ多いんです。
今だけでも30以上あって、普通のWebアプリケーション作るっていうコースやWebデザインとかillustratorとかPhotoshopとか使うようなものあったりとか、データサイエンスとか扱ったりとかマーケティング扱ったりとかWeb制作扱っていたりだとかExcel扱ってたりとかすごく幅広いです。
ここだったら自分に必要なもの絶対見つかるだろうなっていうのが全部詰まっているところです。
大体ここは2ヶ月から4ヶ月くらいとコースが分かれているのでしっかり学べるかなと思います。
プログラミングジャパン
聞きなれてない人が多いと思いますが、ここはスマホアプリに特化して勉強できるオンラインスクールです。
スマホアプリに特化している場所は少ないと思うので貴重かなと思っています。
以前に取材しに行き、iOSとAndroidどちらにも対応していました。
つまりSwiftっていう言語とKotlinっていう言語どちらも扱っていました。
もしスマホアプリを作りたいという人は、プログラミングジャパンいいんじゃないかなと。
5.種類

言語選びに近いものになってくるんですけども、以下の部分が重要ですね。
・どんなコースに行くのがいいのか
・どんな種類のエンジニアがいいのか
などを4つのポイントで解説します。
1.フロントエンド
まずフロントエンドがどんな仕事なのか?
軽く説明するとデザインを作る表面の部分です。
Webサービスの表面の部分をつくることが多いです。
割とここはデザインとか直感的に見えるので好きな人多いです。
しかし、フロントエンド専門で教えてくれるところってあんまりなくて、サーバサイド+フロントエンドっていうカタチでに教えてくれるところが多いです。
2.サーバサイド
では、サーバサイドってどんな仕事なのか?というとwebサービスの裏側のロジックを作ったりします。
メール送信作ったりとかデータベース保存とかです。
いわゆるエンジニアっぽい仕事って僕は考えています。笑
Web系のスクールに行くとサーバサイドをメインで教えているってところが多いです。
扱っている言語で言うとRubyとかJavaとかPythonとかPHPとかです。
卒業後も結構仕事がありそうな言語、初心者でも覚えやすい言語の傾向があります。
「フロントエンドやって、サーバサイドを勉強がメイン」というのがプログラミングスクール多いです。
3.インフラ
一方インフラ系は違ってサーバやネットワークの裏側の制御とか管理する仕事です。
ぶっちゃけ、
って個人的には思っているのですが、教えてくれるスクール結構あります。
老舗のスクールとかが多い傾向です。
最近だとAWSとかGCPとか新しい技術を教えてくれるスクールも出てきて、こういうクラウド系を教えてもらった方が今後役に立つんじゃないかなと思います。
今回は紹介しませんが、リナックスアカデミーとかkenスクールとかクラウドだとRaiseTechとかインフラ系をやりたいという人であればこのあたりを見てみてください。
4.スマホアプリ
最後にスマホアプリですが、ここは一番イメージつきやすいかなと思います。
なんとなくアプリって聞くとスマホとかでゲームとか漫画とか動画配信とか、そういうもの多いと思うんですけども業務系のアプリって今すごい増えてて、会社とかで使うようなアプリとかあります。
顧客管理やWeb会議用のツールなどなど、色んなものがあるのでスマホアプリエンジニアもいいかなと思います。

6.卒業後の進路

興味でやるっていう人以外は、卒業したらプログラミングを生かす仕事を選ぶって人がほとんどだと思います。
具体的にどんな種類があるかというと、だいたい以下のものかなと。
・転職
・新卒
・フリーランスと副業
だと思います。
1.転職
スクールを経由して一番価値がありそうなのってこの転職です。
理由は転職コースってめちゃくちゃ多いんですよ。
例えばエントリーシートの添削とか面接対策とか企業の紹介とかしてくれるっていうところが多くて全部完成させられているルートです。
言い方悪いですけど、何も考えなくてもカリキュラムに沿っていけばエンジニアになれちゃうんですよ。
それくらい確立されたルートです。
ただ、長期でやったりとか、課題が多かったりとか、挫折する人も多いんですけどもちゃんとやればエンジニアになれるっていうのが転職タイプかなと思っています。
新卒
これも結構あります、新卒でエンジニアになるためのスクールです。
先に紹介したGEEK JOBっていうのが新卒対応しているところです。
つまり、大学4年生とかが夏くらいからスクール行き勉強し始めて半年ぐらい勉強したりとかして卒業後に仕事始めるっていう感じです。
大学4年生少ないのかなとは思います。
新卒で入っちゃった方が楽だったりするし、未経験でも入れるってところあるんですけども、そういう道を選ぶ人もいます。
大学4年生だったら授業も少ないし、時間取りやすいっていうメリットもあるので、僕ももしかしたら実務経験がなかったらこのルート使ったと思います、無料のスクールもあったりするので。
フリーランスや副業
あんまり聞かないです。
卒業してすぐに仕事取ってくるタイプです。
バイトでもいいですし、案件取ってくるとかそういうとこあると思います。
スクールの人とかに聞くとあんまりオススメはしていないケースです。
まずは企業で働いてからフリーになった方がいいと言われるケースが多いと思います。
スクールとしても微妙なあまり固まってない状態で仕事とれるとは思っていないのでなかなか難しいと思うのですが、人によっては
「働ける時間が毎日バラバラ」
「どうしても家にいないといけないんです」
「介護とか育児とかで―そのためどうしても家にいなければいけない」
っていう人向けのコースっていうのも用意しているところもあります。
例えばRaiseTechのWordPressのコースとかTechAcademyのWeb制作のコースっていうものがあって、そういうところで勉強してクライドソージングとかWantedly使って企業にアプローチかけるとかそういうことをするっていうのもあります。
ただ、あんまりおすすめはされていないと思います。
「最初は実務経験を積んでください」と言われるんですけども、諸事情によっては僕はこの道でも全然OKだと思います。
7.失敗したスクール時代の話

僕は大学休学中にテックキャンプ
その時は何も知らない状態でプログラミングの下調べもほとんどない状態で行きました。
なんでかというとスクールの案内にも全くの未経験OKって書いてあったから、そこで勉強すれば大丈夫だと思っていたからです。
基礎に時間をかけるな
確かに、未経験でもある程度のことは理解できるようになったんですけども、今の反省点としては、基礎ができるのが遅かったことです。
1ヶ月のスクールじゃなくて3ヶ月だったらそんなに支障はなかったと思うんですけども、例えば1ヶ月の受講期間で3週間基礎の時間に使いましたとなるとプロダクト作成とか次のステップの時間が1週間しかないわけです。
それだと使える時間も限られていて基礎だけやっただけだと中途半端な知識になって終わってしまいます。
僕はそういう経験をしました。
プロダクトを作れたには作れたのですが、すごくいいの作れたかなって思うと不完全燃焼みたいな感じでした。
スクール前に絶対にやった方がいいこと
今からスクールに行く人は、本当に基礎のところはProgateとかで無料でできる範囲のところはやってからプログラミングスクールのカリキュラムに臨んでほしいと強く思います。
本当にここやっておけば、だいぶ差がつきます。
色んな目的で皆さんやると思うのですが、興味本位でやるとかだったらまた別ですけど、転職したいとか就職したいとか副業でやりたいとか色々あると思います。
「お金を稼ぎたい」
「自由に働きたい」
とか色々とあると思うんで、その目標を達成するためにも、基礎はあらかじめ早めにやった方がいいと思います。