未経験から年収600万円を超えるITエンジニアになった経歴
この記事の目的
ITエンジニアに転職したが上手く行かないという人たちの話を見聞きする中、何か助けてあげられないだろうかと思っていました。ITエンジニアの経歴は様々で、詳しく語られないことも多いように感じます。そこで私の経験が参考になればと考えて書きました。
冒頭のグラフは私の実際の年収の推移です。本文中に年収を記載していますので、一つの事例として読んでもらえたらと思います。
特に以下のような人たちの参考になればと思っています。
- 他職種からITエンジニアに転職した人
- 東京が通勤圏外の地方在住者
- ITエンジニアの中でもインフラエンジニアやSRE(Site Reliability Engineering)の人
記事の内容は私の過去の経験であり、技術トレンドや転職市場の肌感は参考にならないかもしれません。ですが職種やポジションに対して求められるスキルの程度はあまり変わっていないように思います。
また、個別企業の事情についてはあまり書かず、年収に大きく影響すると考えられる経験や習得したスキル、転職活動の進め方を中心に書いています。エピソードは語りだすとキリがないのでできるだけ省きました。
この記事でどこまで詳しく書くか
これからのキャリアを考える人が求める情報として「どれくらいのスキル・経歴でどの程度の年収を得られるか」だと思います。ですが年収も含めて記事にするのは少しためらいがあります。かといって、ぼかして書いてもあまり参考になりません。
そこでこの記事では私が年収600万円を超えるまでの経歴や年収などを記載します。この年収600万円という金額はForkwellが提供する上級エンジニア特化のエージェントサービスの基準となる年収を参考にしました。
また、ITエンジニアの年収の推移等については以下の記事が詳しいので、参考にしてください。
2012年4月、ITエンジニア以前
大して参考にならないですが、ITエンジニアになる前の経歴を簡単に記載します。IT未経験者が独学でITエンジニアになった道の一つということで。
2012年4月、22歳。大学で心理学を専攻し、卒業後にOA機器販売会社の営業職として新卒入社しました。営業成績が振るわず退職を願い出たところ、PCに強い点を買われてカスタマーエンジニアに職種変更できました。顧客の事務所に出向いて複合機やプリンターの修理・点検を中心に、PCのトラブル対応なども行う仕事でした。「エンジニアなんだからFAXも直せるでしょ」と言われたら「はい、できますよ」と答える仕事でした。
OA機器販売会社の時代
- 従業員数: 4000人
- 年収: 350万円 ~ 400万円(24万円/月 + ボーナス)
- 経験、スキル
- タイピング技能検定イータイピング・マスター1級
- もともとタイピングが得意で、大学時代に就職活動のためにとりあえず取ったもの
- ドットコムマスター アドバンス ダブルスターを取得
- カスタマーエンジニアに職種変更後、業務で推奨されたため取得
- タイピング技能検定イータイピング・マスター1級
2015年9月、25歳。PCをメインで使う仕事がしたいという気持ちと、文章が好きでタイピングが得意であることを活かせそうだと考え、印刷会社に組版作業員として転職しました。メイン業務は書籍の組版ですが、業務効率化のためにプログラミングを独学しました。
組版作業はプログラミングよりもキーボードを打ち続ける仕事です。結果、ブルーライトカットの眼鏡でないと昼過ぎには両目が開けていられなくなり、タイピングのために腕を上げ続けて右腕の三角筋が数か月間痛み続けるという理解しがたい怪我をしました。どちらも完全には治りませんでした。
印刷会社の時代
- 従業員数: 30人
- 年収: 300万円 ~ 350万円(22万円/月 + ボーナス)
- 経験、スキル
- 扱ったプログラミング言語
- C#
- Excel VBA
- バッチファイル
- Perl
- シェルスクリプト
- 主にテキスト処理を中心としたデスクトップツールを作成
- 目的はテキストデータ加工、ファイル操作、差分チェック等による作業時間短縮とミス削減
- 扱ったプログラミング言語
会社からプログラミングを学習するよう言われたわけではありません。プライベートの時間で独学し、上司に相談して業務に取り入れるようになりました。
2017年12月、ITエンジニアへの転職活動
2017年12月、27歳。ITエンジニアになることを目指して転職活動をしました。結果、ITエンジニアに転職できました。カスタマーエンジニア時代の顧客対応経験やプログラミングの基本能力を評価されたのだと思います。
ITエンジニアへの転職の詳細
- 利用した求人媒体: リクナビNEXT
- 転職活動期間: 約2か月
- 注力したポイント: プログラミングの仕事を見つけること
当時はITエンジニアとしてのキャリアがないためプログラマー特化の転職サイトはハードルが高く感じました。そのため求人数が多いと感じた転職サイトを利用しました。
転職が決まった企業のほかに応募した企業はSES企業、システム開発の受託企業、製造業のIT子会社等の5社でした。
次の転職先が一番望ましい条件だったため、他の企業は選考途中で辞退するなどして、内定が出たのは1社のみでした。
2018年4月、システム開発企業の企画部
転職先はSESが売り上げの大半を占める企業の企画部という部署でした。その部署は会社として新しい売り上げの柱となる事業の創出を目指すために色々な事業を行っていました。そこでの業務経験はGoogle Workspaceに関する技術的な問い合わせ対応、顧客の要望に合った製品の調査とPoCレベルの技術検証でした。
企画部の時代
- 従業員数: 120人
- 年収: 350万円(26万円/月 + ボーナス)
- 経験、スキル
- Google Apps Script(GAS)
- 入社前にGASが書けるようになっていたら重宝するといわれていたため習得
- 入社2か月前からGASの学習を開始し、ココナラで案件を受注してスキルを身に付けました
- AWS Certified Solutions Architect Associateを取得
- 会社がAWSパートナープログラムに登録するにあたり必要ということで取得
- Vue.jsでSPAアプリケーションの開発(フロントエンドのみ)
- 新サービスのアイデアを提案し、PoCアプリケーションを作成する
- Raspberry Pi、Pythonによるセンサー値の取得とGoogle Apps ScriptによるGoogleカレンダーの操作を連携させた在室スケジュール管理システムの開発
- 顧客から在室確認と会議室予約スケジュールの連携を要望されて構築
- Google Apps Script(GAS)
経験した技術はほかにもいろいろありますが、使用期間が短いものがほとんどなので省略します。
入社後しばらくすると、任された業務はほとんど一人で行うようになりました。
2019年10月、システム開発企業のSES業務
2019年10月、29歳。SESの部署に異動し、大手通信会社の設備管理システム更改案件にSES契約で従事しました。SESという契約形態を初めて経験しました。
SES業務の時代
- 経験、スキル
- Gitの導入
- コーディング規約の策定
- レビュー体制の確立
- シェルスクリプト製テスティングライブラリの開発
- TDDの習得
- 所属企業の新入社員のメンター
私の所属する企業以外の契約形態は把握していませんでしたが、以下のような所属でした。
大手通信会社 ← 一次請け企業 ← 二次請け企業 ← 三次請け企業(私の所属企業)
案件に入った当初の現場に私の所属企業から参加していたのは私一人でした。メインの業務内容は各種サーバのファイルを新システムに移行するツールをシェルスクリプトで実装すること。そのほかに従来のシステムで使用されているツールの仕様調査や移植対象のツールの改修、関係者との打ち合わせなどです。
所属チームは二次請け企業のチームリーダーがおり、三次請け企業所属のメンバーが私を含めて3人ほどいました。
この時期にチーム開発に必要とされるプラクティスなどをチームに導入する経験をしました。
また、この頃に全文検索エンジンの仕組みを調べ、n-gramというアルゴリズムがあることを知りました。このアルゴリズムを使えば、シェルスクリプトでもシンプルな全文検索エンジンを実装できると考え、検索エンジンのベースとなるものを開発しました。
この頃は業務で使うプログラミング言語がほぼシェルスクリプトだったため、いっそのことどこまでできるか極めようとしていました。
2020年10月、クラウドインフラエンジニアへの転職活動
2020年10月、30歳。クラウドインフラエンジニアへの転職を目指して転職活動を行いました。COVID-19で在宅勤務が普及した頃です。結果的に東京本社のIT企業にクラウドインフラエンジニアとして転職できました。フルリモート勤務です。これまでの経歴はアプリケーション開発が中心ですが、AWSの資格を取得していたりシェルスクリプトに長けていること、インフラをやりたい意思が評価されたようです。
クラウドインフラエンジニアへの転職の詳細
- 利用した求人媒体: リクナビNEXT
- 転職活動期間: 約1か月
- 注力したポイント: インフラエンジニアに転職すること
COVID-19の影響で在宅勤務が可能な求人が増えていた頃です。ITエンジニア向けのイベントもオンライン開催が一般的となり、首都圏に住んでいる人たちと同じようにイベント参加できることを嬉しく思ったことを覚えています。
転職時にはこの先のキャリアをどうするか決め切れていませんでした。これまでいろいろな業務経験があるものの、それぞれの期間が短かったですし、一番得意なシェルスクリプトは世間一般で求められるスキルとは言えませんでした。しかし曲がりなりにもAWSの資格を持っており、インフラに苦手意識もなかったため、それが活かせる職種としてクラウドインフラエンジニアを目指しました。
他に応募した企業は思い出せません。この時の転職活動は早々に決まった覚えがあるので、他にほとんど応募していなかったと思います。
2020年12月、受託開発企業のクラウドインフラエンジニア
クラウドインフラエンジニアとなり、ようやくAWSを業務でまともに触る経験ができました。AWSのペーパードライバー卒業です。ただし業務内容はインフラ以外も多かったです。
クラウドインフラエンジニアの時代
- 従業員数: 200人
- 年収: 430万円(33万円/月 + ボーナス)
- 経験、スキル
- Nuxt.js
- Vuetify
- Express
- AWS Lambda
- AWS AppSync
- DynamoDB
- Cognito
- GitLab CI
- アジャイル開発
入社後はAWSの基礎がどこまであるか見定めてもらうような業務をいくつかこなし、2か月ほどでAWS AmplifyでのWebアプリケーション構築に開発エンジニアとして参加しました。これには驚き半分、不安半分でした。クラウドインフラエンジニアとして採用されたのにアプリケーションコードを書くことが求められました。おまけに一か月ほど一人で開発することになりました。後から追加の開発エンジニアが来るまで、Amplifyの公開情報の少なさと私自身のスキル不足で苦労しました。この案件で初めて本格的なWebアプリケーション開発、チームでの開発、アジャイル開発を経験しました。
その他にインフラチーム内で業務改善ツールを題材とした定期的なモブプロの時間を主催していました。内容はシェルスクリプトでのテスト駆動開発や環境整備でshellcheck、shfmt、VSCodeの導入などです。
2021年6月、新規自社サービスのインフラ構築
2021年6月、31歳。新しく立ち上げる自社サービスのインフラ構築を担当しました。アプリケーション自体は一般的なWebアプリケーションの構成でしたが、各担当者ごとに挑戦的な取り組みをしていました。
新規自社サービスの時代
私の担当する領域では以下のような挑戦がありました。
- 社内で初めての本格的なGCPの導入
- 社内で初めてのKubernetesの導入
チームのエンジニア7名のうち、私を含め2人でインフラを担当しました。幸いもう一人のインフラエンジニアはベテランで、最初期は2人でGCPの検証を進め、しばらくしたらTerraformでの管理をおまかせできました。私は主にKubernetesとアプリケーションのCI/CDパイプラインの構築を担当しました。アプリケーションの最初のリリース後は機能改善や保守・運用を行いました。
2022年3月、SREへの転職活動
2022年3月、32歳。現職で給与を上げたいと考え、市場の相場がどの程度か気になり転職サイトで求人を見てみました。すると現在のスキル・経験と給与が見合っていないと感じました。現職で給与を高めることも考えましたが、乖離が大きいため難しいと判断し、転職活動を始めました。世間では新しい職種としてSREが話題になった頃で、求人の想定給与の下限が他の職種と比べて高めでした。Webアプリケーション開発とインフラ構築を経験していることから、SREとしての転職を念頭に求人を探しました。
SREへの転職の詳細
- 利用した求人媒体: Green
- 転職活動期間: 約1か月
- 応募数: 23社
- 面接回数(カジュアル面談を含む): 43回
- 内定数: 5社
- 注力したポイント: 給与を上げること
この頃にはオンラインでの面接が当たり前になっていましたので、可能な限り面談を行うようにしました。
2022年7月、事業会社のSRE
次の企業にSREとして転職しました。Kubernetesの経験と新しい取り組みを推進できる力が評価されたのだと思います。この時点で冒頭に記載した上級エンジニアの給与を超えました。
ここまでが私の経歴です。
この先はITエンジニアのキャリアを積もうとする人へのアドバイスです。
スキルを身に着けた経験
私はキャリアアップを狙って学習したことはありません。スキルが上がったのはすべて課題解決のために努力したか、純粋に興味のある分野を学習した結果でした。
以下に私がスキルを高められた経験の一部を簡単に記載します。
印刷会社時代にスキルが身に着いた経験
印刷会社では業務改善のためにWindowsデスクトップツールを作りたいと考えました。2016年当時、社内にはWindows XPしかありませんでした。Visual StudioでC#の開発をしたかったのですが、Windows XP自体のサポートが2014年に終了しており、会社のPCではVisual Studioが使えませんでした。仕方なく自宅のプライベートPC(Windows 7)で毎晩開発し、翌朝会社のPCで起動して動作テストをするような日々でした。
新規自社サービス時代にスキルが身に着いた経験
Kubernetesの学習のために以下の書籍を3か月ですべて読み込み、並行してKubernetesの構築を進めました。書籍は合計で1400ページありました。
こういった経験はあまり楽しいものではありません。しかし、すべてを一気にこなす必要はありません。ここまで書いた私の経験も、数年かけて積み重ねてきたものです。焦る必要はないと思います。
成長するには人間性が大切
ITエンジニアの能力というと、プログラミング言語の習熟度やアーキテクチャの設計などIT技術に関連するスキルを想像するかもしれません。しかし実際に周りの同僚が抱く不満の多くは、人間についてです。それはSNSでITエンジニアが投稿している不満を見ればわかると思います。中にはスキル不足が原因の場合もあるでしょうが、事態を悪化させているほとんどの原因は、平たく言えばコミュニケーション能力、もう少し言うと人間性ではないかと私は思っています。
仕事ですから、一定水準のスキルは必要です。ですがスキルを身に着けるまで成長を見守ってもらえるのは、未熟であっても周りから受け入れられている人だけです。
苦手があっても活躍できる
ソフトウェア開発ではいろいろな役割の人がかかわっています。私のこれまでの人生で最高のチームは寄せ集めのチームでした。
最高のチーム
チーム構成は営業担当者、プロジェクトマネジャー、開発エンジニア、テスト担当者がそれぞれ一人から始まりました。営業担当者以外は皆入社半年未満で、本格的に案件に参加したことがないため、会社にとって実力が未知数のメンバーばかりでした。
プロジェクトは受託開発でした。結果からいうと、納期も品質も問題なく利益も確保できたため、非常に良い結果と言えます。上述のクラウドインフラエンジニアとして初めてのプロジェクトでした。
そのような成功をおさめられたのはチームメンバー一人ひとりがそれぞれの役割を全うすると同時に、チームとしての最善を考えて行動したからです。
プロジェクトマネジャーはITエンジニアではないため実装難易度などはわかりませんでした。そのため顧客からのヒアリングを徹底し、開発エンジニアに要望の共有や相談を積極的に行いました。それに対して開発エンジニアは顧客のゴールを達成しつつ実装難易度を下げられる代替提案を行うこともよくありました。
期日が迫る中で顧客から変更要求が出てくることもありました。スケジュール的に厳しい場合はプロジェクトマネジャーは断固として受け付けず、次回の改修リリースに含めるなど、社内外の関係者全員が納得できる結果を実現するために心を砕いていました。
私の後に参加した開発エンジニアは私よりはるかにコーディング速度が速く、彼が参加してから消化されるタスク量が大幅に増えました。その代わりハッピーパス(素直なケース)以外のパターンが考慮されていないことも多く、テスト工程に回ってからバグが発覚することも多かったです。
そのやり方でも問題なかったのはテスト担当者を信頼できたからでした。印象的だったのが、パスワードの設定フォームにクリップボード経由でマルチバイト文字を貼りつけたら処理が通ってしまうバグを発見したことでした。フォームは伏字になっており、そのままではマルチバイト文字は打ち込めません。そこにクリップボード経由で貼りつけてみるという発想は私たち開発エンジニアにはありませんでした。素直に驚き、そして素晴らしい仕事だと思いました。
そうしてお互いの得意を活かし、できない部分をカバーした結果、プロジェクトは成功しました。メンバーの誰か一人でも欠けていたら絶対に失敗していました。
他にも元プログラマーのデザイナーやプロジェクトマネジャーの知り合いが何人かいます。中にはプログラマーに向いていないから職種を変えたことに引け目を感じる人もいます。ですが彼らはプログラマーの思考を肌で理解しています。そのためプログラマーに上手く配慮してくれることで仕事が円滑に回り、とてもありがたいと感じる場面が多くありました。
現在の日本のIT業界は学歴がキャリアの課題になる場面は少なく、スタート地点が変わる程度です。業界全体として実力や実績が評価されやすいです。適性があればチャンスはあります。
逆に片手間でやっていこうとしても、続けていくのも辛いと思います。めげない努力が必要です。
また、職種によって評価されにくい役割もあります。評価制度や世間の流行に左右される面もあります。自身の適性を早く見出し、キャリアの方向性を決められると良いと思います。
IT業界に関わり続ける気持ちがあるのなら、苦手を自覚しつつ、得意を活かせる場所や職種・役割を探してみるのも良いと思います。
転職活動のアドバイス
最後に転職活動自体のアドバイスです。2022年3月、SREへの転職活動の活動時期は、多い時は1日に4件、1週間に15件の面談をこなした週もありました。日程調整ツールのSpirを使うことで時間的に無理なくスケジュールを組むことができました。Spirが他の日程調整ツールよりも優れている点として、予定の前後に空き時間を設ける設定ができることです。私は30分の空き時間を設定していました。直前の面接が多少オーバーしても次の面接に備える時間を確保できるため、精神的にも余裕が持てました。
せっかくIT業界に来たのなら、より多くの人が幸せになれることを願っています。
Discussion
初めまして。
ITエンジニアを目指してプログラミング学習をしている者です。
色々不安になるような声もある中で本記事を読んで、非常に勇気が湧きました。
もうすぐ転職活動が始まるので、この記事の内容を頭の片隅に置きながら頑張っていきたいと思います。
貴重な情報ありがとうございました。