1/28 TechCampを卒業しました。就職活動もひと段落したので感想を記載しようと思います。
結果としては、3/26に自社開発の企業から内定をいただくことができました。
今回は、受講した感想と卒業後の勉強の方法を本音ベースで書き留めていこうかなと思います。
今後エンジニア転職をお考えの方の参考になれば幸いです。
私自身について
現在26歳
前職では某大手CVSのスーパーバイザーとしてコンサルティング業務に携わっていました。
学生生活ではバスケットボールに心血を注いでいました。
残念なことに、プログラミングの経験は全くありません。
TechCampで習得できるもの
今回は習得できるものの詳細は、他により参考になる記事がたくさんあるため割愛させて頂きます。
言語
○HTML&CSS
○JavaScript
○Ruby
フレームワーク
○Ruby on Rails
サーバー
○MySQL
コード管理
○Github
その他
Heroku
AWS
Slackなど
正直、TechCampを卒業したからといってエンジニアとしての実力がつくのかという問いに対しての答えは「No」です。
では何も得られないのかと問われたら、それも「No」です。得るものはあります。
どういうことかというと、
例えばフロントエンドの言語において、現状のIT企業で、HTML&CSS、JavaScriptで完結している会社はほぼありません。モダンなフレームワークであるる"React.js"、"Vue.js"、"Angular"などフレームワークを使用しています。
しかし上記のフレームワークはHTML&CSS、JavaScriptの知識が必須になります。
つまりTechCampというサービスはエンジニアになるための基礎を固めることがゴールとなります。
ポケモンで言えば、ゲームを起動してオーキド博士から"ヒトカゲ"、"フシギダネ"、"ゼニガメ"のどれかを1匹もらえたイベントまでがTechCampの役割ということになります。
つまり、卒業から就職まで、そして就職から1人前のエンジニアになるまでは、TechCampからもらったLv.5のポケモンを自らの力で育てなければならないということになります。
卒業後の学習
では私自身がどのようにLv.5のポケモンを育てて、自社開発企業に内定を頂いたのか
まずどの企業でも使える可搬性の高い技術の習得を第一優先としました。
具体的には
○基本情報技術者、Linuxコマンド
まずネットワークの仕組みは当たり前ですがIT企業で働く上で理解しておくべきものです。
キタミ式基本情報技術者、Linux標準教科書という書籍を購入するのがいいかなと思いました。
○Vue.js
現在のモダンなWebアプリケーションとして「SPA(シングルページアプリケーション)」というのがあります。
JavaScriptのフレームワークを使うことが必要です。
しかしこれはTechCampの学習では習得することができません。
ポートフォリオという自己紹介するWebアプリケーションがあると就活で有利です。
どうせならこれをSPA仕様で使おうということで独学しました。
○Docker
コンテナという仮想環境を構築して、OS不一致によるアプリケーションの不動作を防ぐメリットがあり、チーム開発で重宝します。
TechCampのカリキュラムにはないため、独学の必要があります。
○AWS
デプロイとしてのサービスですが
Dockerと併用してECSというデプロイ方法が現在のIT企業の主流となっております。
しかしTechCampのカリキュラムではEC2というDocker不使用のデプロイがある一方、Dockerがないため、こちらは自分で学習する必要があります。
○Jest
JavaScriptのテスティングフレームワークです。
未経験の人が最初に携わる業務としてテストコードの記述が考えられます。
テストコードに関しては抑えておくべきです。
以上となります。
まとめ
結論、卒業後の学習が大切です。Lv.5のポケモンでは、最初のジムリーダーすら倒せません。
私は、業務対応の幅を増やすために独学でどの会社でも汎用的に使える技術を学習するという方針をとりました。
ポケモンでいうと何タイプのポケモンを出されても対応できるように手持ちのポケモンを増やしておくといったところでしょうか。
卒業後の学習が大切。裏を返せば「自分で頑張れないやつに内定はないよ」ということです。
厳しい言い方かもしれませんが、スクール任せのおんぶにだっこで入れるような甘い業界ではないということをTechCamp卒業後の就活にて感じました。
私の同期では、卒業はできたものの就活で苦労している人、もはやエンジニア転職自体挫折してしまった人がたくさんいます。
私自身、プログラミングの才能はないです。
では、就活が終わり、なぜ良い形で終えれたのか振り返ってみると
「なぜプログラミングが好きなのか、もっというと仕事にしたいのかという問いに対して明確な答えがあったから」
具体的には2点あります。
まず1つ目、営業職で主に養われる「コミュニケーション能力」これは確かに大切なものですが、形がないもので、年齢を重ねた時、おしゃべりの天才になることに全く魅力を感じませんでした。
逆にプログラミングをしていて「勉強した時間がそのまま自分の実力に直結する感覚」が大好きでした。勤務時間が丸々自分の実力になるって最高じゃないですか?
2点目は、私の周りには将来企業を視野に入れている人が多く、Webエンジニアとして副業で知人の手助けをしつつ、夢語りながら酒を飲む。そんな生き方をしたかったからです。
それを考えるだけで独学でアプリ作っている時もすごく楽しかった。
逆に、エンジニアの市場価値高いじゃん、プログラミングできるってかっこよくね?
というモチベーション形成も大切ですが、プログラミングを楽しむという観点からズレていると思ってます。
実際にそのような人は、挫折している割合が高いです。
逆にいえばプログラミングは気合いと行動でなんとかなります。才能はいりません。
しかし、「なぜプログラミングを仕事にしたいのか、卒業後に自分で学習できるのか」
というのは入校前にしっかり考えておくことを強くお勧めします。
プログラミングスクールって安くないですからね...。
以上です。
少しでも参考になったら嬉しいです。