EMFMの「技術力」って何?というエピソードが面白かった

Apr 13, 2024 00:08 · 3035 words · 7 minute read Podcast AI ChatGPT

EM.FMのRe.33 「技術力」って何?というエピソードがとても面白かったのでブログに書きます。

Re.33 「技術力」って何? 作成者:EM . FM #EMFM

目次

技術力という言葉に対する疑問

ITエンジニアをしている人は「技術力を高めたい」という話に聞き覚えがありますよね。 そして多くの人が「自分の技術力を高めたい」と考えていると思います。

しかし技術力が何を指すのか明確にできている人は少なく、それ故に技術力を高めたくても結局何をすれば良いのかわからない人も多いです。

  • 技術力をつけたいから新しいフレームワークやプログラミング言語を触る
  • 技術力をつけたいから勉強する時間を増やす

キャリア形成の相談でこのような行動計画を耳にすることがありますが、「Tutorialをしたからといって技術力が高まったとは言えないよな?」と感じた経験がある人も多いのではないでしょうか。

このエピソードでは、エンジニアの技術力と成果、そして成果を残すために必要なスキルと、スキルを高めるための戦略について語っています。

ITエンジニアとしての技術力と成果

会社員として働くITエンジニアの場合、成果を残すことで技術力があると評価されます。 成果を残すとは、良い問題を良い方法で解決することです。 つまり「良い問題を見つけて課題を設定する力」と「設定した課題を解決する力」に分解できます。

実際に結果を出しているエンジニアの多くは良い課題を設定し、そして自分の培った技術や知識で課題を解決しているエンジニアであると思います。

問題を見つけて課題を設定する力

CTOなどの偉い人が広い視野で状況を捉えたとき、メンバーの提示する課題と解決方法が局所的であると感じることがあるそうです。 そしてCTOの考える最適解は、メンバーの考えとは違う方法である場合もあるのだとか。

日本の義務教育では国語や数学などで与えられた問題をより良く解くことが中心で、自分で問題を作る練習が足りていないのかもしれません。 そのため、大学で自分で問題を見つけて研究をしたり、社会人として自分で問題を設定して解決することを求められた場合に、それまで学んでいなかったスキルが必要となって苦しみます。

昨今ではAIやLLMの進化により、AIで解決できる課題が増えました。 しかし業界や会社に特化した知識など、その分野に精通していないと見つけることができない良い課題もたくさんあるでしょう。 ドメインに特化して課題を見つけるという点においては、まだまだAIに負けずに人間が価値を出せるのではないかと考えています。

設定した課題を解決する力

課題を解決するためのスキルには、「既に自分が持っているスキル」と「今は持っておらず習得が必要なスキル」の2種類があります。

既に自分が持っているスキルは、Tutorialをやったというレベルではなく、技術の生まれた背景にある課題やそこから生まれた機能を理解し、自分の課題解決に活用できる状態を指します。

しかし自分が持っているスキルだけで解決できる課題はむしろ少なく、大抵の場合は課題解決のために新たなスキルの習得が必要です。 スキル習得が必要な分野において、表面的に役立つ知識をインプットするだけでなく、深く知ろうとする探究心が技術力を育てます。

エンジニアリングマネージャーとプリンシパルエンジニアの需要

「技術力をつけたい」という言葉の裏で、「マネージャーをしたくないから技術力をつけてエンジニアとして生きていきたい」と考えている人もいるでしょう。 しかし、需要と供給を考えると、プリンシパルエンジニアは狭き門かもしれません。

例えば10人のエンジニア組織があった場合、マネージャーは必要ですがプリンシパルエンジニアは必須ではありません。 組織規模が大きくない場合、プリンシパルエンジニアの創出する価値とマネージャーの創出する価値を比較すると、マネージャーが創出する価値のほうが大きい場合が多いでしょう。

組織規模が1,000人など大規模になると、プリンシパルエンジニアとしてエンジニアリング組織の課題を解決する価値が大きくなり、技術力で会社レベルの生産性向上に貢献できる可能性があります。 この段階になるとプリンシパルエンジニアとして創出する価値がマネージャーに匹敵します。

狭き門だからといって目指したいキャリアを諦める必要はありませんが、難易度が高い道を目指すならそれなりの戦略が必要です。

エンジニアのスキルアップとスキルツリー

エンジニアのスキルは、RPGのような経験値積み上げによるレベルアップ方式ではありません。 同じ敵を繰り返し倒してもスキルは上がりません。 エンジニアのスキルアップはスキルツリーのようなイメージで、関連する周囲のスキルを学んだり、個別のスキルをつなぎ合わせることでスキルが向上します。

無数に選択肢がある中でこだわりを持って特定分野のスキルを深めた結果そこに金脈があり、会社の大きな問題解決や価値創出に貢献できるようなイメージです。 スキルツリーを深める速度が異様に早かったり異様に深い人が一騎当千のスペシャルなエンジニアになるイメージだそうです。 身近に思い当たるエンジニアがいたので、とても納得しました。

計画的にスキルツリーを攻略するならば、特定の分野に狙いを絞ってスキルを深めたり、いくつかの分野でスキルを深めて組み合わせによる希少性で攻めるのが良さそうです。 スキルツリー方式で課題解決する力を高めることが技術力を高めることに繋がります。

一騎当千のエンジニアになるチャンス

LLMやAIがとんでもないスピードで進化している今、AIを活用することで一騎当千のスペシャルなエンジニアに近づける可能性があります。 近い将来、1000人分のプログラミングリソースをAIに提供してもらうこともできるでしょう。 AIのプログラミングリソースを使いながら問題解決をすることで、エンジニアとして高い価値を創出できる可能性があります。

映像制作や作曲の分野では、既にAIのリソースを使った一騎当千が始まっています。

backspace.fm #545:ドリキン松尾の二人で「3づくし」。Claude 3、Suno V3、三体を語る

動画の文字起こしや字幕の挿入、作詞作曲までAIで実現できるそうです。 プログラミングにおいても既にちょっとしたアプリやスクリプトの作成はAIで実現できるので、課題を上手に見つけることさえできれば今までよりも圧倒的に早く成果を出せる可能性があります。

最後に

このエピソードを聞く前は、「エンジニアとしての技術力」とは「なんとかする力」だと考えていました。 今回のエピソードの内容と方向性は同じですが、圧倒的に解像度は低い状態でした。 自分がぼんやりと考えていた内容が解像度高く具体化されたこのエピソードは非常に興味深い内容でした。

今後の自分のキャリア戦略にも使いたいですし、キャリアに悩むエンジニアを見かけたらこの今回のエピソードを紹介したいと思います。

tweet Share