見出し画像

なぜ現代のITエンジニア採用は難しいのか?

こんにちは、ITエンジニアのgamiです。

DX(デジタルトランスフォーメーション)ブームの裏で、ITエンジニア採用への注目も集まっています。最近でも政府がデジタル庁創設のためにITエンジニアやその周辺職種の採用をオープンに始めたことが話題になっていました。

一方、優秀なITエンジニアを採用するのは難易度が高いという話もよく聞きます。すでにエンジニアの数が一定いる会社であればまだマシかもしれませんが、特に「これからITエンジニアを採用して開発組織を作ろう」と考えている会社にとっては至難の技に見えます。一方、DXの文脈で語られるような企業変革を実現するには、自社にITエンジニアがいることは大きな武器になります。

僕自身、ITエンジニアとして転職を経験したり、採用側としてエンジニア中途採用の面談に何度も参加したりしました。またエンジニアのキャリアに関する発信をしばらく続けてきて、最近は「エンジニアType」さんにインタビューしていただいたりしてます。「最初の数名の優秀なITエンジニアを採用する」というハードルを超える企業や事業が増えてほしいという願いを込めて、このnoteを書きたいと思います。


そもそもITエンジニアの全体数が足りない!

ITエンジニア採用がなぜ難しいかを考えるためには、ITエンジニアという集団の特性を知る必要があります。ここで取り上げたい特性は、3つあります。

1つは、そもそもITエンジニアの需要に対して供給が足りず、ITエンジニア採用市場は売り手市場であるということです。

たとえば経済産業省の委託でみずほ情報総研が2019年にまとめた「IT人材需給に関する調査(PDF)」では、2018年時点で22万人が不足し、さらに需要の伸びがそこそこの場合でも2030年には約45万人に不足が拡大するという予想を出しています。もちろんITエンジニアになる人も徐々に増えていますが、需要の伸びがすごいので全然足りなそう、という予想です。

スクリーンショット 2021-01-24 16.58.41

先週のnoteで書いたように、DXとかデジタル化というのは「コンピュータが扱える領域をリアルワールドにもっと広げないとやばい」というムーブメントであり、そのあらゆるものをコンピュータが扱えるようにする活動にITエンジニアは不可欠です。そんな社会全体の動きから、ITエンジニアを採用したい企業間の競争も激化しています。

そのためITエンジニアを採用しようとしても、よほど魅力的じゃないと他の会社に負けてしまいます。1人のITエンジニアが生涯で転職する回数自体は(SI業界以外では)それなりに多い印象ですが、逆にいえば運良く採用できても会社の魅力が無くなればすぐに辞めてしまうということでもあります。

「価値を出せるITエンジニア」の見極めが難しい

2つ目に、ITエンジニアが選考プロセスに進んでくれたとして、その人が実際に給料以上の価値を出してくれるかを見極めるのが非常に難しいということがあります。それには大きく2つの理由があります。

よく言われることとして、「一流のプログラマーは普通のプログラマーと比べて10倍の生産性をもつ」という話があります。実際に個人に紐付く生産性を正確に測ることは難しいですが、飛び抜けて優秀な同僚と働いたことがあるITエンジニアであれば体感として納得する話にも思います。

たとえばソフトウェア開発においては、初期の致命的な判断ミスが後々になって莫大なコストや恐ろしいリスクにつながるという状況がよくあります。(有名な例ではセブンペイ事件を想像するとわかりやすいかも。)普通のITエンジニアを5人採用するお金で、優秀なITエンジニアを1人採用した方が長期的にはプラスである、といったことがしばしば起こるわけです。

ちなみに、優秀さを見極めにくいという意味では、ITエンジニアの優秀さ(の一部)は年齢に左右されにくいというのもあります。他の職種の事情をあまり知らないのであれですが、学生時代からプログラミングに精通している人だと、新卒エンジニアの方がその辺のベテランエンジニアよりもバリバリとプログラムを書いて価値を出せたりします。特に変化の大きい業界なので、新しい技術へのキャッチアップが早い若い人の方が有利と言われたりします。最近は否定されがちですが、昔は「ITエンジニア35歳定年説」というのがよく話題にのぼったりもしました。

