プログラマーやエンジニアになるには?【大学・専門学校・スクール・独学】
こんにちは!
現役Webエンジニアの今井(@ima_maru)です。
今回は、プログラミングを学び始めたいと考えている人に向けての記事になります。
「大学」「専門学校」に加え「プログラミングスクール」という選択肢もあります。
また「独学」という道もあり、それぞれの選択肢のどれが良いのかというのはなかなかわかりづらいものです。
本記事では、これら4つの選択肢についてメリットとデメリットを紹介し、最後にどのような学習方法をおすすめするかを書いています。
それでは、見ていきましょう。
プログラマーになるには?【大学・専門学校・スクール・独学】
プログラミングの学習方法は基本的に4タイプに分けられます。
- プログラミングを学べる大学に進学する
- プログラミングを学べる専門学校に進学する
- プログラミングスクールを受講する
- 独学で勉強する
上から順にメリットとデメリットを見ていきましょう。
【おすすめ度★★★★☆】プログラミングを学べる大学に進学する
まず初めに思いつく選択肢が、プログラミングを学べる大学に進学することです。
プログラミングを学べる大学とは、「情報工学科」「情報科学科」「情報システム学科」などの学科がある大学です。
学部で言えば「理工学部」「情報学部」などが多いです。
最終的にはホームページを見たり、オープンキャンパスに行ったりして確認するのが一番です。
メリット① :IT知識を幅広く学べる
大学で学ぶメリットに「IT知識を幅広く学べる」という点が挙げられます。
プログラミングスクールや専門学校とは違い、大学では様々な分野のIT知識を学ぶことができます。
例えば、コンピューターやネットワークの知識はもちろん、IoTやAIといった最新技術の知識も身に着けられます。
ITの基礎を学ぶ上でプログラミングを学ぶといったイメージが近いかと思います。
メリット②:挫折しにくい
大学で学ぶメリットに「挫折しにくい」という点が挙げられます。
プログラミング学習は、独学の挫折率が90%と言われているほど挫折しやすいものです。
そのため、挫折しにくいというのは非常に大きなメリットといえるでしょう。
挫折しにくい理由としては、以下のようなことが挙げられるでしょう。
- 同じことを勉強している大学仲間がいるから(助け合い・学習モチベーションアップ)
- 4年間と学習期間が長く、ゆっくりと勉強を進めていけるから
- 単位を取るために勉強をするという義務感があるから
メリット③:学生生活が楽しい
大学で学ぶメリットに「学生生活が楽しい」という点が挙げられます。
他の学習方法に比べて、趣味や遊びに時間を多く費やせるため楽しいと感じる人が多いでしょう。
メリット④:給与が上がる
大卒は高卒などに比べ給与が高くなる傾向があります。
これは、大卒だと給料が上がるということよりかは、大学を卒業できるだけの能力を持っている証明になるということだと思います。
もちろん高卒で優秀な人はたくさんいますが、企業側から見ればしょうがないことでしょう。
メリット⑤:キャリアの選択肢が増える
大学への進学は、キャリアの選択肢が増えるという点で非常に大きなメリットです。
やはり、専門学校やプログラミングスクールに行くと、その後のキャリアが非常に絞られてしまいます。
「もともと目指していた『プログラマー』が実は理想とかけ離れていた」「もっと自分に合うキャリアが見つかった」などはよくあることです。
そういった点で、大学進学におけるキャリアの選択肢の豊富さは魅力的でしょう。
例えば私のように、ゲームプログラマーを目指して大学に入ったけれど、Web技術を学んでいくうちに興味を持ち、最終的にWebエンジニアになるといったことももちろん可能です。
さらには、IT系の知識を活かし、プログラマーやエンジニア以外のキャリアも目指すことが十分に可能です。
私の学科では、実際にプログラマーやエンジニア以外の職種に就いた方が多くいました。
また、大学院に進学し研究の道に進むこともできます。
このように大学に進学することは、キャリアの選択肢を増やすことができるというメリットがあるでしょう。
デメリット①:学費が高い(400万~700万程度)
大学で学ぶ場合は、高い学費を払わなければいけないことに注意が必要です。
親が全額を出してくれたり奨学金制度があったりなどの理由で、大学の費用を意識していないこともあるでしょう。
ですが、大学の費用は普通に考えれば非常に高額です。
4年制の理系・情報系大学であれば、400万~700万円程度必要です。
これに比べ専門学校は200万円程度、プログラミングスクールは40万円程度にまで抑えられるため、単純な学習費用でいえば大学で学ぶのは高いと言えるでしょう。
デメリット②:4年間+αが必要
大学の4年間はとても有意義な時間ですが、逆に言えば4年間は大学生でいなければいけないということです。
さらに、専門性の必要なエンジニア(機械学習エンジニアなど)を目指すのであれば、大学院に進学することも視野に入れなくてはいけません。
そのため、早く社会人になりたいという方・短期間でプログラミングを学んで働き始めたいといった方には大学への進学はおすすめできません。
そういった方は、短期間で集中して勉強できるプログラミングスクール、もしくは2年生の専門学校を考えてみると良いでしょう。
デメリット③:プログラミングに特化していない
いくら情報系大学といえど、大学はプログラミングオンリーで学ぶ場所ではありません。
プログラミングやIT技術を中心として、教養科目やITリテラシーなど様々な知識を学ぶ場です。(大学院はもっと専門的ですが)
そのため、プログラミングやエンジニアリングに特化して学びたいという方は、ほかの選択肢も検討してみると良いでしょう。
【おすすめ度★☆☆☆☆】プログラミングを学べる専門学校に進学する
次の選択肢として、プログラミングを学べる専門学校に進学するという選択肢があります。
具体的には、以下のようなサイトで出てくる専門学校です。
まずは、専門学校への進学のメリットとデメリットから見ていきましょう。
メリット①:専門的に学べる
名前に「専門」とつく通り、専門学校にはプログラミングやエンジニアリングについて専門的に学べるというメリットがあります。
要は、仕事に直結する技術や知識を効率的に勉強できるということです。
メリット②:大学より短期間で学べる
専門学校は2年制のところが多く、大学に比べれば短期間で学ぶことができるといっていいでしょう。
実務経験を積むのが2年間早くなると考えれば、非常に大きなメリットになるでしょう。
メリット③:学費が抑えられる
専門学校は、大学に比べ学費が抑えられます。
情報系大学が400~700万円なのに対し、専門学校は200万~300万程度のところが多いです。
メリット④:学校のコネクションを活かせる
専門学校は、企業とコネクションがあります。
そのため、就職が比較的スムーズに進むということがあります。
ただ現実問題、自分の理想の企業に就職することや思っていた職種に就くことは難しい場合もあるそうです。
デメリット①:学歴重視の企業に採用されにくい
プログラマやエンジニアの業種にも、大卒以上を条件として採用をしている企業が多くあります。
スキルはついたとしても、採用条件で弾かれてしまう可能性があることに注意しなくてはいけません。
そのため、あらかじめ行きたい企業が専門卒でも大丈夫かを調べておきましょう。
デメリット②:異業種への就職が難しい
専門学校は大学と違い、キャリアの選択肢が少ないです。
良く言えば専門的に学べると言えますが、悪く言えばそれ以外の業種を目指したくなったときに対応できないということです。
プログラマーやエンジニアが本当に自分に合っている職種なのかを再度自分に問いかけてみてください。
【おすすめ度★★★★★】プログラミングスクールを受講する
プログラミングを学ぶ選択肢の一つにプログラミングスクールを受講するという手があります。
最近は、プログラミングスクールの種類も多く、より自分に合ったスクールを見つけることができるようになってきています。
そんなプログラミングスクールにどのようなメリットデメリットがあるのかを見ていきましょう。
メリット①:専門的に学べる
プログラミングスクールも、プログラミングやエンジニアリングについて専門的に学ぶ場所です。
講師もエンジニアとして実際に活躍されている方であることが多く、実践的なプログラミングやエンジニアリングを学ぶことができます。
そのため、プログラミングに特化して学びたいという方にとっては良い選択肢でしょう。
メリット②:超短期間で学習できる
プログラミングスクールの受講期間は3ヶ月~6ヶ月程度が多いです。
専門学校が2年、大学が4年と考えると、プログラミングスクールがいかに短い期間でスキルを習得できるのかがわかると思います。
今やっている仕事をやめ、いち早くエンジニアに転職したいという方などは、スクールが良い選択肢になるでしょう。
メリット③:学習費用が抑えられる
プログラミングスクールの受講費は40万円程度が多いです。
専門学校が200万円、大学が400万~700万円と考えると、非常に安く抑えられるというのがわかると思います。
コスパ最高です。
メリット④:様々なサポートがある
プログラミングスクールには、転職サポートのような様々なサポートがあります。
サポート | 内容 |
---|---|
転職サポート | 転職保障・全額返金制度・企業紹介・履歴書添削・面接対策 |
学習サポート | 質問サポート(LINE/Slack/Discordなど)・メンタリング・学習計画 |
アフターサポート | 受講終了後でも教材閲覧可能・受講者コミュニティ・受講後の学習計画 |
フリーランスサポート | 実案件保障・フリーランスのノウハウ伝授 |
これらはスクールによって違い、ここにも書いていないようなサポートがあるスクールもあります。
この中でも転職サポートは非常に強力で、プログラミングスクールの中には転職成功率98%を誇るスクールもあります。
こういったサポートを受けられるのもスクールの強みでしょう。
メリット⑤:挫折しにくい
基本的にどのプログラミングスクールも挫折しにくい環境を目指しています。
具体的には、質問サポートの対応をできるだけ早くしたり、週1回メンタリングを挟んで受講者のモチベーション管理をしたりなどの方法をとっています。
そのようなこともあり、プログラミングスクールは挫折しにくいというメリットがあります。
デメリット①:自発的に学ぶ能力が付きにくい
プログラマーやエンジニアという職業は、自ら学んでいく能力が必要です。
わからないから教えてもらうではなく、わからないからまずは自分で調べるというのが日常茶飯事なわけです。
そこで、プログラミングスクールの特徴として受動的になりやすいということがあります。
どういうことかというと、「スクールのカリキュラムに沿って教えてもらうことだけでいいや」という姿勢になりがちだということです。
もちろん、自発的に学ぶことを重視しているスクールもあるので一概には言えませんが、すぐに答えを教えてくれるようなスクールだと、自発的に学ぶ能力はつきにくいでしょう。
自発的に学ぶために、スクールで学ぶ場合は「すぐに答え教えないスクール」を選択するようにしましょう。
デメリット②:人材として差別化しにくい
プログラミングスクール卒は、同じようなスキルセットやポートフォリオ(成果物)を持ったスクール卒に埋もれてしまうということがあります。
実際、エンジニア転職市場ではスクール卒の転職者が溢れていて、面接官も「またこのスクール卒で同じような人材だなあ」という風になっているそうです。
なんでもいいからプログラマーやエンジニアになりたいというのであればそれでいいですが、より良い企業に入りたいのであればスクール卒の中でも自分を差別化しないといけません。
なので、プログラミングスクールを利用するのであれば、スクールで教えてもらうこと以上のものを貪欲に学んでいくべきだと私は思います。
デメリット③:ある程度まとまった時間が必要
プログラミングスクールは短期間で学習ができると言いましたが、それを裏返せば、学習期間中は多くの時間をプログラミング勉強に割く必要があるということです。
つまり、ある程度まとまった時間が用意できる人でないと、プログラミングスクールの受講は厳しいです。
最低でも週20時間以上の勉強時間は絶対に確保しなくてはなりません。
もちろん、仕事をしながらエンジニア転職を目指すというようなスクールもありますが、相当ハードになることを予想しておいたほうが良いです。
【おすすめ度★★☆☆☆】独学で勉強する
プログラミングは、書籍やオンライン学習サービスを使って独学することが可能です。
ですが、初めてプログラミングを学び始める方に、独学はあまりおすすめしません。
その理由としては、プログラミングの独学の挫折率が90%であるということが大きいです。
しかし、それを乗り越えられる自信がある方ならば、逆に独学したほうが良いとさえ思います。
このチャレンジャーなプログラミング学習方法である独学についてのメリットとデメリットをまとめました。
メリット①:学習費用が格段に抑えられる
独学のメリットとして大きいのが、学費が格段に抑えられることです。
項目 | 費用の例 |
---|---|
オンライン学習サービス代 | 月額980円 |
書籍・参考書代 | 新品4000円・中古200円 |
インターネットの情報 | 無料 |
他にもかかるかもしれませんが、ほかの選択肢と比べて圧倒的に費用を抑えることができるでしょう。
メリット②:手軽に始められる
独学のメリットの一つとして、手軽にプログラミング学習を始められるということがあります。
例えば、無料のオンライン学習サービスProgateを使えば、無料でプログラミング学習を始めることができます。
なので、当ブログがおすすめしている学習方法の中でも「スクールを受ける前にまずは独学を」ということを言っています。
メリット③:自分のペースで進められる
独学のメリットとして、自分のペースで学習を進めることができるということが挙げられます。
例えば、「仕事の合間に少しずつ進める」「休日は1単元だけやるようにする」「この週は旅行だから来週多めにやろう」といったように、自分のライフスタイルや予定に合わせて柔軟に対応可能なわけです。
やりたいときにやるスタイルですね。
メリット④:自発的に学ぶ能力が身に付く
独学をすると、いやといっていいほど自発的に学ぶ能力が身に付きます。
わからなくなったときに自分で調べる必要があるからです。
この自発的に学ぶ能力は、プログラマーやエンジニアにとって非常に大切な能力なので、このメリットは大きいといえるでしょう。
メリット⑤:差別化になる
独学は自発的に学ぶ姿勢がないと成功しないという理由もあり、非常に挫折率が高いです。
そのため、独学でプログラミング学習ができている人は、それだけで他と差別化ができます。
具体的には、「挫折率が高い独学の道で成功した人」「自発的に学ぶ能力がある人」といったように見られるということです。
これは、その人の大きな価値になります。
デメリット①:挫折率が高い
独学の挫折率は90%と言われています。
これは、プログラミングを実務レベルで習得するという観点での挫折率です。
Progateレベルのプログラミング基礎学習であれば難易度は高くないので挫折はしないかもしれませんが、実務レベルとなると非常にレベルが高いと感じます。
自信がない方はまず無理、自信がある方でも「やっぱきつかった」とあきらめてしまう方が多いイメージです。
デメリット②:自ら学習計画を決める必要がある
専門学校やプログラミングスクールは、プログラミング・エンジニアリングを体系的に学べるカリキュラムが用意されていますが、独学の場合はそれがありません。
そのため、自らどのように学んでいくのかを決める必要があります。
「何を学ぶか」「どの順番で学べばよいか」「今自分に何が足りないのか」
こういった点を意識しながら勉強を進めていかなくてはいけないというわけです。
【結論】あなたにおすすめのプログラミング学習方法はこれ!
大学・専門学校・プログラミングスクール・独学の4つのプログラミング学習方法のメリットとデメリットを紹介しましたが、これらの学習方法がどのような方に適しているのかも知りたいところですよね。
ここでは、私がおすすめだと思う学習方法を3つ紹介し、それぞれ適している方を発表します。
【実践型】プログラミングスクールで学ぶ
まず初めに紹介したいのが、 プログラミングスクールで学んで就職・転職するスタイルです。
この学習方法は、社会人の方やすでになりたい職種が明確に決まっていて、その職種に適性があると感じている方におすすめです。
短期間かつコスパ良く学習できる点で非常に優秀で、 非常におすすめできる学習方法の1つです。
最も効率的にプログラマーやエンジニアを目指すのであれば、このプログラミングスクール一択です。社会人なら絶対これ。
こちらの学習方法を実践したい方は以下の記事をご覧ください。
ただ気を付けなければならないのが、「やっぱりこの職種は向いていなかった」というときに対応が利きにくいということです。
キャリアの選択肢を広げながら学習をしたいという方は、次の学習方法をおすすめします。
【ハイブリッド型】情報系大学+独学
次に紹介したいのが、情報系大学で学びつつ独学をするスタイルのプログラミング学習方法です。
この学習方法は、まだ具体的な職種までは決まっていないけど、プログラマーやエンジニア(もっと大雑把にIT系)に興味があるというような方におすすめです。
もちろん、すでに大学生の方も独学も一緒にやってみると良いです。
これは私が実践した方法でもあり、非常におすすめできる学習方法の1つです。
キャリアの可能性を広げつつ、ハイレベルなエンジニアを目指せるおすすめの選択肢です。僕はこれでした。
こちらの学習方法を実践したい方は以下の記事をご覧ください。
【自信がある方向け】完全独学
最後に紹介したいのが、完全独学スタイルです。
この学習方法は、独学を絶対に成功させる自信がある方や費用を極限にまで抑えたい方におすすめです。
このスタイルはまずやめたほうが良いと思いますが、独学できる自信があるのであれば逆にほかの選択肢よりもメリットが大きかったりします。
自分に自信がある方は、書籍やオンライン学習サービスなどを使って独学をしてみても良いかもしれません。
まれにみる天才型の方は独学でも十分可能でしょう。今は勉強に必要な情報がゴロゴロ転がっていますから。
プログラマーになる前に気を付けることは?
何かを学習するときは、がむしゃらに勉強するよりもいい方法があるものです。
スポーツでいえば、しっかりとフォームから習得するだとかです。
今回は初めてプログラミングを学び始める方に、学び方や考え方などについて解説していきたいと思います。
何を作りたいか決める
まず自分が何を作りたいかを見極める必要があります。
「Webサービスが作りたい」という方もいれば「スマホアプリが作りたい」という方もいるでしょう。
まだ何か作るものが決まっていないという方は、まずは何を作りたいかから決めると良いでしょう。
作りたいものにあったプログラミング言語を選ぶ
プログラミング言語に特徴や適した分野などがあります。
- 業務システム:Java
- Web開発:Ruby PHP JavaScript
- AI開発:Python
- ゲーム開発:C/C++ C#
- スマホアプリ開発:Swift Kotlin
覚えておいて損はないプログラミング言語をまとめておきましたので、ぜひご覧ください。
プログラミングは手を動かさないと覚えない
ここからは実際にプログラミングを学習するときの心構えです。
まずプログラミングは参考書を買っても、講義を受けても、実際に手を動かさなければほぼ確実に覚えられません。
というよりは、手を動かせば何倍も楽に覚えることができるといったほうがわかりやすいでしょう。
「本を読んで理解する」「講義を聞いて納得する」ことも大切なことですが、実際にコードを書いてプログラミングをすることで初めて自分の技術となっていきます。
エラーを超えて強くなる
実際にプログラミングを勉強していると様々なエラーに直面するはずです。
文法が間違っていたり、型が違ったり、はたまたメモリ不足などでバグが出てくるでしょう。
「なんで?どこがエラーなの?」ということばかりです。
でも大丈夫です。プログラミング学習にエラーはつきものです。
自分で解決を試みるのもいいですし、わからなかったら教えてもらうことでも絶対に力になります。
正しいやり方を覚えただけよりも、正しいやり方と間違ったやり方両方を理解しているほうが良くありませんか?
「失敗から学ぶ」なんて言葉がこんなにもピッタリ当てはまるものなんですね。
最後に
私は中学生の頃にプログラミングについて興味を持ちましたが、いざ独学でやろうとしても手も足も出なかったです。
そこで、大学に入ってから半強制的に勉強することで「あ、意外に簡単だったんだ」と気づきました。
それからは独学もスムーズに進みましたので、最初の一歩がとても重要なんだなと感じました。
以上、「プログラマーやエンジニアになるには?【大学・専門学校・スクール・独学】」でした。
最後までお読みいただきありがとうございます。