fv17の日記 - Coding Every Day

Webエンジニアの備忘用ブログです。主にWeb界隈の技術に関して書いています。

【レビュー・体験談】【TechAcademy】2ヶ月間、Webアプリケーションコースを学んでみて

少し前ですが2017年の終わりから2018年のはじめに、TechacademyのWebアプリケーションコースで2ヶ月間学びました。コースで学んだ内容や個人的感想を書いたので、プログラミングスクール選びの参考にしていただければ。

受講したコース

TechAcademyの Webアプリケーションコース

受講した目的

SIer的な企業で働いており実装機会が少なくなったこと、また古い技術で開発しているため危機感を覚え、Railsを習得しWebエンジニアにスキルチェンジして転職したかったためです。

スクールをTechAcademyにした理由は、当時他のプログラミングスクールではなかった、最終課題に自分で考えたWebサービスを開発すること、その成果を持って転職活動をしたかったことが大きく、TechAcademyに決めました。

その後の転職活動において、「スクールに行って、独自のWebアプリを開発したこと」は一定以上評価して貰えた印象があったので良かったかなと思います。

受講時のスキル

  • HTML、CSSJavaScriptRubyをProgateとドットインストールで学習した
  • Javaを用いた実装に複数年携わっており、プログラミング経験はあった

上記の感じで、正直、Web開発に関する技術はかなり低い状態での受講となりました。働きながらでの受講だったため、時間を確保するのに苦労したのが良い思い出です。

コースの内容

コースの具体的な内容は下記の通りです。

  • HTTPなどのインターネットの仕組み
  • HTMLとCSS(Bootstrap含む)の基礎
  • ターミナルコマンドの基礎
  • RubyMySQLの基礎と簡単なWebアプリの作成
  • GitとGithub
  • Heroku
  • Railsアプリを3つ
  • 最終課題に独自サービスの開発

上記を見ると、Web開発に必要な基礎知識の習得から始まり、プログラミング言語であるRubyとデータベースのMySQLを丁寧に学びながら、最終的にフレームワークであるRailsをがっつり使いながら開発していく流れになっています。

要は、極力挫折しにくい学習順序になっており、RailsチュートリアルのようにHTML、CSSRubyとかは既に学習済みであることを前提とはしていません。

いわゆる全く知識ゼロの状態でも、全てをこなすことで最終的にRailsを用いてオリジナルサービスの開発が行えるレベルに到達します。とはいえ事前準備して望んだ方が効率的ですが。それについては後述します。

私は参加時にはWebアプリケーションを独自で開発するなんて想像もしていませんでしたが、2~3ヶ月後には下記を作れるまでにはなりました。
https://wow-together.herokuapp.com/

受講して良かった点

転職活動時に、自分で開発したWebサービスをアピールできた

受講目的でもあった、「転職活動時にWeb開発の成果を持って面接に望めた」点が一番でかいです。コースの中で複数のRailsアプリケーションを開発するため、最初は難易度の高さに驚きますが、復習を繰り返していると「あぁこうすればRailsWebサービスが開発できるのか」ということが肌で理解できるようになってきます。

その結果、最終課題であるオリジナルサービスの開発もスムーズに進み、成果を持って転職活動を行うことができました。そもそもRailsで開発をしたことがない状態でWebエンジニアを目指して転職活動をしても、向いているか、できるかどうかも分からず自信が持てなかったと思います。

メンター制度のお陰で、学習ペースを緩めずに完走できた

TechAcademyの大きな特徴としてはメンター制度があり、週に1~2回ほどスカイプで直接質問をしたり、進捗状況を確認する場があります。これは質問の場が必ず確保できるという点でもメリットがありますが、一番大きかったのは、ちゃんとやらないとメンターから檄を飛ばされるという謎のプレッシャーでした。これがあるお陰で、終電で帰って来た時にもヤバイやらなきゃ!という思考回路が働き、長期に渡って、気が緩むことなく課題を前に進めることができたため良かったです。

やはり誰もチェックしていない完全独学状態では、終電で帰って来たら疲れたから明日やるか...となりがちです。ライザップやコナミスポーツなどのパーソナルトレーナーも、見てくれている人がいる、チェックされている状況である、ということが最後までやり切る原動力の一つになっている気がします。

とは言え終電連続であまり課題が進まない時に、全然進んでないねと言われた時の苛立ちは異常。逆にそのイライラを課題にぶつけてドンドン前に進めたので良かったですが、瞬間的に中々イラっとしたのは覚えています(笑)

