はじめに
・当記事は著者の個人ブログの掲載記事(2023年)を加筆・修正したものです。
・当時と現在で転職市場が変わっているかもしれません。その点ご留意ください。
----------------------------------------
当時30代前半のしがないシステムエンジニアの著者が大手Web系企業に転職を果たした時の流れを、備忘録として残しておきます。
本稿がWeb系企業への転職を目指す方の参考になれば幸いです。
対象読者は以下を想定しています。
・Web系企業に転職したいエンジニア
・今後のキャリアが曖昧なエンジニア
・実務未経験だがエンジニアになりたい方
●補足
・SES企業とは?
SESは「System Engineering Service」の略称で、企業へエンジニアの労働力を提供する企業のこと。
・Web系企業とは?
インターネット(主にWeb)に関わるサービスを提供している企業のこと。
(LINEヤフー、楽天、メルカリ、サイバーエージェント、GREE、DeNA、ミクシィ、DMM.com、クックパッド 等)
著者について
転職活動前の職務経歴と経験スキル、保有資格をざっくり紹介しておきます。
職務経歴
年 | 内容 |
---|---|
2013年〜2014年 | 非IT企業(非エンジニア職) |
2014年〜2015年 | SES企業(A社)にてECサイト等の保守・運用を担当 |
2015年〜2023年 | SES企業(B社)にて金融系システムの開発・保守・運用を担当 |
(2024/06/22 更新)職務経歴の記載形式を変更しました。
経験スキル
ジャンル | 経験スキル |
---|---|
プログラミング言語 | Java、C#、Perl、VBA、Groovy、shell、HTML、CSS、JavaScript |
フレームワーク・ライブラリ | Struts系、JUnit、jQuery 等 |
DB | DB2、Oracle、PostgreSQL、MySQL |
その他 | Subversion、Jenkins、JP1、Apache Ivy 等 |
保有資格(2024/06/22 追加)
取得年 | 資格名 |
---|---|
2014年 | Oracle Certified Java Programmer Silver SE6 |
ちなみに、プログラミングに初めて触れたのは大学時代の講義です。経済学部ではありましたが、ほんの少しだけC#を学びました。
転職するキッカケ・理由
転職前はSES企業のシステムエンジニアとして金融系システムの開発現場で働いていました。
この現場である程度のスキルと業務経験を積むことはできましたが、正直なところ、SESとしての働き方に疑問を持っていました。
(詳細は今後機会があればお話します)
そんな中、2020年中頃に雑食系エンジニアの勝又健太氏のYouTube動画が目に留まりました。
エンジニア系YouTuber、エンジニア系サロン運営の先駆者のような方で、豊富な業務経験とスキルを有し、大手Web系企業(GREE)で働かれていた経験もあるお方です。
勝又氏を中心としたWeb系企業・Web系エンジニア関連の発信を見ていくにつれ「自分もWeb系企業で働きたい」と思うようになりました。その理由は以下をご覧ください。
Web系企業のエンジニアになれば...
・より裁量を持って働ける
・よりモダンなスキルを習得できる
・幅広い開発プロセスを経験できる(企画〜運用まで)
・働き方が自由(フレックス、裁量労働制、リモートワーク、兼業等)
・自身が手掛けたサービスを世の中へダイレクトに届けることができる
etc
転職準備
転職決意直後
転職を決意した直後に起こした行動、それは「MacBookProを買うこと」でした。
Web系企業の開発現場ではMacBookが採用されていることが多いと聞いていたため、
安い買い物ではありませんでしたが、慣れておくために即決で購入しました。
他、Web系企業転職のための「転職市場の調査」も行いました。
「どのような人物像とスキルを持っていれば、Web系企業に転職・適応できるか」
をより具体的にイメージするために、以下の媒体から調査を行いました。
・転職サイトの求人票(Green、Wantedly等)
・企業の口コミサイト(転職会議、ライトハウス、openwork等)
・個人、Web系企業のエンジニアブログ
・Youtube
・X(旧Twitter)
・書籍(21世紀最強の職業 Web系エンジニアになろう AI/DX時代を生き抜くためのキャリアガイドブック)
基礎学習
Web系企業でよく使われている以下のプログラミング言語や技術、手法について学習しました。
●プログラミング言語
・Ruby(Ruby on Railsを含む)
・Python
・Golang
●ソースコードのバージョン管理
・Git(GitHubを含む)
●DB
・NoSQL(Redis)
●インフラ
・Docker
・AWS
・CI/CD
・IaC(Terraform)
●その他技術
・Web技術(HTTP等)
・データベース(DB設計等)
●開発手法
・アジャイル(スクラム)
学習教材については、主に書籍やPaizaラーニング、Udemy、Youtubeなどを利用していたかと思います。
私は「Ruby」「Python」「Golang」といった、比較的Web系企業で多く採用されているプログラミング言語3種を学習していますが、この3種全てが学習必須というわけではありません。
自身のスキルを評価してもらうための「ポートフォリオ」(詳細は後述します)を作成する場合、ポートフォリオに採用するプログラミング言語を決めてから言語学習を行うことをオススメします。
ポートフォリオの作成
自身のスキルを評価してもらうためのポートフォリオ(Webアプリ)を今回作成することにしました。
私は未経験エンジニアでは無いため作成必須というわけでは無かったのですが、
転職活動で少しでもスキルや意欲をアピールしておきたかったため、作成することに決めました。
ポートフォリオの構成については、主にQiitaやRUNTEQ、前述の勝又氏が運営されている雑食系エンジニアサロンに掲載されていたポートフォリオを参考にしました。
実際に作成したポートフォリオのソースコード(GitHub)を、参考までに公開します。
https://github.com/xxxx/football-app
(2024/06/22 更新)すみません、一旦非公開とさせてください。
今回作成したポートフォリオのコンテンツについては、正直なところ思いつき(海外サッカーが好きだから)で構想してしまったのですが、コンテンツについては「人々の課題解決を強く意識した内容」であった方が選考でのウケは良さそうです。
ポートフォリオの言語は「Golang」を採用しております。
比較的新しい言語で日本でも流行り始めていた点、
今後も日本でGolangが定着していきそうな点、
言語別単価ランキングでも上位だった点が決め手だったと思います。
ポートフォリオへのCI/CDの導入については、
転職前の開発現場である程度の知見があったため、導入は見送ってしまいました。
転職準備の注意点
基礎学習に時間を使い過ぎないこと
私は基礎学習に膨大な時間を投下してしまい、
ポートフォリオ作成の開始が大分後になってしまいました。
「学ぶスキルを限定する」ことと「集中して学べる環境を整える」ことが大切です。
また、基礎学習を繰り返し行う必要はそこまで無いと思っています。
(繰り返しても大半は忘れてしまいますし、ポートフォリオを作成する中で自然に身についたりします)
早めにポートフォリオ作成に取り掛かること
基礎学習の内容を覚えているうちに
早めにポートフォリオ作成に取り掛かることをオススメします。
(基礎学習中にポートフォリオを作ってみる、くらいでも良いかもしれません)
ポートフォリオの構成や仕様を難しくし過ぎないこと
ポートフォリオを作ろうとすると、どうしても凝ったものを作ってみたくなると思います。
ですが、そこはグッと抑えてシンプルな構成や仕様にした方が良いです。
いつまで経ってもポートフォリオが完成せず、転職活動を始められない沼にハマります。
業務後の学習や作業はオススメしない
業務後の学習や作業は、個人的にあまりオススメしません。
業務後は心身ともに疲れているので、作業効率が低下することが多かったです。
そのため、私は1日のライフスタイルを見直して「朝活」を取り入れることにしました。
心身ともにリフレッシュした状態で学習や作業ができますし、
誰も起きていない時間にコツコツと学習や作業を進めることができるので、
自己肯定感も増していく感じがしました。
エントリー準備
履歴書の作成
前提として、エンジニア転職における履歴書は電子媒体(PDFなど)で作成して問題ないです。
作成ツールは様々ありますが、著者は以下のツールを利用しました。
ブラウザでつくれる履歴書・職務経歴書「yagish(ヤギッシュ)」
yagishは、Webブラウザ上で手軽に履歴書や職務経歴書を作成できるツールです。
(具体的な使い方は公式サイトをご覧ください)
エントリー準備の段階で、履歴書のテンプレートを作りました。
志望理由以外を先に記載しておきます。
(志望理由以外は基本使い回しです)
志望理由はエントリー企業毎に作成する必要があるので、まだここでは記載しません。
職務経歴書の作成
次に職務経歴書を作成しました。
職務経歴書も電子媒体(PDFなど)で作成して問題ありませんが、
著者はGitHub上で職務経歴書を作成・管理していました。
以下の記事に具体的な作成・管理方法が載っていますので、ご参考までに。
GitHubの機能をフルに使って職務経歴書の継続的インテグレーションを実現する
職務経歴書の書き方は、以下の記事がとても参考になりました。
エンジニアが読みたくなる職務経歴書 – dwango on GitHub
転職サイトの登録
次に転職サイトの登録を行いました。
著者はWeb系企業の求人が多く載っている以下のサービスに登録しました。
・Green
・Wantedly
※転職エージェントは今回利用しませんでした。
(正直なところ、あまり信用していません...)
エントリー開始
エントリー基準
企業へエントリーを行うにあたり、
エントリー基準を以下のようにざっくりと定義しました。
※基準を厳しくしすぎるとエントリーの幅が狭まってしまうので注意。
・都内勤務
・バックエンドエンジニアの求人
・自社で開発を行う企業(主にWeb系企業)
・Ruby、Python、Golangのいずれかを採用している開発現場
・(なるべく)グローバルな経営方針の企業
・(なるべく)前職から年収アップが望める求人
また、理由は割愛しますが以下の観点についてはエントリー基準から除外しました。
・SIer
・SES
・受託系企業
・業種(業界)
・会社規模
・リモートワーク可否
エントリー実施
エントリー基準に従い、企業へエントリーを行っていきます。
著者が最終的にエントリーした企業は計20社ぐらいになりました。
返答のない企業もありましたが、
それ以外の企業の殆どと、エントリー後にカジュアル面談を行いました。
カジュアル面談
カジュアル面談は、転職希望者と企業のマッチング度合いを測る上で重要なイベントです。
選考要素は無いので気軽に参加できますが、事前に企業研究を行った上で企業や選考、職場環境に関して質問(逆質問)をすることは、その企業で働きたいという熱意を伝える意味でも重要だと思います。
また、カジュアル面談・選考を問わず、昨今では面談はオンラインで行うことが多いです。
リモートワークであれば、自宅にいながら隙間時間で面談を行うことも可能ですが、
著者は週4で出社していたため、業務後に勤務先最寄りのテレワークブースを利用して面談を行っていました。
初めはカジュアル面談でも緊張していましたが、数をこなすにつれて慣れていきました。
企業独自のカルチャーや開発現場、経営のお話などを沢山聞くことができ、楽しみながら参加することができました。
書類選考
カジュアル面談後は書類選考となります。
この段階で志望理由をガッチリ固めて、履歴書に書いていきます。
その後、履歴書と職務経歴書をPDFにし、転職サイトを通してエントリー企業へ送付します。
著者の場合、20社の企業とカジュアル面談を行った上、その内の18社の書類選考に挑みました。
結果、書類選考を通過したのは6社となり、思っていた以上に落とされてしまいました。
不採用の要因は定かではありませんが、おそらく私のスキルや経験が応募先企業とマッチしなかった(即戦力として期待できなかった)ことが原因だと分析しています。
また、書類選考で不採用となった企業の殆どはスタートアップ・ベンチャー企業だったことに対し、通過企業はそれなりの規模(中小〜大企業)で、教育にある程度のお金が掛けられる企業からOKを貰ったのかな?という印象です。
適性検査、コーディング試験
書類選考中、または書類選考後に適正検査やコーディング試験を行うことがあります。
適性検査については、CAB・GAB・玉手箱などの形式が多かったように思います。
(具体的な対策方法については、ここでは割愛します。著者は対策無しで突っ込みました)
コーディング試験は、HireRooといったコーディング試験サービスを利用する形式や、ライブコーディング(オンラインで面談しながらコーディングするスタイル)が多かったように思います。
企業毎に出題問題等は変わっていきますので、転職口コミサイトで調査したり、AtCoderやLeetCodeなどの競技プログラミング系サービスでコーディングスキルの底上げをしておくと良いかと思います。
面接
書類選考や適性検査、コーディング試験を通過した後は、転職活動の一番の山場であろう、面接です。以下の質問については、必ずといっていいほど聞かれました。
・自己紹介
・自己PR(自分の強み、弱み)
・職務経歴の説明
・転職活動の状況
・転職理由
・志望理由
以下の質問については、たまに聞かれることがありました。
・転職活動の軸
・成功・失敗経験、苦労した経験について
・当社で具体的に何がしたいか
・当社で活かせるものはあるか
・技術について(好きな技術、最近学習した技術など)
・開発において重視していること
・ポートフォリオの説明
面接形式については、殆どがオンラインで1次〜3次面接(最終面接)を行うといった感じです(著者の場合、対面面接は1度だけ行いました)。
面接官への逆質問については、事前に3つ以上は準備していました。
逆質問内容は企業によって変わると思います。企業研究をしっかり行い、聞きたいことを洗い出しておきます。間違っても、求人ページに書いてあるような基本的なことは聞かないようにしましょう。
リファレンスチェック
場合によっては、最終面接の前後でリファレンスチェックを行う企業があります。
リファレンスチェックとは、内定候補者の勤務状況や人柄などを、内定候補者の勤務先関係者(同僚や上司)に問い合わせることを言います。海外では主流の選考手法のようで、国内でも取り入れる企業が増えていると聞きます。問い合わせ方法や問い合わせ対象人数については企業によって様々のようです。
著者の場合、選考中1社だけリファレンスチェックを取り入れていて、勤務状況等の聞き取りをWebアンケート形式で行っていました。
(結果としてこの企業から内定をいただきました)
内定ゲット
この度の転職活動では、最終的に
・エントリー(カジュアル面談実施):20社
・選考参加:18社
・内定:2社(大手Web系企業、大手ISP企業)
といった結果となりました。
エントリー開始〜内定が出るまで半年程、準備を含めると3年程掛かりました。
内定を2社から頂けたのは、嬉しかった反面でどちらの企業で働くか物凄く迷いました。
内定2社の比較(良いところ、悪いところ等)を徹底して行い、結果として大手Web系企業を選択しました。
おわりに
転職活動を振り返って
改めて当時の転職活動を振り返り、気になった点を挙げてみました。
①転職準備に時間を掛け過ぎた
②技術トレンドを追うことの大切さ
③大手への転職、意外とハードル高くないかも?
①について
私の場合だと準備〜転職まで3年程掛かってしまいました。途中、業務多忙だった時期もあったとはいえ、正直掛け過ぎです。中弛みした時期も確かにありました。ここは反省点です。
本当に早い方だと、実務未経験者でも1年掛からないくらいで準備してWeb系企業へ転職されていますよね。
②について
技術トレンドに対して、常にアンテナを張っておいて良かったと思います。Web系企業では、枯れた技術よりもより新しい技術を追い求める姿勢が大事になります。この事はカジュアル面談や面接を通じて伝わってきましたし、その手の質問も受けました。
※2023年当時だとトレンドはAI(ChatGPT)一色でしたね。Web3(ブロックチェーン)やクラウド関連も追ってはいました。
③について
これは意外でしたが、選考での大手企業からの反応がすごく良かったです。大手企業だからと言ってエントリーを見送るのは勿体無い(機会損失)と思います。募集要項を多少満たしていなくても、ひとまずエントリーはしてみるべきでしょう。
現在について
現在も大手Web系企業で働いています。
(先で述べた)以下のポイントについては、喜ばしいことに全てが叶いました。
Web系企業のエンジニアになれば...
・より裁量を持って働ける
・よりモダンなスキルを習得できる
・幅広い開発プロセスを経験できる(企画〜運用まで)
・働き方が自由(フレックス、裁量労働制、リモートワーク、兼業等)
・自身が手掛けたサービスを世の中へダイレクトに届けることができる
etc
上記に加えて、年収も大幅にアップしました(元々が低かったというもありますが)。
扱っている担当領域についても、バックエンドどころか最早フルスタック(バックエンド・フロントエンド・クラウド)です。覚える技術やドメイン知識が多くて大変ですが、自身の裁量・ペースで仕事ができるので大変助かっています。
今後について
新しい技術を追っていくのは勿論のこと、CS(コンピューターサイエンス)を体系的に学びたいと思っています(独学するか、社会人大学院生になるかはさておき)。それと、個人開発経験と英語学習を積んでいきたいです。これらのネタは後々記事にするかもしれません。
また、エンジニアを引退・復帰した時のお話や、モチベーション維持のお話もできたらいいなと思っています。
以上で、著者の転職活動記を締め括りたいと思います。
これから転職活動を行う方々の力になれば、幸いと思います。