読者です 読者をやめる 読者になる 読者になる

paiza開発日誌

paiza(https://paiza.jp ギノ株式会社)の開発者が開発の事、プログラミングネタ、ITエンジニアの転職などについて書いています。

【人材不足?】優秀なITエンジニアを採用できない本当の理由

f:id:paiza:20161207135100j:plain
Photo by Andrew Stawarz
f:id:paiza:20140916135428p:plainこんにちは。谷口がお送りします。

弊社はITエンジニアの転職・学習サービスを運営しておりますので、企業の皆様から「どうしたら優秀なエンジニアを採用できますか?」というご相談を受けることがよくあります。

優秀なエンジニアの皆さんはどのように転職しているのでしょうか?どうしたら優秀なITエンジニアを採用することができるのでしょうか。

今回は、ITビジネスにおけるエンジニアの採用、教育についての課題点について考察していきたいと思います。

■現代のITエンジニアの採用・教育における課題

f:id:paiza:20161207135229j:plain
Photo by Maya-Anaïs Yataghène

◆課題1:ITエンジニアに既存の採用手法ではリーチできない

以前、実際にエンジニアの方々50人ほどに転職方法について聞いてみたところ、優秀なエンジニアの方々ほど、特に縁故等で転職された方が多いことが分かりました。

人材紹介経由での転職率は、全職種では約30%程度なのに対し、ITエンジニアに限定すると8%しかいませんでした。

これはなぜなのでしょうか?

◇エンジニアの転職先の選び方

優秀なエンジニアの方々は、技術的な向上心が高く、仕事の選び方も「技術の向上が可能な環境か?」「自分の興味のある開発が可能な環境か?」といった視点が中心となります。

しかし、既存の一般的な転職サイトや転職エージェントでは、営業が中心となった組織構成となっているため、必ずしもITの技術面における理解があるわけではないという場合が非常に多いのです。

また、転職エージェント等を利用する場合は、企業と応募者の間にキャリアアドバイザーが入ります。キャリアアドバイザーの大半は、プログラミング経験や開発経験があるわけではありません。そのため、エンジニア側としては技術面についてのキャリアアドバイスを受けたくても、適切な話ができないという場合が非常に多くあります。

エンジニアとしては、そういったズレの生じやすい転職サービスを使うよりも、知り合いのエンジニア経由の方が、企業がどういう開発を行っており、どれくらいの技術力を持っているかも分かりやすいわけです。また、自分の技術力について正しく理解してもらえる可能性も高いでしょう。「エンジニアは、エンジニア同士で話をしたほうが早い」のです。

◇エンジニアがやりたいと思う業務

さらに深刻なのは、「自社の業務にそもそも魅力がない」という根本的な問題がある場合です。

エンジニアがどのような仕事に魅力を感じるのかについてですが、まずはエンジニアの気質を理解する必要があるでしょう。

エンジニア(プログラマー)の特性として、よく三大美徳(怠慢、短気、傲慢)が挙げられます。

この中で、特に第一の美徳である「怠慢」というのは、簡単に言えば「繰り返される仕事はシステムで自動化し、労力を減らすための手間は惜しまない」という気質です。「繰り返しの労をいとわず、何度でも同じことを行う」という「勤勉さ」とは、対極にある特性かもしれません。

かつて主流であった「労働集約型ビジネスモデル」のSIerですと、毎回オーダーメイドでシステムを作ることになるため、システムを資産としてたくわえておくことができません。基本的に毎回ゼロベースでの開発となるため、似たようなシステムの開発でも、同じことを繰り返さなければならないのです。このような開発は先ほどの美徳に反するため、特に優秀なエンジニアにとっては魅力を感じにくいかと思います。

対して、「知識集約型ビジネスモデル」の場合は、作ったシステム自体で収益を上げ続けていくことが最終的なゴールとなります。「労働集約型ビジネスモデル」で、システムを作り納品すること、労働力を提供することがゴールになっているのとは対照的です。

「知識集約型ビジネスモデル」の場合は、システムを継続的に利用し、繰り返される仕事を自動化すること、システム自体がサービスを提供し、継続的にお金を稼げることが前提の業務となるため、エンジニアの気質的にも受け入れやすい傾向にあります。

少し前までは、ITエンジニアの仕事といえば「労働集約型ビジネスモデル」のSIerの業務がほとんどであったため、転職するにしても選択肢は余りありませんでした。

しかし現在は、システムの内製化が活発化しており、「知識集約型ビジネスモデル」のユーザー企業や、Webサービスを自社開発している企業などでも、エンジニアの求人が非常に増加してきています。ここ数年のIT業界の流れの変化により、エンジニアの選択の幅は広がり、逆に「労働集約型ビジネスモデル」の求人は人気がなくなってきています。

「仕事に魅力がない」という課題に対しては、採用手法等における一時しのぎ的な対応策はあるかもしれません。しかし、優秀なエンジニアが集まる構造にするためには、企業のビジネスモデル自体の変革が必要となります。ITを利用し、スケールメリットの出る知識集約型モデルの企業であれば、優秀なエンジニアが集まり、さらなる知識集約を加速する好循環に入ることができるでしょう。逆に、労働集約型モデルの企業では、優秀なエンジニアが集まらず、ますます労働集約型へ傾いていくという負のスパイラルにはまってしまうことも考えられます。

◆課題2:技術の可視化が難しく、いい人がなかなか見つけられない

第2の課題としては、仮にエンジニアからの応募が集まった場合でも、エンジニアのスキルを正しく把握することができなければ、必要な人材を選ぶことができないということが挙げられます。

エンジニアを採用する際に難しいのは、スキルを定量化するのが難しいという点にあります。営業職であれば売上や販売数、マネージャー職であればマネジメント人数、プロジェクト規模などの定量項目で、ある程度のスキルや経験をはかることが可能ですが、エンジニアというのは、そういった項目が見えにくい仕事でもあります。

◇正しくないエンジニアの採用プロセス

SIerでは、労働集約型という特性もあり、マネジメント人数や経験プロジェクト規模などによって、スキルをはかりやすい傾向にあったかもしれません。しかし知識集約型になると、そういった指標では正しくスキルや経験、知識をはかることは不可能です。

従来の選考プロセスは、終身雇用時代の名残で、さまざまな職種においても統一された選考プロセスとなっています。そのため、全体的にコミュニケーション能力を重視した選考となっており、技術力や知識レベルは軽視されがちになっています。

エンジニアは業務上、営業や企画職などに比べてプレゼンテーションをする機会が圧倒的に少ない職種です。しかし転職活動をするとなると、途端に自己アピールのプレゼンテーション能力を求められてしまいます。その結果として、優れたスキルのあるエンジニアでも、自己アピールがうまくできないと選考に通らないという事態が発生してしまいます。これでは、エンジニアと採用企業、双方にとって不幸な結果となってしまいます。

◇プログラミングスキルチェックの必要性

こうした事態を避けるために、近年では現場のエンジニアを面接に参加させるというような企業も増えてきました。しかし、人事面接や役員面接が、結局従来型のコミュニケーション能力が重視される面接となっている場合は、現場のエンジニアの時間が無駄に消費されるだけになってしまいます。

当然ながらエンジニアという職業にとって、プログラミングの知識は不可欠です。しかし、面接の場でプログラミングをさせている企業は国内ではまだごく一部です。

海外に目を向けてみると、MicrosoftGoogleFacebookAmazonTwitterなどでは、面接の場で白板にプログラムを書かせたり、実際にプログラミングをさせる事が一般的に行われており、むしろそれがエンジニアの採用プロセスにおけるスタンダードになっています。

技術力のある優秀なエンジニアを正しく見極めて採用したい場合、こういったプログラミングテストを導入していない企業は、大きく出遅れていると言っても過言ではないでしょう。

◆課題3:既存の教育システムでは、人材育成が難しい

第3の課題は、従来の教育システムでは優秀なエンジニアを育てることが難しいということです。

ITの世界は技術の進歩が非常に早く、例えばプログラミング言語ごとの仕様や開発環境等に関する知識においても、進歩が早すぎて教材や講師を調達することが難しく、教えてもすぐに陳腐化してしまう傾向にあるのです。

◇組織教育の時代から、個人学習の時代へ

エンジニアの領域に限らず、現在企業における教育というのは、大きな転換期を迎えています。それは、「組織教育の時代から、個人学習の時代へ」の転換です。

まず、「教育」と「学習」という概念について考えてみましょう。

「教育」とは、個人に対して、組織の求めるスキルを個人に習得してもらうための、個人にとっては受動的な訓練という概念です。一方、「学習」は、個人がやりたいことをやるために主体的に学ぶという概念です。

「組織教育の時代から、個人学習の時代へ」の転換は、学びの主体者が組織から個人へと転換しているということなのです。

かつて終身雇用が当たり前だった時代の、「企業が個人の仕事を一生保証する代わりに、企業への絶対服従を求める」という枠の中では、教育という概念がうまく機能していました。

終身雇用が主流だった高度経済成長期は、企業も個人も経済的な豊かさを追い求めるという点で利害が一致していたため、企業としての経済的な豊かさを求めるための「教育」は、個人としても経済的な豊かさを得るための「学習」として受け入れることができたのです。

しかし現在はどんな大企業でも、ある日突然経営状況が傾いたり、リストラされてしまったりといった可能性のある社会環境となっています。そのため、個人は企業のためにスキルアップするのではなく、自らのためにキャリアを考え、学習をするといった傾向に変化してきています。

これはインテルのCEOアンディー・グローブも自著「インテル経営の秘密」の中で同様の事を述べています。

インテル経営の秘密―世界最強企業を創ったマネジメント哲学

インテル経営の秘密―世界最強企業を創ったマネジメント哲学


また、経済的なの豊かさというよりも、自己実現のために仕事を利用するというような、精神的な豊かさを重視する人も増えてきました。

こういった変化により、従来型の企業の理論における一方的な教育は、成果が上がらなくなってきたのではないでしょうか。

このような流れの中では、企業は個人に対して一方的な要求を押し付けるのではなく、企業と個人が一緒にキャリアを作っていくということが重要となってきます。個人がやりたいと思える仕事と、企業が目指す結果をどのようにリンクさせられるかということです。

エンジニアに関しては、彼らがやりたいと思えるような開発やわくわくするような案件をどれだけ提供できるかということになります。魅力的な仕事があれば、その必要に応じて個人の学びも加速し、企業と個人が同じ方向を向くための教育と学習を同化させることができるでしょう。

そのためには、まず企業としてのビジョンを明確に打ち出し、そこに共感する人材が集まるようにすることが必要となります。

優秀なエンジニアの中には、だらだら残業することなく業務時間内は集中して働き、個人の時間は自分の興味のある分野の研究や開発を行い、その成果を仕事に還元するという働き方をしている人が非常に多くいます。

これはワークライフインテグレーションという、職業生活と個人生活の境目を明確にせず、双方の充実をはかるような働き方です。最近では、エンジニアに人気のある求人も、給与の高さよりも残業時間の少ない求人にシフトしてきています。

高度成長期を経て成熟が進んだ日本社会の中では、仕事はもはや賃金を稼ぐための手段だけにとどまりません。人生の半分近くの時間を占める仕事自体を楽しめなければ、それは決して豊かな人生とは言えないでしょう。

ただお金があれば幸せ、という時代は既に終わっています。自分の実力で社会に良い影響を与えたり、自分の得意分野を深めたりできるような仕事をして、人生を充実させたいという考えは、珍しいものではありません。

私の周りでも、最近はプライベートで趣味のプログラミングをしているというエンジニアが多くいます。彼らは、趣味ではその時に一番やりたい開発をしているので、ストレスもなく楽しいと言います。また、趣味で発見したことを仕事にフィードバックして、高い相乗効果を得ているようです。

これはエンジニアに限ったことではありませんが、今後は企業が優秀な人材を集めたい場合は、企業と個人は使用者と労働者という関係ではなく、優秀な人材に対し、企業を自己実現のために使ってもらうような形にシフトしていった方がよいでしょう。

かつては優れた会社にとって都合よく動ける個人が出世していましたが、現在では、優れた個人にとって都合のいい会社が成功するのではないでしょうか。

■まとめ

現在は、ITビジネスの流れの変化により、採用のあり方から、企業のあり方にまで変化が起きています。

企業は新しい採用手法の取り組みはもちろんのこと、優秀な人材が働きたくなるビジョンを打ち立てること、評価体系や職場環境を整えていくことが必要になります。そして優秀な人材を確保して組織を構成していくことが、5年後、10年後の将来に大きく影響すると思われます。

paizaでは、ITエンジニアとしてのスキルレベル測定(9言語に対応)を実施することで、エンジニアの皆様のプログラミングスキルを可視化しております。

エンジニアの皆様の転職活動・企業の皆様の採用活動にお役立ていただければと思います。


paiza運営元のギノでは、paizaを一緒に開発してくれるエンジニアを募集しています。より良いサービスにしてみたいと少しでも思われた方、サービスオリエンテッドなエンジニアの方大歓迎です!


paizaではITエンジニアとしてのスキルレベル測定(9言語に対応)や、プログラミング問題による学習コンテンツ(paiza Learning)を提供(こちらは21言語に対応)しています。テストの結果によりS,A,B,C,D,Eの6段階でランクが分かります。自分のプログラミングスキルを客観的に知りたいという方は是非チャレンジしてみてください。

http://paiza.jp

プログラミング入門講座|paizaラーニング

PHP入門編Ruby入門編Python入門編Java入門編JavaScript入門編C言語入門編C#入門編アルゴリズム入門編