GAFAのソフトウエア・エンジニアは、年間17万5000ドル(約2,2000万円)から182万ドル(約2.3億円)という多額の報酬を得ています。しかし、稼げるソフトウエア・エンジニアになるためには高度なプログラミングができる必要があり、誰でもなれる職種ではありません。
ただ、GAFAなどの企業にはプログラミングができなくても、エンジニアと「同等の報酬」が貰える職種が3つあります。その3つの職種について、海外YouTubeチャンネル「Logically Answered」が解説しています。
*Category:
年収が2,000万円を超える職種とは?
エンジニアと同等の報酬が貰える職種は以下の通りです。
【1】プロダクト・マネージャー
プロダクト・マネージャーは、ある製品のゴールとビジョンを設定し、適切な人材をコーディネートする役割を担っています。例えば、Instagramのプロダクトマネージャーだった場合、最初のゴールはInstagramのユーザーのニーズを定義することでしょう。次に、製品がこれらの目標を達成するためのさまざまな戦略を作成します。
いくつかの強力な戦略ができたら、プロダクト・マネージャーは、そのプランの背後にリソースを投入し、実現させるべきだとリーダーを説得します。その後、技術者と協力してビジョンが実際に正しく実行されることを確認する必要もあります。最終的には、顧客やステークホルダーのニーズをどれだけ実現できたかで評価がきまります。
プロダクト・マネージャーの仕事は、技術的に難しいことは何もありませんが、それがまたこの仕事の難しさでもあります。なぜなら、抽象的なコンセプトやビジョンから、定量的な結果を導き出さなければならないからです。
また、マネージャーという肩書きがついていますが、よほど上の役職につかない限り、直属の部下はいません。ちなみに、Google最高経営責任者であるサンダー・ピチャイも、ある時期はプロダクト・マネージャーをしていました。報酬に関しても、結果を出せば高額になる可能性は十分にあります。
ただ、この職種は非常に抽象的で幅が広いため、参入が最も難しいキャリアの1つでもあります。実際に面接を受け、面接官を納得させるのは至難の業でしょう。また、扱う製品の多くは実験的なものが多く、不況になると真っ先に切られることになります。しかし、起業家的なリーダーシップを発揮したいのであれば、この仕事は最適です。
【2】プログラム・マネージャー
プログラム・マネージャーは計画を管理する仕事を担っています。プロダクト・マネージャーがCEOだとしたら、プログラム・マネージャーはCOOといったところになります。
プログラム・マネージャーは製品が期限内に、予算内で納品されることを保証しなければなりません。例えば、プロダクト・マネージャーが1億人のユーザーを対象とした検索機能を開発する場合、バックエンドシステムをコスト効率よく機能させることがプログラム・マネージャーの仕事となります。これは一般的に、ソフトウェアエンジニアやソリューションアーキテクトと協力して、綿密な計画を作ることを意味します。
つまり、プログラム・マネージャーはプロダクト・マネージャーのビジョンを実現するために、すべての詳細をまとめることが仕事だということです。
プログラムマネージャーには、プログラム・マネージャーとテクニカル・プログラムマネージャーの2つのタイプがあります。プログラム・マネージャーの報酬も決して悪くはありません。
しかし、テクニカル・プログラム・マネージャーの方が給料が高いです。また、技術的な知識があれば就職もしやすいようです。
市場が低迷しているとき、企業が製品を削減し、プロダクト・マネージャーや通常のプログラム・マネージャーを削減するのは簡単です。しかし、重要な社内ソフトウェアを担当するテクニカル・プログラム・マネージャーを削減するのは、はるかに困難です。
通常のプログラム・マネージャーの道を選んだ場合、技術的な製品を扱うことはありません。その代わり、サプライチェーンやマーケティング、UIを扱うことになるでしょう。例えば、Appleのサプライチェーン・プログラムマネージャーであれば、アメリカ南部の小売店に十分な数のiPhoneが行き渡るようにするのが仕事です。UIプログラムマネージャーであれば、さまざまなUI機能をテストし、最も効果的な機能を提供する責任を負います。
【3】ソリューション・アーキテクト
プログラム・マネージャーやプロダクト・マネージャーのように幅広い人々にアピールする役割とは異なり、ソリューション・アーキテクトの役割は、極めて特殊なものです。ソリューション・アーキテクトは、プログラミング作業を行わないソフトウェア・エンジニアであると考えることができます。
例えば、アルゴリズムのプログラミングが必要な場合、ソフトウェア・エンジニアに依頼することになりますが、そのアルゴリズムをクラウド上に大規模に展開する必要がある場合は、クラウド・ソリューション・アーキテクトに依頼することになります。
一般的には、ソリューション・アーキテクトは、プログラミングを伴わない「マイグレーション」「デプロイメント」「データベース管理」「ネットワーク管理」「クラウドインフラ」「ITセキュリティ」のような技術的なタスクをすべて扱います。通常は、この中の1つの分野を選んで専門家になることが多いです。
このような技術的な役割を担うため、雇用の安定性はソフトウェア・エンジニアと同等かそれ以上です。特に、サイバーセキュリティのような分野を専門にする場合はそうです。ソリューション・アーキテクトの報酬は、他のテクニカルプログラムマネージャーと同程度です。
もし優秀なソリューション・アーキテクトであれば、シニア・テクニカルプログラムマネージャーの役割に簡単に切り替えられるでしょう。そこから、常務取締役、副社長、上級副社長など、さまざまな役職に就くことができます。つまり、技術的なことはやりたいけれども、必ずしもプログラミングはしたくないという人には、ソリューション・アーキテクトが最適なのです。
GAFAのようなテック系企業で最も価値があるのは、技術力のある専門的な社員です。そこにはソフトウェア・エンジニアだけではなく、上記のようなプロダクト・マネージャー、プログラム・マネージャー、ソリューション・アーキテクトなど、エンジニアの周りで働く人たちも含まれます。
これらの3つの職業は、日本では比較的ポピュラーではありません。しかし、IT化が進み、テック系企業の重要度が増している今、これらの職業の需要は今後さらに上がっていくはずです。
テック企業で重要な役割を果たしたいけれども、プログラマーになりたいわけではないという人は、今回解説した3つの選択肢もあることを覚えておくとよいでしょう。現代では、ほぼすべての企業がITソリューションを必要としており、これらの役割はすべて、そのITソリューションを提供するために不可欠なものなのです。