Railsアプリを数多く開発する機会があり、Railsそのものに慣れた

コース全体を通して、全部で5つのWebアプリを開発します。Railsを用いないRubyMySQLで作る簡易的なアプリ、Railsを用いた課題アプリ3つ、最終課題のオリジナルサービスの5つです。多くのアプリを開発することでRailsそのものに慣れた結果、独自開発をする際や既存サービスのキャッチアップをする際などにそれほど苦労せずスムーズに行えるようになりました。

これだけRubyRailsで多くのアプリを開発する機会はスクールでないと得られません。Railsチュートリアルだと基本的に1つのアプリケーションしか作成しないため、Railsで開発するという勘所が掴みにくいです。

また、Railsチュートリアルをサポートする動画やスクールが増えてきましたが、正直Railsチュートリアルだったら無料で公開されており、自分でできるのでお金を払う意味を感じません。それだったら、Railsチュートリアル以外の開発機会が得られる他のスクールにお金を払った方が費用対効果が高いです。

ここがイマイチだと思った点

卒業後の技術の伸ばし方に関する情報が少ない

TechAcademy終了後、バリバリWeb開発ができるようになるかというと全然そうはなりません。Webエンジニアとして就職するための最低限の権利(ポテンシャル採用枠に滑り込める)を手に入れただけであって、まだまだ多く学ぶことは残されています。私の場合、転職後に何を学ばなくてはならないかが明確に分かったため、TechAcademy卒業時に教えてくれていればなと思いました。

例えば、RailsエンジニアといえどもVue.jsなどのフロント、AWSなどのインフラ、Circle CIなどのDevops系、RspecメタプログラミングなどRubyRailsのさらに深い部分などなどです。こういったことに関して、コースの中で特に言及されていなかったため、卒業後にWebエンジニアとして食っていけるようにする、その部分を支援するということが弱いと感じました。

働きながら受講したため時間の確保に苦労した

残業が40~60時間前後の場合、正月やGWを挟まずに2ヶ月コースで最終課題まで行くのはかなり難しいです。コースの期間に関しては下記のような目安で良いと思います。これから受講する方へのアドバイスでも記述しますが、受講前にProgateでしっかり事前準備することでだいぶ難易度が下がります。

  • 学生さんの場合:1ヶ月(長期休み中) or 2ヶ月(通常授業期間中)コース
  • 残業がない社会人の場合:2~3ヶ月コース
  • 残業が60時間を超える社会人の場合:3ヶ月コース
  • 残業が80時間を超える社会人の場合:無理。スクールは諦め、マイペースで学習する。(Progate→Railsチュートリアルの流れ)

期間に関しては、3ヶ月を超える場合は高額過ぎるのでオススメしません。忙しい場合も事前準備をしっかりすれば3ヶ月程度で終わる内容です。一部チャットをのぞいていると4ヶ月、5ヶ月も継続しているらしき人がいましたが、事前準備を全くしてこなかったため課題についていけてなかったり、そもそもエンジニアとして向いていないことがやり取りから判断できたりで、金をドブに捨てている印象があったので真似をしないようにしましょう。

エンジニア経験者の場合、正直それほど質問することがない

初心者のうちは聞きまくった方が圧倒的に学習効率がよく、また解決できずに挫折することがなくなるため、メンター制度やSlackでいつでも質問できる制度は良いと思います。しかし、エンジニア経験者の場合、分からなければ自分で調べることもでき、いちいちSlackで聞くのが面倒です。そのようなレベルにある人については、かなり難易度が高まりますが、Progate後、そのままRailsチュートリアルに進み、その後オリジナルサービスを開発したり、よりレベルの高いスクールへ参加するという流れも選択肢として良いです。ただし、Railsチュートリアルは前提としている知識が多かったり、テスト駆動開発を取り入れているなど、難易度が比較的高めです。Railsチュートリアルを一度やってみて手に負えないレベルだと判断した場合に、TechAcademyを受講するのも悪くありません。

ポテパンキャンプと比較し、Railsエンジニアとして転職すること、にフォーカスしていない

これはここ数年乱立しているプログラミングスクールの多くに言えることですが*1受講生が最終的にRailsエンジニアとして活躍していくことにピンを止めていませんRailsを学び、最終課題でオリジナルサービスを開発し、それを成果物として転職活動を行えることは、私が受講した当時には良いキャリアチェンジの手法でした。しかし、私の経験からも、これだけだと実際の開発現場では足手まとい程度の技術力しか手に入らず、最低限ポテンシャルがあると示せる状態にしかなりません。実際に転職後、働きながら大量の不足知識をキャッチアップすることとなり、講座内容と実際の現場にかなり乖離があります。

