未経験からWEB系自社開発企業に3ヶ月で転職するまで（スクール編）

## はじめに
　2020年の年末からプログラミングの学習を始め、ありがたいことに2021年3月末にとても行きたかったWEB系自社開発企業様から内定を頂き、転職活動を終える事が出来ました。その中で自分なりにどのようなことを考え、行動したのかをいくつかの記事に分けて投稿します。
　今回はプログラミングスクールについて、自分の考えを書いていきます。拙い文章になりますが、この記事が少しでもエンジニア転職を考えている皆様に有益な情報を残せたらと思います。

## この記事の対象者
- エンジニアへの転職を検討している方
- プログラミングスクールの受講を検討している方

## 簡単な自己紹介
- 25歳
- 文系学部出身
  - 部活動に重点をおいた学生生活を送る
  - 4年生時に留年したため、就職活動は今回が3回目
- 前職は機械メーカーの営業職
  - 1年半で退職
- PCスキル
  - ExcelやWordなら最低限の資料は作成出来る程度
- テックキャンプ92期短期生（2020/12/21 ~ 2021/3/5）
  - 2021/3/30 転職活動修了

### エンジニアへの転職を考えた理由
- **働く場所を選ばないから**
　私の人生設計において、**「場所を選ばずに働ける事」が必須になったから**です。その理由は、結婚を考えている女性の将来の夢が「働く場所が何処になるか分からない、自分では選べない職業」だからです。その夢を横で応援しながら、お互いに刺激を受けながら、高め合っていけるような生活を送る人生を歩みたかった。これがエンジニアを目指した最大の理由です。  

- **努力次第で収入を伸ばせる余地が大きいから**
　未経験からエンジニアに転職した場合、年収は300万程度からのスタートになりますが、その後は知識や技術・工夫によって収入を伸ばせる余地が大きいからです。また、そのノウハウの蓄積も非常に豊富な事が決断の決め手になりました。  

　他にも色々ありますが、意思決定に大きく関わったのはこの２つです。

## テックキャンプについて
　この記事を見つける方でしたら既にテックキャンプの事はご存知かもしれませんが、まずは簡単に紹介しようと思います。簡潔にまとめると**「国内最大規模のエンジニア転職支援付き高額プログラミングスクール」**であり、**悪い意味で注目が集まる事の多いスクール**です。以下にその特徴をまとめていきます。

### 特徴
- 10週間でアプリ開発に必要な最低限のプログラミング技術を学ぶ事が出来る
  - HTML/ CSS/ JavaScript/ Ruby/ Ruby on Rails/ GitHub/ Heroku 等
  - 500~600時間程度の学習時間が必要
  - 約1時間に1回、受講生間で学習内容のアウトプットを共有する時間がある
- 費用は(おそらく)日本で一番高い
- 返金保証がある
  - 14日間返金保証
  - 転職保証
  - 同時に、保証を受けるための条件も沢山ある
- ライフコーチ、キャリアアドバイザーが1人つく
  - ライフコーチ: 学習の進捗状況の把握、学習状況の相談対応
  - キャリアアドバイザー: 転職活動の方向性相談、企業紹介、面接対策
- 学習上の疑問点はメンターに質問出来る
  - メンター: オンライン上で質問対応、GitHubのプルリク対応、カリキュラム外の質問はNG

### ネット上でよく叩かれているところ
- **質の低い量産型のポートフォリオを携えた卒業生が転職市場に溢れている**
　実際に面接を受けた企業様の中にも、過去の卒業生には剽窃したアプリをポートフォリオとして提出してきた人がいたという話を伺いました。そうでなくとも、カリキュラム内で作成した「作り方が１から指示されているアプリ」をポートフォリオとして転職活動を行う受講生が多数存在し、企業側はそれを見過ぎてウンザリしているという話はとても有名です。

- **基本的にはメンターにカリキュラム外の事は質問出来ない**
　上記の現象の原因と考えられるのがコレです。メンターはあくまでカリキュラム学習の補助としての役割なので、オリジナルアプリ開発に関する質問は一切受け付けておりません。そのため、自力でオリジナルアプリを作る事が出来ずに路頭に迷う受講生が大量発生してしまっている訳です。実際にコレを知らずに受講し、過半数の同期がすぐに辞めていってしまいました。

## テックキャンプを受講した理由
　ここまで、テックキャンプのネガティブな面にも触れてきました。ここからは、そんな中でどうしてテックキャンプへの受講を決めたのか書いていきます。