さらに、「ITエンジニア」と一言にいってもそれぞれの得意な領域というのはかなり異なります。たとえば僕が新卒で入った富士通には優秀なシステムエンジニア(SE)がたくさんいましたが、システムエンジニアの得意領域は主に顧客の業務理解やプロジェクトマネジメントにあります。富士通から優秀なSEを採用して「自社サービスをアジャイルに開発したいから、最初のプロトタイプの開発をしながらメンバーを採用して開発チームを組成してくれ」みたいなことを言っても、それまでの業務とのギャップが大きすぎてうまくいかないことが多そうです。個々のITエンジニアの得意な技術領域についても、Webフロントエンド、スマートフォンアプリ、サーバーサイド、インフラ、セキュリティ、ハードウェア、マネジメントなどなど、かなり人によって違います。もちろん優秀なエンジニアは複数領域をカバーしていることも多いですが、インフラエンジニアをずっとやっていた人に「明日からiOSアプリを作ってくれ」と言ってもすぐには難しいでしょう。また、「まず解決すべきは技術的な問題ではなく開発組織の問題だった」みたいなケースもあります。その場合、自社に必要そうな技術領域に強い人を採用するよりも、まずは経営層を説得してITエンジニアが辞めない開発組織を作れる人を採用した方が良かったりします。

こうした理由から、自社の課題や自社が出せる年収レンジに対してどんなITエンジニアを採用すればいいのかを決めることも、実際に選考に来た人がその理想像にマッチするかの判断も、どちらも非常に難しいわけです。特に技術的な話が絡むと、優秀なITエンジニアを見極められるのは優秀なITエンジニアだけだったりするので、「ITエンジニアを採用するためのITエンジニアがいない」という鶏卵問題が起こることがあります。

優秀なITエンジニアは「テックカンパニー」で働きたい

3つ目は、「優秀なITエンジニアが働きたい環境」を提供できない会社が多いという点です。これについては一言で表現するのが難しいので、少し抽象的な話から始めます。

ITエンジニアとは常に「より良い方法」を追求し続ける生き物です。目の前のプロダクトをつくるのに最適なプログラミング言語や設計方針はどれか、課題の優先度をどう決めるべきか、どうチームビルディングをすべきか、開発のペース作りはどうするか、その中で自分はどんなツールやマシンを使って開発するべきか。ソフトウェア開発とは常に不確実性との戦いであり、ITエンジニアたちは不確実性により良く対処する方法を日々模索しています。

こうした試行錯誤は、会社単位に閉じません。より良い方法が「発見」されると、ブログやカンファレンスで広く共有され、世界中のITエンジニアたちによって日々の仕事に取り入れられ吟味されます。十分に検証され評価が落ち着くと、場合によってはソフトウェア業界全体のあるスタンダードが塗り替えられたりします。こうした学習サイクルが、多くの人の想像以上のスピードで日々回されています。1年前の情報ですら「古い」と言われる中で個々のITエンジニアたちは、高い生産性を保ち続けるためにその変化にキャッチアップしながら、使うライブラリ、チーム開発の仕方、自身の働き方などをチューニングし続ける必要があります。言い換えれば、より良く変化し続けることによって不確実性を継続的に減らしていく活動こそ、エンジニアの仕事の本質と言えます。

この「より良い方法」を模索し続けることは、企業の利益にとって重要なだけではなく、エンジニア個人のスキルアップにとっても欠かすことのできない要素です。逆にいえば、自分の得意とする領域の面白い課題に対して「より良い方法」をあれこれ試すことができないようなつまらない組織では、優秀なITエンジニアは働きたくありません。つまり「働きやすく、かつ高い年収を出せる会社」があっても、ITエンジニアとして面白い仕事ができる環境が提供できなければ、採用に至らないケースが往々にしてあるということです。たとえば少なくとも次のような変化に弱い会社では、優秀なITエンジニアを継続的に採用するのは難しそうです。

優秀なITエンジニアに避けられる会社の例
新しいツールを試すのに複雑な承認プロセスが必要
経営陣のソフトウェア開発に対する理解が無くいちいち説明を求められる
支給されるPCのスペックが低い
何を作るかを決める裁量がなく社内受託開発のようになっている
・使いにくい社内システムや独自ツールを使うことを強要される

逆に、テクノロジーやエンジニアリングの力が経営レベルで信じられていて、社員の働き方や使うツールなどの細部に至るまでテクノロジーによって改善していこうというカルチャーのある会社が、ITエンジニアに愛される会社といえます。そんな会社を「テックカンパニー」と呼ぶのであれば、多くの会社はITエンジニアの採用のためにも「テックカンパニー」を目指すべきです。