2018年10月現在では、本気で未経験からRailsエンジニアを目指す場合、ポテパンキャンプが最有力候補です。その理由は後述しますが、TechAcademyを受講するに適していることは下記の条件を満たす方です。

  • 働きながらRailsを身に付けたい場合

 ポテパンの場合、難易度が高く学ぶ量が多いため、他言語でのエンジニア経験者でなければ働きながらの修了は相当厳しいです。

  • ガチでRailsエンジニアを目指す前に、まずWeb開発に自分が向いているかを試したい場合

 ポテパンの場合、ゴールがRailsエンジニアとして就職となるため、目的がそうでない場合は過剰な内容です。 

これから受講する人へのアドバイス

事前準備が大切です

TechAcademyの Webアプリケーションコースで使う技術の入門レベルは、Progateで学べます。

最低でも、HTML/CSSRubyのコースをやってから、できればRails、Command Line、Gitのコースを繰り返し身につけてからTechAcademyに参加するのが良いです。全部やっても1~2ヶ月程度で終わる内容で、月額1000円ぐらいなので2000円程度で学べます。

prog-8.com

プログラミングの経験が浅い場合はTechAcademyはオススメ

Progateを繰り返し行うと、プログラミングの感覚が何となく掴めてきます。その後、TechAcademyでRails開発を学び、Web系の企業にエンジニアとして転職する流れは悪くないです。TechAcademyを受講するメリットはもう一度まとめると下記のようです。

  • 基礎から段階を経て学ぶことができる、またSlackでの質問し放題やメンター制度により、挫折しにくく学習ペースを保てる
  • Railsアプリを複数個開発する経験が得られ、Railsに慣れ、一定水準以上の技術力を身に付けることができる
  • オリジナルサービスを作ることで、転職活動において成果物をアピールすることができる

特に未経験者で転職したい場合、企業側がその人の技術力やポテンシャルを判断する指標がないため、成果物をアピールすることで適性がある、Web技術をキャッチアップする素養があると判断され、ポテンシャル採用の対象と認識されます。私の転職活動においても、技術力が高くない設計屋としての前職からRailsエンジニアとしてポテンシャル採用されたのは、TechAcademyのコースを修了し成果物を完成させたことが大きな成功要因の一つです。

とりあえずどんな内容か知りたいという方は無料体験ができます。

【TechAcademy】ブートキャンプ プログラミング無料体験

Railsを学ぶ時にプログラミング未経験者がしてはいけないこと

Railsを学び始める時に時間とお金を無駄にするのは下記をすることです。私がRailsを初めて学んだ時にこの罠に引っかかり、多くのロスをしました。これからRailsを学び始める方はご注意ください。

まず、RailsはサーバーサイドのWebフレームワークであり、周辺技術のHTMLやCSSRuby、Gitなどに関しては最低限習得済みであることを前提に教材やコースが作られています。そのため、HTMLが全く分からない、Rubyって何?という状態だと、Railsが分からないというだけでなく、その前提知識も分からないとなり、分からないことだらけで100%挫折します。掛け算を学ぼうとしているのに足し算が良く分かっていない、経済学を学ぼうとしているのに高校数学が良く分かっていないのと同じで、無謀です。必ずProgateでHTML/CSSRuby、Git、できればRailsのコースをしっかり学んでから、スクールに入りましょう。

次に、Railsを学ぶ手段としてRailsチュートリアルがありますが、こちらは公式にも書かれているように別言語でのエンジニア経験者がメイン対象であり、初学者だと環境構築やGitなどのRailsとはあまり関係のない部分で長時間つまったりして完走率は著しく低いです。最初の方に熟練になろうというコラムがあるのですが、熟練になる前にだいたい挫折します。また、オリジナルサービスの開発がコース上にないため、転職活動時に成果物をアピールできませんRailsチュートリアルを独学で完了後、さらにオリジナルサービスも一人で開発できる初学者はほぼゼロでしょう。

Progateで基礎を習得後にRailsチュートリアルを行う場合、公式の動画や講座などのサポートが最近出始めましたがオススメしません。無料で公開されているものに対してあまりに高額であり、正直コスパが悪過ぎます。個人的には、無料公開のものに対して有料で補足するとか謎過ぎるだろ...という感覚があります。有料のサポートが出始めたという事実が完走率が低いということを証明しています。