### プログラミングスクールの受講を決めた理由
- **時間が惜しかったから**  
　同年代の現役エンジニアとの経験の差を考えた時、学習開始が早い人は中学生・高校生の頃からプログラミング学習を始め、大学では情報系の学科に進み、既に現場で経験を積んでいます。そうなると、私の年齢でも**既に10年前後の遅れをとっている**ことになります。そういった方々と肩を並べて仕事をするためには、せめて**エンジニアとしてのスタートラインである「転職」までは最短距離で駆け抜けなければならない**と考えました。既に多くの方が述べているように、**「実務経験に勝るものはない」**という意見が一般的になっている事が決め手になりました。  
　また、完全独学でポートフォリオを作成して転職を終えるまでの期間を約1年、プログラミングスクールに通って転職を終えるまでの期間を約半年と仮定すると、その半年分の収入の差でスクールの料金の元は取れると考えました。仮定を組み立てる際に用いた期間設定は、TwitterやQiitaの記事、ブログ等から「何となくコレくらいかな」と叩き出した数字ですが、転職が早く決まる程自分に利益があるという考え方自体はそんなに間違っていないと考えています。

### テックキャンプの受講を決めた理由
- **上記の「ネット上でよく叩かれているところ」が、受講を決めた理由になった**  
　コレは**周囲より一歩努力してポートフォリオを作成すれば、それだけで突出する事が出来るため**です。また、テックキャンプのメンターはポートフォリオ作成に一切関与しない事は有名なので、自力でレベルの高いオリジナルアプリを作り上げる事が出来れば、それは**「他人が手伝っていない、１から自分で考えて作ったものである」事が担保される**ことになると考えました。実際に、面接を受けた際に「カリキュラム外の事をどうやって学習したか」「このオリジナルアプリは何を目的として開発したか」を話すと、面接官の方が目をキラキラさせながら楽しそうに聞いて下さるので、**「テックキャンプ卒業生が面白いものを作ってきた」**というギャップはあったのではないかと感じています。

### テックキャンプの悪評に対する個人的見解
- **悪評の原因は卒業生にある**  
　「低レベルなポートフォリオが量産されていること」がよく悪評として挙げられていますが、それは「このポートフォリオで転職活動を行う」という判断を下したその人自身の問題だと考えています。「カリキュラム内で作ったアプリを転職活動で使う事が好まれていない事を知らなかった」という人が多かったのだとしても、それを調べなかったその人の問題だと思います。「オリジナルアプリ作成をサポートしてくれないなんて聞いてない」という人も、調べずに受講したその人が悪いと考えます。まだエンジニアとして働いていない身分でこんな事をいうのはおこがましいかもしれませんが、**能動的に情報収集をしようとしない人だけはエンジニアに向いていない**と私は思います。  
　そういう意味で、テックキャンプに対する悪評は的外れなものが多いと考えています。数少ない的を射ていると感じた悪評は「教材に日本語としておかしい部分がある」という指摘です。…コレは確かにありました。主語が迷子になっている文章、そこそこありました…。また、転職成功率に関しても、私の同期の過半数が途中でリタイアしている事を考えると、「"IT企業への転職成功者数" ÷ "受講開始者数"」はかなり低くなると考えます。

### テックキャンプを受講して良かったこと
- **生活リズムを整えながら学習を進めることが出来る**
　朝礼の時間やドリルを解く時間などの時間割が決まっているので、寝坊することなく学習を進めることが出来ました。また、ドリルで課されたアルゴリズムをもっと応用の効くものにするにはどのように書き換えればいいか、自分で工夫を加えることに夢中になっていたため、早起きしてみんなよりも先に問題を解いていたりしていたので、学習が進むに連れて生活リズムがどんどん整っていきました。

- **GitHubを用いた擬似的なチーム開発を体験出来る**
　GitHubのプルリクエストやマージは、個人開発では殆ど不要の長物になってしまいますが、テックキャンプのカリキュラムにはメンターにプルリクを送り、LGTMを貰えたらマージして次に進めるというチーム開発の流れを体験することが出来るものもあります。コレは完全な独学では体験出来ない/しづらいことなので、貴重な経験をすることが出来たと感じています。

- **キャリアアドバイザーの支援がとても手厚い**
　「自分がどういう考えを持っていて、どのようなキャリアを歩んでいきたいから、こういう企業に応募したい」といった事を真剣に受け止めて下さった上で、おすすめの求人を紹介して下さったので、「この人になら何でも話せる」という信頼感を強く感じながら転職活動を進めることが出来ました。こういった事を何でも話せて、その上で的確なアドバイスを下さる方の存在は、転職活動に凄まじく大きな影響があると考えます。結果的にとてもスムーズに転職活動を進めることが出来たので、コレだけでもスクール料金分の価値があるように感じたくらいです。
　強いて不満点を挙げるとすると、「書類選考の通過率を見たいから、最初の週は15件求人を送りましょう」という指示に従った結果、想像よりも多く書類が通過してしまい、一時的にてんやわんやになってしまったことでしょうか…。

