エンジニアのこれからのスキル【事例あり:差別化して高単価人材へ】


 

エンジニアにこれから必要なスキルって何かな?外部環境変化も意識しながらどんなスキルがあれば高単価な稼げるエンジニアになれるかな?こんな疑問にIT業界5年の僕が解説します。

 

スタートアップなどでは需要高いと思う 大企業は分業制なので、どのディレクターが優秀かを見極めれるエンジニアになってスキル盗めばよい。

エンジニア兼ディレクターになると、あるべきシステムは主体によって変わると体感できる ちな優秀なエンジニアは、地頭よいから備わっとること多い。

 

結論、プログラミングなど技術は前提としてビジネススキルがあると提案の幅や付加価値が広がり、技術進化に負けずむしろ技術進化を活用して稼げるエンジニアになれると考えています

 

これは、僕の周りで働く年収の高いエンジニアの傾向でもあるため、事例も踏まえつつ参考になるように解説します。

 

エンジニアのスキルの全体像

まずは、エンジニアにスキルの全体像から簡単に整理します。

 

プログラミングスキル

まずはエンジニアとしてベースになるプログラミングスキルです、プログラミングスキルは、フロントサイド、サーバーサイド、データベースに大別したいと思います。インフラやセキュリティとかもありますが割愛します。

 

フロントサイド

フロントサイドのプログラミングスキルでは、html、css、javaScriptの動的処理ですね。htmlとcssはスキルとして難易度が高くないので当たり前のように獲得したいスキルです。

 

採用目線で言うと、javaScriptの動的処理で非同期通信やajax使った処理に長けているといいなという感じですかね。ABテストのようなことを数多く行う企業やサービスでは、動的処理ができないとフロントサイドのエンジニアとしてはスキル不足になりますね。

 

サーバーサイド

次は、サーバサイドのプログラミングスキルです。いろんなプログラミング言語があり、PHP、Ruby、Java、Pythonがあります。

 

この辺でいうと、どのプログラミング言語を選択するかでどういった業種で働くかが決まりがちです。スキルの高さもあるんですが、どういう業種や企業で働くかで選ぶほうがいいっすね。

 

Javaなら金融系や業務系が多いですし、Rubyなどはスタートアップやweb自社サービス開発企業での活用が多い印象ですね。

 

データベース

データベースもいろいろあって、MySQLが基本的な位置づけとしてあります。データベース周りでは、正規表現とか設計としてのスキルが問われる部分です。

 

SQLを記述するスキル自体は当たり前スキルのような位置づけなので設計部分までスキルを身に着けられるのがまずは目指したいスキルレベルです。

 

マネジメントスキル

次はマネジメントスキルです。ここからは、メンバーレベルのエンジニアではなくてリーダーやマネージャーを目指すエンジニア、あるいは専門性の高いエンジニアを目指したい人が身に着けたいスキルになります。

 

レビュー

1つ目は、レビュースキルですね。レビューは、メンバー全員のアウトプットの品質を担保するためにリーダーの立ち位置の人が通常行いますね。なので求められる必要スキルは高いですね。経験年数的にもそれなりに必要です。

 

コミュニケーションスキルも同時に求められるので、的確に伝え品質をあげられるようになれば市場価値として高くなります。比較的どこででも求められますし、相互レビューをしている企業もあるので身に着けて損はないスキルです。

 

人材育成及び採用

人材育成及び採用もチームとしてアウトプットを出すために、管理職を目指すエンジニアは身に着けておきたいスキルです。基本的には採用では、プログラミングスキル、スタンス、コミュニケーション能力、この辺で見ることが多いです。

 

育成という意味では、キャリアアップの可視化を取り入れたりすることだったり、エンジニアのモチベーションがあがるような労働環境を整えることが必須です。

 

特に技術は進化が速いので、古い技術のままにしておくと、エンジニア採用市場においてエンジニアからの魅力が劣りなかなか採用できなくなります。なので、どのように働く職場として魅力を出していくのかはマネジメントスキルにおいてかなり重要です。

 

再発防止検討

3つ目は再発防止検討ですかね。マネジメントとしてバグや障害を減らすことも大事です。生産性に直結します。

 

