okuzawatsの日記

Android / Kotlin / GitHub Actions Enthusiast 🤖

ソフトウェアエンジニアのキャリアパス

目次

ソフトウェアエンジニアには一般にどのようなキャリアパスがあるのか、ということを考えます。組織によっても異なるでしょうが、一般的には以下のようにまとめられそうです(Will (2021), James (2022) より筆者作成) 。“L"はレベル、“IC"はIndividual Contributorです。

注意点です。

ジュニアエンジニア〜エンジニア

ソフトウェアエンジニアとしての仕事は、ジュニアエンジニアから始まります。組織によって定義は異なるでしょうが、仕事を進めるために手助けが必要な段階です。手助けが不要になり、ひとりで仕事が進められるようになれば、「ジュニア」が外れて「エンジニア」と呼ばれることになるでしょう。

このレベルには、マネジメントトラックは存在しません。

シニアエンジニア

エンジニアからレベルが上がって、ICトラックに進んだ場合はシニアエンジニアと呼ばれるようになります。しっかりとした知識を持ち、周囲から頼りにされるようになるレベルです。ジュニアエンジニアやエンジニアにアドバイスができたり、プロジェクトの主力メンバーだったりするでしょう。

スタッフエンジニア

シニアエンジニアからさらにレベルが上がると、スタッフエンジニアと呼ばれるようになります。スタッフエンジニア以上のソフトウェアエンジニアには、以下の4つの類型があります(Will (2021) )。より困難で、答えのない問題に取り組んでいくことになるでしょう。

プリンシパルエンジニア

ICとして極まった人です。

エンジニアリングマネージャー

エンジニアからレベルが上がって、マネジメントトラックに進んだ場合はエンジニアリングマネージャーと呼ばれるようになります。レベル感としてはシニアエンジニアと同じL3です。

エンジニアリングディレクター

エンジニアリングマネージャーからレベルが上がるとエンジニアリングディレクターと呼ばれるようになります。レベル感としてはスタッフエンジニア相当のL4です。

エンジニアリング担当VP(Vice President)

エンジニアリングディレクターからさらにレベルが上がるとエンジニアリング担当VPと呼ばれるようになります。VPoEなどでしょうか。レベル感としてはスタッフエンジニアやプリンシパルエンジニアに相当するL5〜L6です。

CTO

マネジメントトラックを極めるとCTOと呼ばれるようになるようです。レベルはL7になるので、ソフトウェアエンジニアの最上位職種と言えるかもしれません。

References

  1. Will Larson, (2021), Staff Engineer Leadership beyond the management track
  2. James Stanier, (2022), エンジニアリングマネージャーのしごと チームが必要とするマネージャーになる方法, オライリー・ジャパン
  3. Camille Fournier, (2018), エンジニアのためのマネジメントキャリアパス テックリードからCTOまでマネジメントスキル向上ガイド, オライリー・ジャパン

#Career

書いている人 😎

profile

茨城県つくば市在住のモバイルアプリケーションアーキテクト(Androidが得意です)。モバイルアプリのアーキテクチャ、自動テスト、CI/CDに興味があります。いわゆる「レガシーコード」のリファクタリング・リアーキテクチャが好きです。

👉 もっと詳しく

著書 ✍

Android 依存性注入 ヒッチハイク・ガイド🧳

Androidアプリでの依存性注入(Dependency Injection)に入門するためのガイダンスです。依存性注入の概念やメリットを理解し、Dagger Hiltを用いてAndroidアプリに適用する方法を解説しています。

販売サイトへ🏃

ソフトウェアデザイン 2023年6月号📚

特集「クリーンアーキテクチャとは何か?」の第5章「モバイルアプリ開発における実践」を執筆しました。

販売サイトへ🏃

Android クリーンアーキテクチャ ヒッチハイク・ガイド🧳

Androidアプリでのクリーンアーキテクチャに入門するためのガイダンスです。クリーンアーキテクチャの概念を理解し、Androidアプリに適用する方法を解説しています。

販売サイトへ🏃

Android ユニットテスト ヒッチハイク・ガイド🧳

Androidアプリのユニットテストに入門するためのガイダンスです。初学者が混乱せずにAndroidアプリのユニットテストを書き始めることができる、ということを目的としています。

販売サイトへ🏃

Android MVVMアーキテクチャ入門🛠

Androidアプリ開発の初学者に向けた、MVVM(Model-View-ViewModel)アーキテクチャの入門書を書きました。初学者の方を確実にネクストレベルに引き上げる技術書です。NextPublishingより出版されています。

販売サイトへ🏃

関連記事 👀

お問い合わせ✉️

Androidアプリ開発、特にレガシープロジェクトに関するご相談はこちらまで📨

お名前

メールアドレス

お問い合わせ内容