## エンジニア転職に対する考え
　ここからはエンジニア転職を経て感じた事を書いていきたいと思います。

### 未経験からのエンジニア転職はあまり勧めたくない
　理由としては、同期を見ていて「過半数がリタイアしている」「オリジナルアプリまで作れた人はほんのごく僅か」であることから、相当難易度の高い転職活動になると考えているからです。少なくとも、「今の職場にちょっと不満がある」といった動機ならば辞めておいた方がいいと考えます。

### エンジニア転職は絶対にやめておいた方がいい人
- **自分で情報収集する気がない/1から10まで他人に聞いて解決したい人**

　「調べ方が悪くて、知りたい情報になかなか辿り着けない」というのとは違います。それは調べ方を工夫したり、努力次第でどうにでもなると思います。ただ、一切自分で情報収集する気がないにも関わらず、自分に分かるように教えられないのは教える側が悪いと思ってしまう方**"だけ"**は、本当にエンジニアを目指さない方がいいと考えます。もう**"絶対に"**努力ではどうにもならないからです。

### エンジニア転職を勧めたい人
　以下の全てに当てはまる人です。

- **エンジニアになる事でしか人生設計を叶えることが出来ないと考えた人**
- コツコツとした努力を積み上げることが苦手ではない人
- PCの操作が苦手ではない人

　「論理的思考能力」とか、「独創的な思考能力」とかはそこまで重要ではないのではないかと考えています。「先人の真似をする力」や「情報収集能力」は必要になると思いますが、コレらも全てコツコツと学習を積み重ねていくことでどうとでもなると思います。
　本当に必要なのは「何が何でもエンジニアになりたい/ならなければいけない」といった決意であり、それさえあれば買い手市場になっている未経験エンジニア転職市場に挑んでも大丈夫だと考えています。理由は以下の２点です。

- **結局は「この人と一緒に働きたい」と思ってもらえるかどうかである**
- 技術レベルとしては、一歩応用的な技術を取り入れるだけでも突出することが出来る

　決意の強さは必ず面接官に伝わると思いますし、応用技術を学習する際に何度心が折れそうになってもチャレンジし続けることが出来れば、大体の機能は実装することが出来ると考えているからです。

### テックキャンプなどのプログラミングスクールを勧めたい人
- 転職期間の短さを重視している人
- カリキュラム外の技術も積極的に学習出来る人
- 周囲に人がいることで、お互いに高め合って行ける人
- ある程度金銭的に余裕がある人

　私は面接時にあまり感じませんでしたが、「プログラミングスクールに通ってプログラミングを学習した」という時点である程度マイナスの印象から始まるそうです。理由としては、学習に対して受け身である可能性が高いからだそうです。そのため、行きたい企業の内定を手に入れるためにはSPAやインフラの充実化など、他の受講生と差をつけるためにカリキュラム外の応用技術にも手を出す必要がありそうでした。
　ただし、それさえ出来ればかなり突出することが出来る環境にまだありますので、上記４項目に当てはまる方にはスクールをオススメします。

## まとめ
　**「エンジニアは市場価値が高く、多様な働き方がある」というのは、半分正解で、半分不正解**だと私は考えています。理由としては、正確に言うと「自分でサービスやシステムの仕様を考え、構築することが出来るエンジニア」の市場価値はとても高く、これからも価値が上昇していくのに対して、「言われた通りにプログラムを組むだけのプログラマー」の市場価値はそこまで高いとは言えず、これから価値が下がることが考えられるからです。その理由としては、「NoCode」などのプログラミングスキルを必要としない開発方法が台頭してきていることや、国家的にエンジニアの人数を急速に増やそうとする政策が今後本格的にとられることが予想されるからです。後者が何故プログラマーの市場価値の低下に繋がるかと言うと、エンジニア業界への参入障壁が低くなることが予想され、それによって「ある程度プログラミングの知識がある人」が急増することで、相対的に一人一人のプログラマーの価値が下がってしまうことが考えられるからです。
　**それでもチャレンジしたい/しなければならない理由がある**かどうかじっくり考え、エンジニア転職をするかどうか考えることが必要だと感じました。