ポエム

エンジニアの種類別マトリックス

少し前に、エンジニアの最初のキャリアとしての選択は、最終的には何を選んでも大差ないという記事を書きました。

でも、これは既にある程度キャリアを気づいた立場から、振り返ったらそうだったに過ぎないことでしょと思われそうです。これからキャリアを構築していく当事者からしたら、そんな過去の分析でなく、現在の判断材料が知りたいということだと思います。

というわけで、今現在のエンジニアの種類別のマトリクスを作ってみました。

とりあえず、やれるところからやり始めたら良くて、本人次第でどうとでもなるという私の考えは変わりません。ただスタート地点によって進みやすい方向が確立されるのも確かです。今回の内容が少しでも参考になればと思います。

エンジニア種類別のマトリクス

今回、考えて見たマトリクスはこちらになります。

注意

逃げ口上となってしまいますが、これは私個人の主観によるものです。当然、私自身がすべての職種を経験したわけではありませんので、各エンジニアの当事者からしたら、別の考えもあるでしょう。人によっては様々な意見があると思いますので、一意見として捉えていただければと思います。

また2022年現在の主要なエンジニアを入れたつもりですが、エンジニアの種類すべてをカバーしているわけではありません。

エンジニアとなっていますが、コンサルトデザイナーも入れています。エンジニアとの結びつきが強いですし、エンジニアからこれらの職種にキャリアチェンジする人もいるので、入れました。

解説 縦軸と横軸

横軸は、目に見える/見えないの度合いとしました。エンジニアの成果物は、形となってユーザや消費者目に見えるものと、そうでないものがあります。今回はエンジニアの種類の特性をできるだけ表現したかったので、この評価軸を採用しました。

目に見える/見えないと、泥臭い/華やかさは必ずしも一致しません。泥臭さの定義も人によって違うでしょう。ただエンジニアは決してオシャレで華やかな仕事ではないので、こういった表現も記載しました。

縦軸にはビジネス度との相関としました。上に行くほど、よりビジネスよりです。ビジネスプロセスや業界知識が求められる領域です。このビジネス度は、技術力とは別ベクトルなので混同しないで下さい。ビジネス度が低いほど、技術力が求められるという分けではありません。

解説 バックエンドエンジニアとフロントエンジニアのビジネス度

ここは人によってかなり意見が分かれると思います。バックエンドはビジネスプロセスを実装するから、フロントよりはビジネス度高いでしょという意見もあるかと思います。

ただフロントもユースケースとがっつり関わりますし、マーケティングの要素も入ってきたりユーザ分析とも関連してくるので、フロントの方が少しビジネス度が高いと判断しました。

解説 アプリケーションエンジニアとは

アプリケーションエンジニアというワード自体が少し昔のもので、このワードだけだととても範囲が広いです。ビジネスアプリのUI部分の実装する人だったり、基幹系のサーバサイドを実装したりする人も、一括りでアプリケーションエンジニアと呼称したりします。

業務知識も必要とするのでビジネス度が比較的高く、ユーザが直接使う成果物もあるのでこの位置としました。

解説 データエンジニアとデータアナリストとデータサイエンティスト

データエンジニアはデータアナリストやデータサイエンティストが使うデータ基盤を作るエンジニアです。インフラよりの業務になります。

データサイエンティストはデータ基盤にあるデータを駆使して、データを調査したりモデルを構築したりする人です。コンピューターサイエンスの他、数学や統計学の知識が求められます。

データアナリストはBIツールを使う人です。モデルを理解しているわけではありませんが、ビジネスプロセスに詳しくビジネス課題の答えを出す人です。

エンジニアの種類別の相関関係

このマトリクスはエンジニアの各種類の相関は表現し切れていません。距離が近いからといって、職種チェンジしやすいわけではありませんし、離れているからと言って相関がないわけではありません。エンジニアの種類別の相関も表現したかったのですが、1つの図では表現しきれなかったので諦めました。

たとえば、SEとアプリケーションエンジニアは距離がありますが、相関はかなりあります。互いに職種チェンジする壁はほとんどありません。逆にバックエンドエンジニアとデータサイエンティストは近くに位置していますが、職種は全然別のものです。

しかし、例外はあるもののキャリの結びつきは基本的に近くにあるほうが強いとみていいかと思います。例えば、ネットワークエンジニアとiOS/Androidエンジニアは同じエンジニアではありますが対局に位置しています。これは本当に相関はほとんどありません。ネットワークエンジニアがiOS/Androidエンジニアになろうとしたら、別ベクトルの内容をほぼゼロから勉強する必要があり、キャリア構築もリセットされると見なしていいでしょう。その逆もしかりです。

なので、自分がだいたいどの辺に位置するのか確認して、そこの中心にキャリアを広げていくのがいいかと思います。ただし、繰り返しになりますが、例外もありますので注意してください。

私で言うと、自分の立ち位置は以下の様になります。ただメインフレームはほとんどわかりません。メインフレームはほぼ他のエンジニアとは独立した領域なので、これは例外になります。

最後に キャリアのロールモデルは存在しない時代

昔は(今も?)、メンターとかキャリアのロールモデルというワードがよく言われていました。

エンジニアでもある程度のキャリアマップは確立されていて、

プログラマ -> システムエンジニア -> コンサル or 事業会社のマネージャーなど

というキャリアルートが一般的でした。

しかし、今の時代は違います。変化が激しくて、エンジニアに求められる内容もコロコロ変わります。前例となるキャリアのロールモデルは存在しません。メンターもマインド寄りのコーチング的なものならいいのですが、キャリアにフォーカスしたメンターというものはエンジニアには存在しえないでしょう。

キャリア構築に正解はありません。将来どんなエンジニアが必要とされるかは、誰にもわかりません。自分のキャリアは時代の変化に適用しながら、自分で考えながら構築していく必要があります。