ソフトウェアエンジニアとしてのキャリアパスをさっと整理する。
職位ごとの名称は企業によって異なるが、多くの企業で次のような階層構造が採用されている。
共通のキャリアパス:ジュニアエンジニアからリードエンジニアまで #
- ジュニアエンジニア
- ミドルエンジニア
- シニアエンジニア
- リードエンジニア
ソフトウェアエンジニアとしてのキャリアを歩み始めた場合、最初はジュニアエンジニアとしてスタートする。1人では自走できないエンジニアといったレベル感。他者の指示や支援を受けながら業務を遂行する。概ね1〜3年目をジュニアエンジニアとして過ごす。
ミドルエンジニアは、自走できるエンジニア。シニアエンジニアが決めた方針をもとに、自走して業務を遂行する。3〜7年目の範囲でミドルエンジニアとして過ごすことが多い。
シニアエンジニアは、豊富な経験を持ち、設計方針や技術選定を主導できるエンジニア。下位レベルのエンジニアを支援する役割も担う。早ければ5年目程度でシニアエンジニアに昇格することもある。
リードエンジニアは、正確にいうと職位ではなく役割を示すことが多い。職位はシニアエンジニアであり、役割としてリードエンジニアを担う、といった感じ。シニアエンジニアの中でもチームをまとめ、牽引する役割を担う者がリードエンジニアである。
リードエンジニアに達し、キャリアのスタートから概ね10年目くらいになったタイミングで、次の階層に進む可能性が出てくる。ただし、人によってはシニアエンジニアあるいはリードエンジニアでキャリアが終わることもある。
リードエンジニアから先は、大きく2つのキャリアパスに分岐する。テクニカルキャリアパスとマネジメントキャリアパスである。
テクニカルキャリアパス(IC: Individual Contributor) #
- スタッフエンジニア
- プリンシパルエンジニア
- ディスティングイッシュトエンジニア
- フェロー
これらのキャリアパスでは、組織のマネジメントではなく、技術的な専門性を極めることで組織に貢献する。そういった意味で「個人貢献者(IC:Individual Contributor)」とも呼ばれるキャリアパスである。
これらの階層をまとめて「スタッフプラス」と呼んだりすることもある。なお、「スタッフ = 重要」「プリンシパル = 主要」「ディスティングイッシュト = 卓越」という意味。
スタッフエンジニアとしては、特定のチームや部門における技術的な方針策定や、困難な課題の解決などを担う。フェローになると全社的なロードマップ、技術戦略の策定など企業全体に影響を与える技術的意思決定の役割を担う。
要するにテクニカルキャリアパスでは、技術的な影響力のスケールがキャリアの進展に伴って大きくなっていくということである。
マネジメントキャリアパス(Manager) #
- マネジャー
- シニアマネジャー
- ディレクター
- シニアディレクター
- VP(バイスプレジデント)、CTO
これらのキャリアパスでは、エンジニア組織のマネジメントを主に担当し、チームや組織の目標達成に貢献する。組織運営、ピープルマネジメントやプロジェクトマネジメントの能力が求められる。
マネジャーは日本において課長に相当する。シニアマネジャーは部長、ディレクターは部門長・事業部長、シニアディレクターは本部長、VP は事業部長であり役員クラスである。
要するにマネジメントキャリアパスでは、マネジメント対象の組織のスケールがキャリアの進展に伴って大きくなっていくということである。