そのため、Progate→TechAcademy→独学でRailsチュートリアル、の流れの方がお金を出すなら断然オススメ。TechAcademyを完了すればRailsチュートリアルも一人でできるようになります。もしくは、後述するポテパンキャンプに入るのが良いです。なるべくお金を掛けたくないという方はProgate後に一度お試しでRailsチュートリアルをやってみることをオススメします。難しければProgateで再度復習し、TechAcademyかポテパンで学ぶことでレベルアップを図り、独学で完走できそうであれば完走後に、自分なりにアプリを作成して転職活動に望めば良いでしょう。

ただし、長期間独学となるため、モチベーションや学習ペースの維持が難しいこと、コードレビューやアドバイスをもらう機会が皆無であり技術力向上が著しく非効率であること、転職関連の情報を集められないため就職に不利、またできたとしてもブラック企業に捕まる可能性が高いなど、デメリットが大き過ぎるのでオススメしません。企業側の視点に立っても、未経験で独学で学んでましたという志願者よりも、すでに卒業生が活躍している信頼あるスクールや転職エージェントでRailsを習得しましたという志願者の方が魅力的に映るのは言うまでもありません。

最後に、Railsを入門書籍で学習することは一番最悪の手段ですので、絶対に止めましょう。特に発売から半年以上すぎた書籍はゴミです。Web界隈の技術はすぐに移り変わり、更新がされない情報はすぐに陳腐化します。具体的には、環境構築で手順通りに行ってもエラーを吐き出して前に進まないなどの問題が頻発します。スクールやRailsチュートリアルの教材は日次や週次単位で更新されますが、書籍に関してはほぼ更新されません。別途HPの方で、補足や更新情報として上げている書籍もありますが、どこが誤った情報か分かりにくく、情報の更新も中途半端に終わることが多いです。また、書籍の場合、身近に知り合いののエンジニアがいない場合、質問する相手もいないので解決手段がなく、学習効率が著しく悪いです。

Railsエンジニアになりたいならばポテパンキャンプという選択肢もある

今年の8月末に News Pick で取り上げられ話題になりました。Railsを学び、かつWebエンジニアとして就職したいならば、最近話題のポテパンも良い選択肢の一つです。

お仕事決まれば全額キャッシュバック!転職特化型Ruby実践研修【ポテパンキャンプ】


こちらはProgateで基礎を習得した初学者を、Railsエンジニアに育て上げ、企業に紹介するためのスクール兼就職エージェントです。まず、Railsチュートリアルを1ヶ月で完了するようにサポートしてくれ、その後3ヶ月間Rubyの実践研修となり、合格すると企業へ紹介してもらえます。

ポテパンの良い点は、受講料が10万円と他のスクールよりも圧倒的に安いだけでなく、研修を突破し企業に就職できた場合その10万円がキャッシュバックされるため、実質的な受講料が0円であることです。また、研修内容もRailsエンジニアとして1年間実務経験を積むのと同等の課題となるため、就職率が格段に上がるだけでなく、配属後に技術力不足で切られる可能性が下がります。

ProgateでのHTMLやCSSJavaScriptRubyRailsをマスターしていることが受講の最低条件ですが、本気でRailsエンジニアになりたいと考えている場合はTechAcademyよりも、まずポテパンの受講面談を受けることをオススメします。ポテパンの方が課題レベルが実践に近く、かつ現役エンジニアのレビューを受けられるため断然オススメ。その代わり難易度が飛躍的に上がるため、注意が必要です。なお、Twitterを漁ると出てきますが、Progateも終わっていない状態で面談に行くと不合格となり、研修を受けることができず門前払いとなるので注意しましょう。

お仕事決まれば全額キャッシュバック!転職特化型Ruby実践研修【ポテパンキャンプ】


*1:1ヶ月でエンジニアとして活躍!!と書かれているところはほぼ120%そうです。1ヶ月で仕事ができるようになるわけがない。甘すぎ。エンジニア舐めすぎ。だいたい女性比率クッソ低いのに、なんで広告で出てくるエンジニア全部女性なんだよ。ドラマ、シリコンバレーでも女性に目が眩んで目的を誤るなよ、広告の時だけ女系比率が上がるんだ、という一説が出てくるけどまさにそれ。