独学よりプログラミングスクールでプログラミングを学ぶのをおすすめする理由
いち早くスキルのあるWebエンジニアになるために
この記事にも書きましたが、私は大学を卒業してからWebエンジニアとして働き始めるまでに3年という時間がかかりました。
Webエンジニアとして働き始めるまでは、SIerでエンジニアという肩書きをもちつつもコードはあまりかけず、新しい技術も自由に使えず、ツールにも制限がある環境で悶々とした日々をすごしていました。
このサイトでは私が知りうる限りのWebエンジニアになるための情報を発信していきたいと考えていますがそんな中でも、「自社サービスでユーザの反応の見える会社で働きたい」「メルカリやfreeなどなどイケてるベンチャーでイケてる人たちとガリガリ開発したい」「自分のサービスを開発できるようになりたい!」という人たちはいち早くエンジニアとしてのスキルを身につけるべくプログラミングスクールに通うことをオススメしています。
ただし、プログラミングスクールに頑張って通えば、すごいスキルを身につけて3ヶ月通えば一人前の演じなになれます! なんていうつもりはなく、
やはりいち早くスキルを身につけるには質の高いコードレビューが定期的に実施され、サービス開発に集中できる現場でコードを書きトライ&エラーを繰り返しながら実体験としてプログラミングを学んでいくという方法が一番早いです。
ところがこういった現場や会社に入るには一定の経験や実績が必要で、プライベートもふくめてこれまでプログラミングしたことはないがやる気だけは自信があります!なんて人はその機会にすらたどりつけません。
こういった前提のもと、私はエンジニアとしていち早く経験をつみ効率的にプログラミングスキルを身につけていくにはプログラミングスクールに通うのが一番であるという結論をだしています。
これは先にも関連した私がエンジニアになるのに3年もかかった経験と関連するところもあり、プログラミングスクールに3~6ヶ月通って集中して通って勉強すれば、一年かからずにエンジニアとして現場で経験をつめたのに。。なんていうところも影響しています。
前置きが少し長くなりましたが、今回は以下のように独学よりプログラミングスクールに通うべき5つの理由を以下のようにまとめました。
- 短期的にプログラミングを学ぶことができる
- プログラミングを上達する方法を知ることができる
- 現場で使用されいてるツールや運用方法などを知ることができる
- 同じ目的をもった人たちと情報交換できる
- スキルを身につけるのに良い職場を探すことができる
短期的に集中してプログラミングを学ぶことができる
これは月並みですが、効果が高いです。安くはない授業料を払い腹を決めて3~6ヶ月じっくりプログラミングを勉強する環境をつくることができます。
独学では週1でのメンターとのレッスンや授業などペースメーカーとなる習慣を作りづらく、仕事から疲れて帰って来てプログラミングの勉強に十分時間を割くことができず続かない、たまの休みの時間ができた時に勉強すれども間隔があいてしまってなかな定着しない、なんてことは往々にあります。
スキルのあるエンジニアとして転職したりフリーランスになることができればプログラミングスクールの授業料をチャラにするぐらいはできますし、自分の理想の働き方を実現できるとあればおつりがくるくらいです。
私もWebエンジニアとして転職した当初は年収がさがりましたが、そこから半年ほどで80万円ほど給与をあげて結果的に前職より年収をあげることができました。
今どこか物足りない職場や仕事についているのであれば、短期的に集中してプログラミングを勉強して転職するというのは非常に良い選択だと思います。
プログラミングを上達する方法を知ることができる
正直な話、プログラミングなんてネットにたくさん情報もころがっているし、有名どころのRubyやPHPもかなり情報が豊富なのでなんとなくプログラグラムを組むことができるようになるの誰でもできます。
しかし、ある程度の経験を積んだあとはやはりどういう所に気をつけてコードを書いていくべきなのか、開発を行うにあたってどういう手順でコードを書いていくと手戻りなく開発できるのか、やエラーが怒った時にどうやって対処していくべきなのかというのはなかなか家で一人で独学しているだけでは身に付かなかったり悪い癖がついてしまったりすることがあります。
そういった点ではプログラミングスクールに通うことによって自分の書いたコードを現役のエンジニアに見てもらえたり、コードを書く時に気をつけること、勉強をする際の教材などわりと勉強をするためや良いコードを書くためのメタ的な知識を授けてもらえることも多いはずです。
Webアプリケーションの開発経験のある人がまわりにおらず一人独学で勉強してこれらのことを身につけるというのは幾分難しく、プログラミングを上達するためのコツや変更が容易でバグの少ないコードを書くために気をつけることなどを教えてもらえるということも独学よりスクールをオススメする点の一つです。
現場で使用されているツールを知ることができる
意外に思われるかもしれませんが、実際のシステム開発の現場では、自分たちの作るシステムのコードは全部自分たちで書いているということはかなり稀で半分くらいがライブラリなどを援用していたり、開発の効率化をツールを使って実現していたりなんてことが多いです。
それの際たるものが、テキストエディタですが現場に入るとRubyならRubyMineを使っている人がいたりAtomを使っている人がいたり、VisualStudioCodeを使っている人がいたりVimを使っている人がいたり様々です。
どのエディタが一番とかはなかなか結論がでないところではあるのですが、それぞれに共通する機能で最低限必要なものはいくつかあります。静的解析による構文チェックや補完機能、検索機能などなど、あるのですがプログラミングスクールでも講師陣はそういった情報はキャッチして、実現したい機能に対してどういうライブラリを使えば良いのかや開発効率を落としている要因に対してどういうツールを使えば問題を解決できるのかというのを教えてくれます。
これらの情報は能動的にネットなどに情報を取りにいけばなくもないですが、スクールに通うことでそういった情報が自然と入ってくるという環境になるので、そういった環境づくりのためには独学よりも幾分アドバンテージがあるように思います。
同じ目的をもった人たちと情報交換ができる
私はWebエンジニアとして転職するまで独学でプログラミングを勉強していましたが、職場の人はあまりそういったことに関心もなくあまり話もあいませんでした。
プログラミングスクールによっては現場での開発を想定したグループ単位での開発を行なっていたりしていて自然と同じ目的をもった人たちと触れ合えるような環境を提供してくれるスクールもあります。
グループでの演習はなくてもメンターとして現役のエンジニアと話ができるだけでも自分がやりたい仕事をしている人と話すだけでワクワクできてプログラミングの勉強のモチベーションも湧いてきます。
スクールというと、一方的に教えてもらえるイメージもありそうですが、こういった自分と同じような志向をもった人、同じ境遇の人とあえる機会といのもなかなかないのでこれもスクールに通うメリットの一つです。
良い環境の職場をさがすことができる
最後にこれはなかなか難しいところではあるのですが、独学で勉強するとどうしても転職時にアピールする際の材料が乏しかったり、勉強はするものの自分の技術力がどれくらいなのかわからないなどなどで新しいエンジニアとしての職場を探す際に苦労することがあります。
IT系はフリーランスで高収入などのイメージもありますが、一方で長時間で安月給なイメージもあります。現実として、低コストでビジネスを作れるということで次々といろいろな会社がサービスを立ち上げて切磋琢磨しています。
その中で、スキルが低かったり、業界の動向をしらない状況で転職活動にのぞむと、未経験を逆手にとり、エンジニアとして信じられないくらないの低い手取りの会社に就職してしまったり、Ruby on Railsの開発を勉強していたのに、気づいたらJavaの開発をしていた。なんてこと往々にしておこってしまいます。
そういった、劣悪な職場に出会わず、質の高い転職先をみつけるためにもプログラミングスクールに通ってしっかりとスキルをつけてポートフォリオをしっかり作成て転職活動に臨むことで良い会社を選ぶことができます。
エンジニアになった後の人生として、プログラミングスクールでプロラミングを身につけて終わりではないので、良い職場で開発に集中しながらスキルを上げていけるようにといのは大切です。将来的にも独学ではなくスクールでしっかり力を身につけて転職活動を行なっていきたいところです。
まとめ
つらつらとここまで色々とWebエンジニアになるための最良の方法を書いてみましたが、
- Webエンジニアとして働けるだけのスキルを身につけること
- 開発に集中できる良い職場をみつけること
- エンジニアとしての良い習慣をみにつけること
再三書いていますが、エンジニアとして働けるだけのスキルを身につけるのはプログラミングスクールに通うのがオススメです。私的なプログラミングスクールのランキングは以下にまとめてあります。
オススメのプログラミングスクールはPHPならCodeCamp,Rubyならポテパンなのでそちらに興味のある方はこちらご覧ください。
エンジニアとしての習慣については以下のような記事を書いています。参考になれば幸いです。