はじめに
この記事は、学歴がない・勉強ができない・プログラミングって頭のいい人にしか出来ないんでしょ?と思っている方々に向けて、中卒・実務未経験の僕が2021年1月からプログラミング勉強を始めて、一年間の学習期間を経てiOSエンジニアとして転職するまでの過程を振り返っています。
一人でも多くのエンジニアになりたいという方々のお力添えになればと思っています。
学歴・職歴
僕の最終学歴は中卒です。一応高校には入学したのですが、色々あって1ヶ月ほどで退学しました。
2013~2017 建設業・解体業
2017~2018 職業訓練校(HTML CSS Photoshop Illustrator)
2018~2020 製造業
2020~2021 休職期間
2021~2022 スーパーのアルバイト兼プログラミング学習1年間
2022/2 SES企業からスカウトをいただいてiOSエンジニアとして転職 ←イマココ
すごくざっくりと今までの経歴を書いてみました。
ここまでで一つ言いたい事としては、おそらくこの記事を見ていただいている人達よりも学歴が低く勉強が出来なかったということです。
僕の学歴は友達の中で一番低く(一番早く高校を退学したため)、 一度だけ社会のテストで学年3位になったことはありますが、プログラミングに必要な数学や英語は本当に出来ませんでした。
元々のスペックは低くとも、中学の部活動でやっていたバドミントンでは努力して団体戦メンバーに入ったり、何度も何度も振られ続けましたが一人の女性を一途に思い続け大人になってから付き合う事が出来た経験から、続ける力・諦めない力はあったのかなと思っています。
ですので、学歴がなくて勉強が出来なくて自分にはプログラミングなんて無理だよとか思ってないで、さっさとパソコン買って始めた方がいいです。
パソコンが高いと思っている人もいると思いますが、Appleの公式サイトでは最新のMacを金利0%で分割払い出来るので、月々4000円ほどで最新のパソコンを買えます。
出来る出来ないはやってみないと分からないし、今エンジニアとして活動している方々も何度も挫折しながら続けている方も多いと思いますので、まずはこの記事を見てやってみようと思っていただけると幸いです。
この記事内においての「挫折」という言葉は学習をやめることではなく疑心暗鬼になっている状態のことです。
2021年1月
Mac購入。
独学で転職出来るかどうかを試したいと思う。
プログミング学習を開始したいけど、何から始めたらいいのか分からずとりあえずHTML・CSSの学習を始める。
2021年2月
ドットインストールとプロゲートでHTML・CSSの学習を進めながら、HTML・CSSってプログミング言語じゃないんだよなぁと疑問を抱き始める。
Twitterで#プログラミング初心者,#駆け出しエンジニアと繋がりたいなどのハッシュタグをつけてツイートしていると、直接アドバイスをくれる人が現れて、自分はiOSアプリ開発をしたいことに気付き、Swift言語ではどのような事が出来るのかを調べる。
2021年3月
本格的にSwift言語の学習を始めるために書店に行ってiOSアプリ開発を学べる本を探す。
その中でSwiftUI対応 たった2日でマスターできるiPhoneアプリ開発集中講座 Xcode 12/iOS 14対応 を見つけ購入。
とりあえず本に載っているサンプルアプリを作ってみて難しいけどめちゃくちゃ楽しいやん!となる。
2021年4月
Udemyでの学習もスタート。
独学での学習を進める中で、今自分はは正しい学習をしているのか?このまま独学で学習を進めて本当に転職出来るのか?と思い始める。
プログラミングスクールに通うことを決意し、オンラインでの説明会に参加して比較検討を始める。
2021年5月
Swift言語学習の為に購入したSwiftUI対応 たった2日でマスターできるiPhoneアプリ開発集中講座 Xcode 12/iOS 14対応 の著者の3名がiPhoneアプリ開発集中オンライン講座CodeCandyの一期生をTwitterで募集していたので説明会に参加。
講師の方々の人柄、他のスクールにはない一人ひとりに合ったカリキュラムの作成、分からなくなった時のサポートの充実度などが良いなと感じた為参加を決める。
行きたい企業の分析・リストアップをしながら早速課題に取り掛かり、色々進んでいる感があって楽しくて仕方ない段階。
楽しくて仕方ない気持ちから一転、課題が進まずGitHubやターミナルの操作が訳わからなくなり、早速挫折し始める。
なんとか一つ目の課題を完成させて二つ目の課題に取り組み始めるが、これまたデータベースって何?急にむずくね?となり再び挫折。
分からないところだらけ&質問の仕方も分からない状態になり、講師の方々を困らせてしまう。
すいませんでした🙇♂️
2021年6月
二つ目の課題もなんとか完成させての3つ目の課題に入る。
この課題は簡単にいうとFirebaseを使って文字チャットアプリを作るという課題で、この課題が難しすぎて完成させられず完全に心が折れる。
講座の期限が3ヶ月ということもありもうすぐ終わってしまう!という焦りと、課題を完成させられなかった自分への否定・自己嫌悪が加速してしまい、やっぱり自分にはプログラミングなんて出来ないんだと思う。
しかし!
ここで、講師の方々の神サポートにより、講座の期限を伸ばしていただけることになった。
他のスクールに通っていたとしたら、この段階でエンジニアになることは完全に諦めていました。
2021年7月
気持ちを改めて講座の基礎学習から再スタートする。
理解出来ていた部分と出来ていなかった部分が浮き彫りになり、モチベーションが戻ってきてひたすらプログラミング学習に向き合う。
2021年8月
基礎学習から課題実習に入るための卒業課題の制作に入る。
一度基礎学習に戻り再学習したおかげで、楽しみながらアプリ制作が出来るようになる。
ここら辺からGitHubでissue機能を使って、コードレビューをしていただきながらのアプリ開発を本格的に始める。
基礎学習の卒業課題が無事に完成し、アプリ開発って出来るようになるとめちゃくちゃ楽しい!とようやく心から思えるようになり、学習の暗黒期から抜け出す。
今までは、難しくてエンジニアになれないかもしれないという弱気な部分が多かったが、講師の方とオフラインで会って色々お話を聞いていく中で、本気でiOSエンジニアになりたいしなれる!と思うようになる。
課題実習に入りアルゴリズムやフローチャートの存在を知り、プログラミングってコードを書くこと以外にもやるべきことってたくさんあるんだなぁと感じる。
2021年9月
課題実習も終わりいよいよオリジナルアプリシンプル歩数計 - SimpleWalking の設計・開発に着手する。
企業分析の段階で自分はヘルスケア業界・企業に行きたいと考えていたので、歩数計アプリを作りたいと決める。
講師の方々のサポートを受けながら画面レイアウトやデータの流れを設計書にまとめていくことも出来るようになり始める。
オリジナルアプリ開発からは、チーム開発と同じ流れで開発を進める為に、GitHubのブランチ・プルリクエスト・マージを使った開発を始める。
最初は何が何だかわからなかったが、何度も繰り返していくうちに徐々に分かっていく。
2021年10月
基礎学習・課題実習を真剣に取り組んできたおかげで、オリジナルアプリは割とすらすら開発を進められた感があった。
そして、最低限必要な機能が出来たので、AppStoreにリリースするための準備を開始。
今回は審査がスムーズに通ったため、一つの目標であったオリジナルアプリを10月21日に無事にAppStoreにリリースすることが出来た。
まさか自分がアプリを作ってるとは一年前の自分は思ってもいなかったし、AppStoreに自分が作ったアプリが公開されていると思うと感慨深いものがあった。
2021年11月
オリジナルアプリの機能追加と転職活動のための履歴書・職務経歴書の作成を講師の方々からアドバイスを受けながら進めていく。
2021年12月
12月後半からいよいよ企業への応募を始めた。
反省点としては、志望動機や質問の解答を考えることに一週間近く時間を使ってしまったので、とりあえず応募を始めておけばよかった。
特に今回の転職活動はWantedlyをメインに進めていったので、Wantedlyのプロフィールを整えて、話を聞きに行きたいボタンをとりあえず押しておけばもう少し早く転職が出来たのではないかと思われる。
「完璧を目指すよりまず終わらせろ Done is better than perfect. -マーク・ザッカーバーグ」は転職活動にも当てはまると思っている。
とりあえず企業に応募して、書類選考で落ちたのであればそこで書類のブラッシュアップをしていけばいいし、面接で落ちたのであれば話し方などの練習をしていけば良いだけの話で、最初から完璧な転職活動の準備などあるはずもないことに気づく。
本当に転職先が見つかるのか不安なまま2021年を終える。
2022年1月
Green、Wantedlyだけでなく、doda・リクルートエージェント・ワークポートなどの転職エージェントも活用して本格的に転職活動を始める。
転職活動前は求人サイトや転職エージェント経由で転職先が見つかると思っていたが、実際は全くのノーマークだったWantedly経由で面談をしていただける確率が高いことに気づく。
ただ、Wantedlyでは最初はカジュアル面談がほとんどで、実際にカジュアル面談の数が増えてくると転職活動進んでる!感は出るが、あくまで企業の説明会やカジュアル面談なので、結構選考通るなぁと勘違いしないように。
転職活動を進めていく中で大切だと感じたのは、採用されるかは能力の有無では決まらないということと、プログラミング学習は毎日続けていくこと。
実務未経験の場合は、めちゃくちゃ選考で落ちるので、気持ちも落ち込んでどこにも受け入れられない人間なんだなと自分を責めてしまいがちだが、それは間違っている。
面接に科学的根拠は全くなく、人事が応募者の何を見ているかというと人柄、ぱっと見の雰囲気(ハロー効果)などしか見ておらず、面接はあくまでもマッチングでしかない。
そもそも、仕事に必要な能力は多岐に渡るため、一回や二回の面接をしただけで応募者が企業に入社してパフォーマンスを発揮出来るかどうかを判断するのは不可能。
だからこそ、自分が入社したい企業があるのであれば、第一印象を良くしたり、上手く話題を盛り上げてこの人と一緒に働いてみたいかもと思ってもらうための方法などを、本やネットで調べて試し自分を上手くアピール出来るようにすることが非常に重要だと思う。
面接で徐々に徐々に失われていく自信は、プログラミング学習を進めることで、今は選考がなかなか通らないけれど、通るための準備を自分はしているんだと思えれば自然と自信は持てるので大切。
そして、Wantedly経由でスカウトを頂いていた東京の企業から内定が出る。
ただ、SES企業なので内定が出た段階ではまだ入社したいとは思っておらず、一度目の面談で聞けなかった質問をして、その回答次第で決めようと思っていた。
2022年2月
2月1日、二度目の面談で在籍しているiOSエンジニアの方に幾つか質問をしてみて、ブラックSESではなさそうな印象を受けたため入社を決意。
入社してから最初の4ヶ月はリモートでJavaの研修をするので、研修時間以外は講師の方々のアドバイスを受けながら2本目のオリジナルアプリをリリースしていく予定。
自社開発・受託開発・SESについて
ここまで、長々と書いた記事を拝見いただきありがとうございます。
ここからは少し、実務未経験エンジニアが目指すべき企業、やめておいた方がいい企業について考えてみたいと思います。
まず、実務未経験者は経験がないので、受け入れてくれる企業はほとんどありません。
求人に未経験可!や未経験募集中!と書いているのはほぼ確実にSES企業です。
で、実務未経験者が目指すべきは自社開発か受託開発です。
この二つは主に即戦力を求めていて、人数が増えたからといって利益も増えるわけではないので、入社の敷居はとても高いです。
ですが、敷居が高いから最初からレベルの低い企業しか狙わないというのはおかしな話で、レベルの高い企業を狙ってみたけど厳しそうだから、狙う企業のレベル感を少し下げてみようとなるのが自然なはずです。
「転職は保証されるものではなくチャレンジするものです」というのは講師の方の言葉ですが、まさにその通りだと思っていて、せっかく努力して今までプログラミング学習をしたのだから、転職活動自体もプログラミング学習と同じくらい努力していきましょうという話です。
それぞれの業務形態はネットで調べたらすぐに出てくるので詳しくは書きませんが、注意が必要なのがSES企業です。
SES企業はエンジニア界隈では絶対にやめとけ、ブラックなどネガティブ事ばかり書かれていますが、全てのSES企業がそうとは限りません。
全てを一括りにして考えるのは何も考えていないのと一緒なので気をつけましょう。
話を元に戻すと、SESは簡単にいうと、自社の従業員を他社の開発現場に派遣する、ようはIT業界の派遣企業です。
SESは従業員を派遣するので人数が増えれば増えるほど、収益も上がっていくので、実務未経験のスキルの低い駆け出しエンジニアだとしても募集しています。
そして、僕が入社する企業もSES企業です。
ただし、ここで重要なことが三つあります。
一つ目は、SES企業の収益構造や事業内容はどうなっているのかを把握した上でSES企業に入社するのと、何も理解していない状態で入社するのは話が全く違うということです。
僕もそうでしたが、転職活動を始めて1ヶ月くらい経つと正直面談には慣れてきます。
話も結構すらすら話せるようになるし、色々な企業があるなぁというのがわかって面白い部分もあります。
ですが、100社くらい応募して数社しか面談してもらえないという現実を知り、少しずつ焦り始め、未経験募集!などの求人に応募し、いざ内定が出て入社してみたら、自分が思っていた企業じゃない、面談の時に言っていた業務内容と違うなどの問題が出てきますので、しっかりとSES企業の事業モデル・経営状況を調べてから応募をしましょう。
二つ目は、「面談で質問をしまくる」です。
大抵の人は人事の方に良い印象を与えるために質問を控えますが、それは逆効果です。
質問をしてくれる方が自社に興味があるんだなと感じられますし、質問をしないと企業の事が何も分かりません。
求人や会社ホームページに書いてある事が企業の全てではないので、自分が気になることはとにかく質問して聞きましょう。
大事なのは質問を一つ二つしてみるレベルではなく、質問をしまくるということです。
ここで一つ転職についての格言を載せておきますので、紙に書いて壁に貼っておきましょう。
「みんな株を買うときは熱心に企業を研究するのに、転職になると急に質問をひかえて情報を集めなくなる」
-ポリス・グロイスバーグ アメリカの経営学者
仕事は人生の大半を占めるため、実際に仕事をする企業の分析をすること=自分の人生を考えることです。
三つ目は、もし自分が入社したい企業があるのであれば、1~2年経験を積んでから再チャレンジするです。
転職活動は一生に一度しか出来ないものではありません。
何度でも出来ます。
日本では転職回数が多いと人格を疑われますが、海外ではジョブホッパーという言葉があるくらい転職することは普通の事で、転職回数を重ねるにつれて幅広いスキル、豊富な経験を積む事ができるため最終的な年収が高くなりやすいです。
なんの目的もなく転職回数を重ねるのは得策ではありませんが、実務未経験の段階で入社出来なかった会社に経験を積んでから再チャレンジするのはごく自然なことですので、諦めず目標を達成するための努力を続けましょう。ちなみに、僕も入りたいと思っていたけど今回の転職活動では入れなかった企業をこれからも目指して頑張っていきます。
最後に
ここまで僕の一年間を振り返ってみましたが、2021年は辛いことも嬉しいこともたくさんありました。
その中でも地道にコツコツ講師の方々や、身近な人たちのサポートを受けながら学習を続けてきた事で、AppStoreにオリジナルアプリをリリースし、iOSエンジニアとして転職も出来ました。
今はスタートラインにようやく立てたという気持ちしかなく、ここから更に学習を進めて一人前のiOSエンジニアになれるように精進していきます。
そして、これからエンジニアを目指して学習を進めていく中で、難しくてどうしようもないと思ったら、中卒・実務未経験からiOSエンジニアとして転職出来た僕の存在を思い出していただければと思います。
最後までご覧いただきありがとうございました。
おすすめ
iOSエンジニアになりたい!何から手をつけたら良いのか分からない...と悩んでいる方がいましたら、ぜひCodeCandyの講師の方々とメンタリングをして、相談してみてください。
合う合わないは人それぞれですが、現役のエンジニアの方と話すだけでも一歩踏み出せるきっかけになるはずです。
そして、自己投資は惜しまずに。
iPhoneアプリ開発集中オンライン講座CodeCandy