29歳の文系が未経験から独学でWeb系自社開発企業のエンジニアになった話

プログラミング学習

みなさん、初めまして。”TheGK-Blog”を運営しているリョウです。

ご覧いただきありがとうございます。

2020年10月、29歳文系実務未経験から完全独学でエンジニアとしてweb系自社開発企業に入社しました。

同じように未経験からエンジニアを目指している方の力になりたいと思い、私がどのようにエンジニア転職を成功させたか学習方法などの情報を配信していきます。

人生初めてのブログ記事第一弾は私自身の「エンジニア転職の道のり」を簡単に紹介します。

【2020年4月】30歳目前にエンジニアを目指し情報収拾、Progateで勉強を始める。

前職でHTML/CSSに触れる機会があり、エンジニアになれば過去にやりたいと思ったことが実現できると考えプログラミング学習をはじめました。

時間やお金の問題から独学で学習することは決めていましたが、何を学べばいいのか全くわからない状態だったので、ネット上の情報を読み漁り、エンジニア系Youtuberさんの動画を見聞きして、まずはProgateでRubyとRuby on Railsを学習することに決めました。

HTML/CSSから始め、Ruby、Ruby on Rails、JavaScript、コマンドライン、gitやSQLを学習。

各レッスンを大体3周くらいやりましたが内容を理解するまでは至っていない状態でした。しかし、とにかく手を動かしていくことを意識していたので、次のステップであるポートフォリオの作成に早速挑むことにしました。

同時にAWS、Docker、CircleCIなどのインフラをポートフォリオに使用するのが必須との情報を得ていたので、これらの勉強も始めましたが、全く理解できませんでした。

プログラミング独学学習方法をメインに、言語とフレームワーク、ツール、インフラ、それらの選び方学び方について別記事にしてお伝えしてく予定です。

【2020年5月】ポートフォリオを作成しようと試みるも挫折、Udemyで勉強開始。

Progateでの勉強を一通り終え、ローカルに開発環境を構築しポートフォリオ作成を試みましたが、全くと言っていいほど手が動きませんでした。

幸いなことに作りたいものははっきりしていたのですが、何をどうしていいか全く分からず、途方にくれましたが、再度学習方法などの情報を集めて、Udemyの教材で勉強することにしました。

Progateは基礎中の基礎しか学べません。ですので、アプリ開発を実際に行っていく教材を選択し学習を進めることにしました。教材に沿ってwebサービスを数個作成したところで、ポートフォリオを作成できるかな、といった感覚を得ることができるようになりました。

ローカル環境で開発を行うにつれて、少しづつgit/Githubの使い方や、価値を理解できるようになっていました。この頃もインフラの勉強は続けていましたが、さっぱり理解できない状態でした。

Udemyのオススメ教材や学習方法については別記事にしてお伝えしていきます。

【2020年6月】ポートフォリオ作成開始、第一号完成。

Udemyでのアプリ開発学習を終えポートフォリオ作成に取り掛かりました。作成したいサービスは沢山ありましたが、学んできた技術で作成可能であろうサービスを開発してみることにしました。

この時、Dockerは使用せず、ローカル環境にRuby/Ruby on Railsをインストールした状態で開発を行っていました。ProgateやUdemyでの開発と違い、答えはなく、エラーが出ても自分で解決しなければいけない、どのように機能を実装するかを考えなければいけないので何度も挫折しましたが、なんとかポートフォリオ第一号を完成させることができました。

この時作成したポートフォリオは転職活動で使用しませんでしたが、前職で「あったらいいのに」と思っていたサービスを作ることができて本当に感動しました。

しかし、インフラ構築という大きな壁が立ちはだかります。

ポートフォリオ作成について、お伝えしたいことがたくさんあるので、別記事にまとめていきます。

【2020年7月】インフラ構築がうまく行かず、心が折れる。

開発環境はDockerで構築、インフラにAWSを使用することが必須だとはわかっていましたが、触ってみるも何が何だか全く分からず挫折してしまいました。エラーが出てもなんのことやらで、心が折れました。作成したポートフォリオはどうにかHerokuにデプロイしweb上に公開することはできましたが、物足りない感は否めませんでした。

この時、2週間程度プログラミングから離れました。諦めようかとも考えました。

しかし、ここで諦めてしまってはこれまでの努力が水の泡になってしまう。そして、人生で努力が必要なときに頑張りきれない人間になってしまうと自分にムチを打ち学習を再開しました。

そして独学ゆえに自分のポートフォリオが人前に出せるレベルなのか全く見当がついていないこともあり、エンジニア系YoutuberのKENTAさんが運営されている「雑食系オンラインサロン」に入会してみることにしました。そこで自分と同じように未経験からエンジニアを目指している方たちがDocker、AWSやCircleCIなどを使用してレベルの高いポートフォリオを作成されているのを目の当たりにし、このままではダメだとポートフォリオの再作成とインフラ構築を決意。

