🔥

実務で通用するエンジニア力とは 「つよつよエンジニア!」

2025/02/22に公開

はじめに

私は、web系の自社開発系企業でエンジニアをしているものです!
インターンを含めてかれこれ1年以上は実務をしています。
しかし、まだまだ「つよつよエンジニア」にはなれていないと感じることがしばしばあります。
そこで、いわゆるつよつよエンジニアとは何が強いのか、どんな力があるのかを深ぼって自分も早く「つよつよエンジニア」になれるようにこの記事で解像度を高めていきたいと思います。

そもそものエンジニア力の分解

私が考えるエンジニア力とは大きく四つあります。
①コーディング力
②リーディング力
③的確な設計力
④体系的な知識
→これら四つのうち下に行けば行くほど、「つよつよエンジニア」とそうでないエンジニアの差が激しくなると思っています。それでは、一つ一つ見ていきましょう。

①コーディング力

一つ目はコーディング力です。これは、言わずもがなかもしれませんが、要求や頭にあるイメージをコードに落とし込みアプトップする能力です。エンジニアなら誰でもここを一番に考えるのではないでしょうか?しかし、この項目は「つよつよエンジニア」とそうでないエンジニアで大きな差は生まれないと考えています。何かを実装する時、ほとんどの内容は既に同じようなことを実装している人がいます。記事がありますし、chatGPTに聞いたら最適解が返ってきます。なので、この項目はもちろんなくてはならないですが、経験や年数を積めば必然と身に付くスキルな気がしてます。

②リーディング力

二つ目はリーディング力です。これは、知らないコードや見たことないコード、リポジトリを読んで、何をしているコードなのかを把握する力です。どこまで具体的に把握できているのかとどれだけスピーディーに内容を把握できるのかが重要になってきます。私が知っているつよつよエンジニアの方はこのリーディング力が高いです。調査能力とも近しいかもしれません。
大規模なサービスやレガシーなサービスを扱っているとこのリーディング力が非常に重要になります。
なぜなら、すべての仕様を完全に理解して覚えることはできないからです。そのため、求められる能力は必然的に素早く仕様を明確に理解するリーディング力になります。
このスキルも正直、経験や年数を積めば必然と身に付くスキルな気はしています。
しかし、斜め読みのようなコードリーディングをしてばかりいるといつまでも素早く明確な仕様理解ができるコードリーディングはできません(私はついついやってしまいます)。なので、自分のスキルアップのためにも時間をとってコードリーディングをするのは重要だと思います。

的確な設計力

三つ目は的確な設計力です。この的確な設計力とは、仕様設計やDB設計、アーキテクチャ設計などを目的や実現したい内容から逆算して、いくつか設計パターンを考えそれぞれのメリット・デメリットから最適解を算出するという能力です。重要なのが、「いくつか設計パターンを考えそれぞれのメリット・デメリットから最適解を算出する」という箇所です。色々な経験を積んでいれば、ある程度目的や実現したいことに対して解を持っています。しかし、あらゆるリスクや長期の運用、スケーラビリティなど様々なことを考慮して、最適化を選べたり、提案できるのがつよつよエンジニアの方には多い印象です。
決済者や意思決定者の目線で上記の内容をまとめて提案できるつよつエンジニアはCTOやPdM、VPoEなどのキャリアに繋がるのかなと感じています。

体系的な知識

四つ目が体系的な知識です。これは、三つ目の的確な設計力を身につけるためにも必要になってくる力になるかなと思います。この体系的な知識というのは、言語の特徴やフレームワークの特徴、インフラ周りの知識や開発形態の知識、SEOやマーケティングの知識、最新の技術動向など本当に様々な知識のことを指します。実務を一年くらい経験して非常に重要だなと思うのは、この「体系的な知識」です(大企業や何か一つのことに特化するエンジニアなら少し話は違うと思います)。現在の自分は、どちらかというとジェネラルに色々な経験をさせてもらっているのでこの体系的な知識がまだまだ足りないなと感じる場面が多くあります。

つよつよエンジニアになるためにすること

さて、ざっくりつよつよエンジニアとは何かという内容で記事を書いてみて、なんとなく解像度が上がってきました。次はここから、じゃあ自分には何が足りてなくて、何をすることでつよつよエンジニアに近づけるのかを考えていきます。

①コーディング力と②リーディング力を上げる方法

このコーディング力とリーディング力を上げる方法として、一番いいのは実務で鍛えるということだと思います。実装の実務をしていく中でより最適なコードにする斜め読みをせずに詳細まで理解するリーディングを行うの2点を意識することで必然的に身に付くと思います(私はなかなかできていません)。

③的確な設計力

この的確な設計力は、なかなか自分一人では能力を向上させるのが難しいと思うのでFBをもらうのが非常に重要だと思います。目的や実現したいことを説明して、その達成方法(設計)のFB・レビューを上長やつよつよエンジニアの方にもらうのが一番成長すると考えています。
自分にはない視点や考えきれていなかったリスクなどを教えてらったときは、非常に勉強になります。
chatGPTなどの生成AIにレビューをもらうのもいいでしょう。目的やバックグラウンドをしっかりと説明することで非常に精度の高い回答をしてくれます。

④体系的な知識

この体系的な知識は、本などを用いてインプットを行うのがいいのかなと今の所考えています。
例えば、実務でDockerやコンテナの詳細な知識が必要になったら、それに対応する技術書を一冊買ってとりあえず読んでみるとなんとなく知識が身につきます。そのインプットを実務でアウトプットすることでDocker・コンテナという分野の知識が身についてきます。これを各分野で繰り返すしかないのかなと思います。インフラでも組織課題でもマーケ寄りの話でも同じ方法である程度体系的な知識が身につきます。

とりあえず、自分の考えるつよつよエンジニアと現状のギャップを整理してみました。
これが参考になる方がいる気はしませんが、自分の中での解像度が上がったので行動に移して理想とギャップの差を埋めていきたいです。

Discussion