優秀なITエンジニアを採用する方法

ここまで説明した「見極めが難しい」とか「良い環境を提供する必要がある」といったことは、職種に関係のない「採用一般の難しさ」でもあります。ただそんな中でもITエンジニア採用が特に難しいのは、想像以上にその状況が極端であるということかもしれません。そうした想像と現実のギャップを理解できずに採用に失敗している会社も世の中に多くあるような気がします。

一方、「なぜITエンジニアという職種のためだけに会社の在り方まで変えなければいけないのか」という批判も聞こえてきそうです。それに対しては、日本CTO協会が提唱する「2つのDX」という考え方が参考になりそうです。

日本CTO協会では「DX」という言葉を2つの意味で捉えています。
1つは、企業がどれだけ経営に対してデジタル技術を用いたビジネス変革ができているかを表す企業のデジタル化(Digital Transformation)です。
もう1つは先端開発者にとっての働きやすい環境と高速な開発を実現するための文化・組織・システムが実現されているかを意味する開発者体験(Developer eXperience)です。
これらの2つは、経営にとってヒト・モノ・カネが一体であるように、一体で実現されるものです。デジタル技術は目に見えないため、しばしばわかりやすいものにだけ投資して見えない品質をおろそかにしてしまいます。そのため、開発者体験は悪化し、企業のデジタル化を阻害してしまうことがあるのです。
私たちは、「2つのDX」を一体で捉えた基準をつくり、その普及をしていきたいと考えています。
DX Criteriaとは - DX Criteria v201912- 「2つのDX」とデジタル経営のガイドライン

優秀なITエンジニアが働きたいと思う環境を作ることは、それ自体が独立したゴールではなく、DX(デジタルトランスフォーメーション)を進めるプロセスの中で自然と実現されるべきことであるというわけです。そう考えると、ITエンジニア採用の難しさとはすなわちDXの難しさであり、逆にいえばDXを押し進めることが世の中のITエンジニアにとっての魅力につながるはずです

というわけで、結局はITエンジニア採用に近道なんて存在せず、その難しさを受け入れて地道に組織改革や文化の醸成を進めていくしかない、というのが僕の結論でした。とはいえ内部に「わかっている人」を1人でも抱えるということが初期は最重要になると思うので、まずは優秀なCTO候補を探し、その人を経営層自ら必死に口説き落とすというところから始めるといいかもしれません。

ITエンジニア採用と2つのDXをもっと深く知るための3つの文書

最後に、このnoteのトピックをさらに深く理解するためのおすすめの本と記事を3つ紹介します。

まず1冊選べと言われたら、及川卓也さんのソフトウェア・ファーストを推します。及川さんはMicrosoftやGoogleでプロダクト開発やプロダクトマネジメントを担当した後、現在は日本企業の技術選定や組織作りを支援しています。『ソフトウェア・ファースト』ではまさにDXの文脈の中で、構築すべき理想の開発組織についてや、エンジニア採用のJob Descriptionの書き方まで説明されています。

よりITエンジニアの仕事の実態を理解する本として、Engineers in VOYAGE ― 事業をエンジニアリングする技術者たちもおすすめです。まさに歴史あるテックカンパニーであるVOYAGE GROUPのITエンジニアたちが何を考えどんな仕事をしているのかをインタビュー形式で読むことができます。技術用語も多いですが、エンジニア以外が読むことを想定してたくさん注釈も付けられています。

ある企業を「テックカンパニー」に変えるという事例として、ZOZOテクノロジーズのCTO今村さんが書いたnoteもとても良いです。CTOに就任してからZOZOをテックカンパニーに変えるまでに実際にやったことが、分野別にかなり詳細に書かれています。まさにDXの生きた教科書であり、ぜひ読んで欲しいです。


ここから先は

0字
同僚と飲むビール1杯分の金額で、飲み会で愚痴るよりもきっと仕事が楽しくなる。そんなコラムを月に3〜4本お届けする予定です。

【初月無料】デジタル時代の歩き方について考えたことを発信します。ソフトウェアの時代とは何か。エンジニアの頭の中はどうなっているのか。NoC…

サポートをいただけると、喜びドリブンで発信量が増えます!初月無料のマガジン『仕事を楽しくするデジタルリテラシー読本』もおすすめです!