プログラミング学習の第2章がはじまりました。

【2020年8月】ポートフォリオ再作成、インフラ構築できた。

インフラ学習の何が問題だったかと分析すると、理解しようとしてまったことです。なので今回は言語やフレームワークと同じようにとにかく手を動かして動かしてみることに重点をおきました。

なんとかDockerで環境を構築し、ポートフォリオの構想を練り直し、再度作成を開始しました。ひと段落したところで、AWSのEC2にデプロイを試みました。しかし、上手くいかず心が再度折れかけましたが気合でカバー。なんとかデプロイに成功、CircleCIも導入。Githubでプルリクをマージと同時にデプロイされるの見て、感慨深い気持ちになりました。(1ヶ月前は挫折したのに。。。頑張ってよかった!)

この辺りからログを見て少しづつデバックできるようになり、エラーを恐れずしっかり向き合う癖がついてきました。月末にはポートフォリオも完成し転職活動に向けて本格的に始動。

転職活動に使用したポートフォリオは関連する記事の中で公開しようと考えています。またインフラ構築方法についても簡単に説明していけたらと考えています。

【2020年9月】転職活動開始、本命企業から内定をもらう。

業務改善が大好きで働きやすい職場にするにはどうすればいいか(めんどくさがり屋なので楽をしたいだけです)、と常に考えて働いてきたのですが、紙ベースやエクセルでの改善は常に限界がありました。プログラミングは限界を越えさせてくれるツールであると考え、私はエンジニアを目指しました。

ですので、業務改善系サービスを自社開発している企業をターゲットにWantedlyをメインに使用して転職活動を行いました。ポートフォリオだけで内定をもらえるとは当然思っていなかったので、応募する企業の勉強、履歴書と職務経歴書を何度も添削、面接の対策など、当たり前のことですが抜かりなく準備しました。

11社の企業に応募し、書類通過したのが3社。情報収拾していると20~30社程度はみなさん応募されているようだったので、しっかり対策した結果と運がよかったのだと分析しています。

応募する企業を選ぶポイント、履歴書・面接対策やポートフォリオのどこを評価されたかについては別記事にしてお伝えしていきます。

【2020年10月】エンジニアとしてのキャリアを踏み出す。

現在はPHP/Laravel+Vue.js+Docker+AWS+CircleCIなどを使用した開発環境でサービス開発に携わっています。主に既存サービスの簡単な機能追加を任されています。

PHP/Laravelは触ったことがなかったですが、独学で鍛えた検索能力と学習でカバーしています。

仕事・チームでの開発は、コードの可読性やデータベースの拡張性を意識したり、既存のコードを把握したり、それらの機能との関係を意識する必要があるので、個人の開発に比べて考えなければいけないことがたくさんあり、日々勉強ですが楽しく仕事に取り組んでおり、今のところエンジニアは自分にとって天職だなと感じています。

エンジニアの仕事内容などは学習関係の記事が落ち着いて、要望があれば配信しようと考えています。

最後までお読みいただきありがとうございます。これからについて。

ご覧の通り、学習中は心折れまくりでした。言語の学習は幸いにも順調に進みましたが、インフラ関係は本当に苦労しました。特にインフラの構築は初学者にとって大きな壁です。しかし、この壁を超えることができなければエンジニアへの道は難しくなります。

最近は実務未経験者に対してDockerでの開発環境構築、合わせてAWS or GCPでのインフラ構築、CircleCIなどのツールをポートフォリオに使用するのが必須になっていると言われています。

逆にこれらをしっかりとポートフォリオに組み込めれば他の応募者と大きな差をつけることも可能であり、さらに自分にも大きな自信が持てるはずです。私もそうでした。

エンジニアへの転職を果たした今思うことは、考えていたほど有益で正確な情報はネットにはなく(本当に初歩的な情報、もしくは公式ドキュメントしかない)、手探り状態で学習を進めた結果、悩む必要のないところで手を止めてしまったり挫折してしまったと考えています。

このブログをはじめようと考えた理由は、同じようにエンジニアを目指している方が少しでも効率よくプログラミング学ぶことができるようにサポートしたいと考えたからです。ただ先ほど思うほど正確な情報はネットにないと書きましたが、Qiitaの記事、個人ブログやYoutubeなど、さまざまな素晴らしいコンテンツ、その情報提供者様に助けられたのも事実です。自分もその一端を担うことができればと願っています。

私自身が未熟なエンジニアではありますが、エンジニアを目指している、就職・転職考えられている方に役立つ情報を少しずつ配信していきます。これから是非よろしくお願いします。

最後までお読みいただきありがとうございました。

タイトルとURLをコピーしました