私は昨年末のコロナ期間中に転職活動をした経験5年のフルスタックウェブエンジニア(以下フルスタックエンジニア)です。フルスタックエンジニアというワードについて最近あまり評判が良くないのですがあえてこのような書き方をしています。
この記事でのフルスタックエンジニアは、”Web開発で必要とされる各分野を一通り開発できるが、その分野の専門家とは言えないジェネラリストとしてのウェブエンジニア”とします。
自分はこれまで、小規模なスタートアップで2社働いていて、フロントエンド・バックエンド・インフラにまたがって開発業務を行ってきました(略歴)。そのような自分が昨年末から大企業を中心として就職活動をし、そこで感じたフルスタックエンジニアの転職活動の難しさについて文章として残しておきたいと思います。
大企業のフルスタックエンジニアの求人は多くない
大前提として、多くのIT系の大企業は開発の分業化がされており、採用の枠組みからバックエンド、フロントエンド、SRE、インフラ、QA、テスト、データ、etc…とかなり細分化されています。そもそもフルスタックエンジニアというポジションがあること自体、多くはありません。
大きな企業であってもフルスタックエンジニアを募集している求人もあるにはあるのですが、新規事業のプロジェクトで人が足りないなどの臨時での求人が多いと感じます。自分は最終的にとある大きな会社のフルスタックエンジニアのポジションで採用されたのですが、これもプロジェクトの人員拡大に基づく若干名の採用でした。
フルスタックエンジニアは広い求人に応募できる
一方で、大抵の会社はフロントエンドやバックエンドのどちらかのポジションはオープンになっているので、フルスタックエンジニアであってもフロントエンドやバックエンドのポジションに応募することは可能です。
応募できるポジションの幅が広いということは大きなメリットです。
個別スキルで評価されると不利
ただし、自分のように、満遍なく5年を色んな技術に割り振ってきた人間が、バックエンドやフロントエンドに特化して5年つぎ込んできた人材と競うことは難しいです。
自分は、今回の転職活動でフルスタックエンジニアの求人とバックエンドの求人それぞれに応募してきましたが、バックエンドで頂けたオファーは概ね、経験3年くらいのオファー提示でした。
これについては自分も納得していて、例えばマイクロサービスを開発する人材がフロントエンドをモダンなSPAで開発できても業務に直接メリットはありませんし、逆にフロントエンドのポジションでバックエンド開発の経験は直接は生きてこないと思います。
実際自分のスキル感を自己評価しても、バックエンド3年、フロントエンド2年くらいのスキルレベルだと思います。
一方で、専門職ロールにした時のメリットとしては、概ねなんでもやってきました、という話をすると技術に対して選り好みせずにキャッチアップする姿勢を好意的に評価していただくことはできたと思います。
フルスタックエンジニアの居場所
最終的に自分に良いオファーを出していただけたのは3つあったのですが、全てフルスタックエンジニアのロールでした。概ねバックエンドのポジションよりも1-2回りくらいオファーが良かったです。
- A社: 大手のIT企業. (若干名募集の)フルスタックエンジニア職
- B社: クラウドプロバイダーの技術系のポジション
- C社: コンサルファームのフルスタックエンジニア職(DX実行支援・PoC開発など)
最終的に自分はそのうちの一社に入社することにしました。
自分が高く評価されたポイントとしては、
- 自分のスキルが概ね求人のロールにあっていて経験のほぼ全てがプラスに働いた
- 市場にフルスタックエンジニア自体が少ない
というものがあったのではないかと思います。 特に2点目に関しては、大手企業のポジションが細分化されているため、フルスタックエンジニアになりづらい環境だからではないかと考えています。
フルスタックエンジニアの求人の探し方
普通に求人サイトや逆求人を利用してもいいのですが、あらかじめ以下のサイトにアクセスして、どの企業にフルスタックエンジニアが生息しているのかあたりをつけるといいと思います。
https://opensalary.jp/ こちらのサイトでFocusをFullstackにして絞り込みをすると、フルスタックエンジニアがいる企業の一覧を見ることができます。
自分がこれまで見てきたフルスタックエンジニアのポジションは概ね以下のような企業に当てはまるように思います。
- スタートアップ
- IT大手の新規事業(例. A社)
- クライアントワークを行う事業体(例. B社、C社)
- ジェネラリスト志向の企業
スタートアップ
これは言わずもがなで多くの小規模な会社では1-5人程度のチームでフロントエンド・バックエンド・インフラを全て実装しています。フルスタックエンジニアは引く手数多です。
ただ、待遇面は会社が儲かっているかどうかによりますし、成長途上の企業であれば従業員に報酬面で報いるよりも、先にまず会社を大きくするための投資に使う、という判断をする企業も多いです。
IT大手の新規事業
これもスタートアップとほぼ同じなのですが、プロジェクト依存で求人募集はあまり安定していないと思います。常時募集していないなら採用サイトを定期的に巡回しましょう。
クライアントワークを行う事業体
いわゆるクラウドプロバイダーや、コンサル、受託開発系などが該当します。これらの企業がフルスタックエンジニアを求めるのは顧客が都度変わり、それに伴って幅広い技術への理解が必要とされるためです。入社後にプロジェクトに合わせて色んな技術を使うから、フルスタックエンジニアを採用しておこう、という話です。
ジェネラリスト志向の企業
GoogleやIndeedなどソフトウェア開発全般ができる人を求めている企業は、結果的にフルスタックエンジニアを採用していると言えると思います。ただ入社難易度はとても高いので、無視して問題ないと思います。
おわりに
私はフルスタックエンジニアを続けるのか、専門特化していくのか(この場合バックエンド)でかなり悩み、最終的にフルスタックエンジニアを続けることにしました。 私と似たような境遇の方がもしいらっしゃれば、大きな企業でもフルスタックエンジニアのポジションはある、ということを知ってもらえると嬉しいです。