なぜバグが起きたのか?対処療法的な改善ではなくて、根本的な改善が求められます。また総合的に考えて、暫定措置と恒久処置を切り分けて判断できるスキルも求められるので俯瞰して考えられるバランスが大事になりますね。

 

特にスキルとして価値が高いのは、1つ1つの個別の改善ではなくて、横断的に改善ができるような施策検討のできるエンジニアですね。

 

ビジネススキル


 

次はビジネススキルです。エンジニアにはビジネススキルは必要ないかもですが、付加価値をつけて高単価で稼ぎたい場合は、ビジネススキルをつけるのが手っ取り早いですし、普遍性が高いので技術進化にも対抗しやすいのでおすすめです。2つあります。

 

生産性向上

1つ目は生産性向上です。開発生産性向上と運用生産性向上に分かれます。開発生産性向上は、システムの設計など全体的な視点から、あるべきシステム設計を定義して施策実施における開発工数の削減を狙います。これは大きいサービスに対して有効なので、大企業でキャリアを積みたい人向けのスキルです。

 

開発工数は馬鹿にならないので、経営者も大喜びです

 

2つ目の運用生産性改善は、要するに自動化ですね。最近はいろんな、オートメーションツールがでていますし、クラウドサービスも豊富です。

 

これらを統廃合したりできると、組織への生産性改善としてインパクトが大きいので面白いと思います。

 

マーケティング

2つ目のエンジニアが得たいビジネススキルは、マーケティング系のスキルですかね。広い概念でいえば、問題解決スキルです。具体的に言えば、エンジニアと親和性の高いスキルは、UI/UXデザインスキルとSEOなどのマーケティングスキルですかね

 

これらのスキルもあると、プログラミングという作る側としてのスキルと合わせて提案ができるので、小さな企業や人の足りない現場、副業などで非常に重宝されますね。

 

エンジニアは作る側でいると、非常に発注関係で言えば相当希少性の高いスキルがない限り、弱い立場なので価格競争に陥りやすいです。ただ、ビジネスも含めて提案のできるエンジニアは少ないのでスキルとして重宝されます。

 

ただこの場合は、どういうクライアントに提案するかが大事で、大企業は分業制なのであまりニーズはありません。なので、スタートアップや副業のようなクライアントに提案するのが勝ち筋です。

 

人工知能活用スキル

エンジニアが今後軸をずらしてスキルアップするとしたら、人工知能周りが最近はホットですよね。

 

数学及び統計

いわゆる機械学習エンジニアのような転職ですね。なので、数学や統計への理解を深めることがスキルセットとしては必要になります。

 

ただ、結構難易度も高いですし、最近はデータサイエンス系の民主化(誰でも使える、普及を目指す)ようなサービスがでているので、いずれは供給がおいついてきてあまり優位性にならない立場になる可能性もなくはなです。

 

スタンススキル

個人的にエンジニアとしても大事にしてほしいスキルがあるとすれば、主体性やヒアリング力ですね。

 

主体性

主体性は、特にweb自社開発サービス企業でエンジニアとして働きたい場合は重要です。なぜかというと、自社開発の場合はエンジニアとして正社員としてプロダクト改善にコミットする姿勢が問われるからです

 

これが、SIerのようなクライアントサービスであれば、クライアントの要望通り動くでも大丈夫かもしれません。しかし、自社開発企業はそうではありません。主体性がないと、採用されないでしょうし評価もされにくいかと思います。それくらい主体性は大事です。

 

以下の記事でもSIerについての将来性を深掘り考察しています。

 

 

ヒアリング力

もう1つはヒアリング力ですね。コミュニケーション能力にも近いです。エンジニアはスキルアップして次のキャリアを考えると、ITコンサルという選択肢もあります。その場合に、大きくスキルとして求められるのがコンサルとしてのヒアリング力です

 

ヒアリング力がないと、クライアントが求める課題や要望に近づけません。ふんわりしたアウトプットを頑張って作っても徒労に終わる可能性さえあります。

 

このスキルは、SIerでも自社開発でもコンサルでもかなり大事なのでぜひとも身につけましょう。
以上が僕が考えるざっくりとしたエンジニアのスキルの全体像です。

 

エンジニアの職種別スキルセット

 

次に簡単にエンジニアとして職能ごとにどんなスキルが必要で、どう身に着けるか解説します。

 

フロントエンドエンジニア

フロントサイドのエンジニアでは、html、css、javaScript中心になります。基本的には、独学でもいいですし無料や格安の動画あるいは本で学ぶこともできます。あるいは、ガッツリ学んで就職までサポートが欲しい場合は、プログラミングスクールもありです。

 

特にjavaScriptでの動的処理を頑張ると単価の高い案件をとれやすいです。

 

サーバサイドエンジニア

サーバサイドエンジニアは、PHPやRuby、Pythonなどから好みのプログラミング言語を学びましょう。加えて、データベースも学ぶ必要があります。学習方法は特に、フロントエンドエンジニアと大差ないです。

 

ただ、システム設計など広範囲なスキルが求められるので、フロントサイドよりも高単価であることが現状は基本です。

 

管理職

管理職は、エンジニアのマネージャーとして活躍することになりますね。周りのエンジニアの管理職を見ていると、自ら実装もしますが、採用や育成、レビュー、ビジネス課題への解決提案など幅広く動いています。

 

年収で言うと企業規模にもよりますが、800万円~は堅めかと思います。このスキルレベルに達するのは、容易ではないので長年努力が必要ですね。友人は8年目程度で上場企業のマネージャーになっていました。

 

あのスキルレベルでフリーランスエンジニアになれば年収1000万円も超えてきますね。

 

機械学習エンジニア

最後は機械学習エンジニアをあげておきます。いわずもがな、数学や統計のスキルが必要になってきますね。高度なスキルなので誰でもなれるものではないですが、現状では市場価値の高い職種なので年収アップが期待できますね。

 

多くの機械学習エンジニアは高学歴で優秀な印象が多く、独学で学びきれるものではない印象が大きいです。多くは、大学や大学院で専門性の高い専攻での学習をしていて、それをベースにしている印象があります。

 

ただ完全未経験からだと機械学習エンジニアになれないわけではなくて、未経験からだとデータサイエンスなどを中心に学べるプログラミングスクールで統計やPython、実際のビジネス課題に機械学習を活用して解決する体験を得て転職するのが王道そうです。以下も記事も関心があればどうぞ。

 

 

外部環境変化を意識して差別化になるスキルを身に着ける

 

でですね、今回の記事で伝えたいのはエンジニアも技術の進化という外部環境変化を意識して差別化になるスキルを何に据えて獲得していくかということです。そうすれば高単価人材へと近づけると思います。

 

自動化と民主化が進む

1つは前にも書いた通りで、エンジニア界隈のサービスやツールによって、自動化や民主化がどんどん進みます。機械学習エンジニアもデータロボットのような誰でも使いやすくなるサービスが普及してきたりする可能性は全然あります。

 

そうなるとコモディティ化するので、差別化の源泉じゃ無くなったりもします。なのでそういう変化を見据えてスキルセットを構築すると良きですよね。

 

参考:機械学習エンジニアの将来性と今後の必要スキルを考察【何で差別化する?】

 

差別化スキルを身に着けて高単価人材へ

差別化スキルを身につければ、エンジニアとして高単価人材になれる道が見えてきます。大企業で出世でもいいですし、フリーランスエンジニアとして稼いでもいいでしょう。

 

スキルをどうつけるか次第で、どこで働いていくかも変わります。マネジメント系ならもう会社員が多いですし、そうでない場合はフリーランスエンジニアとして進むのもアリですね。

 

ちなみにフリーランスエンジニアであれば、PE-BANKがイチオシでマージン料がかなり安いので、自分の懐に入るお金が大きくなります

 

参考:PE-BANKの評判をフリーランスエンジニアにインタビュー【メリットだらけ】
 

まとめ

 

ということでエンジニアのこれからのスキルセットというテーマで解説しました。まずはプログラミングスキルを身につけてから、どういう方向性で進むか考えると良きかと思います。

 

参考:プロエンジニア(プログラマカレッジ)の評判と口コミ【徹底取材でわかった6つのこと】

最新情報をチェックしよう!