Javaは10年以上前に登場した言語ですが、現時点でもJavaは世界的に見ても有名な言語のひとつです。他の言語のエンジニアと比べるとJavaエンジニアに対する求人は多い方ですが、「今後も今と同じように仕事があるか不安だな、、、」と思う方や「今よりも、もっとやりがいがあって、年収が高い仕事を得たい!」と思う方は多いことでしょう。
本記事では、そのような方のために、Javaエンジニアのキャリアパスについて考えてみたいと思います。
T型のキャリアとI型のキャリア
Javaエンジニアのみなさんは、自分自身のプログラミングスキルに自信はあるでしょうか?「やっとJavaが書けるようになったかな」と感じている若手の方、「デザインパターンもある程度は使いこなせる」という中堅の方も一緒に、T型とI型というキーワードをもとにしてキャリアについて見ていきましょう。
この記事では、T型キャリアをプロジェクトマネージャーやアプリケーション・データベース設計などの上流工程を担い、顧客に対してチームで価値を見出すことができるマネージャーをゴールイメージとしたキャリア設計を指しています。
一方で、I型キャリアは、アプリケーションの品質を高く保ち、保守・運用が容易なコーディング、テスト設計などに精通したスペシャリストをゴールイメージとしたキャリア設計を指しています。
参照:文部科学省「第1-1-12図 I型,T型,π型人材のイメージ」
Javaエンジニアのキャリア・デザイン
あなたの志向は、T型それともI型のどちらでしょうか。
キャリアについて考える上で、ざっくりと方向性を決めておくことは大切なことです。この項目では、みなさんが方向性を考える上で参考になりそうな質問をいくつか挙げてみます。いずれのキャリアタイプもYesの数を参考にしてみてください。
T型キャリア
- 技術よりもチームで成果をあげるほうが好きだ
- プログラミングよりも設計やサービス全体を考えるのが好きだ
- 部門間やチームメンバー内の調整がどちらかといえば得意だ
I型キャリア
- ミーティングや調整よりもずっとコードを書いていたい
- 使用しているライブラリは中身のコードまで気になってしまう方だ
- Java8などのバージョンアップの時は、いち早く内容をチェックする方だ
いかがでしたか?もうある程度、自分自身が進む方向性が見えている方、まだ方向性が漠然としている方もいると思います。次の項では、キャリアをよりイメージしやすいように、T型とI型のキャリアについてもう少し具体的に見てみましょう。
上流工程を担う技術に精通したプロジェクトマネージャー 〜 T型キャリア 〜
プロジェクトマネージャーの責務は、生産管理の三要素であるアプリケーションの品質(Quality)、費用(Cost)、そして納期(Deliver)を顧客の要望に合わせて(もしくはそれ以上で)製品を納品することです。
一般的な業務内容
- 顧客の要望をヒアリングする
- 要望を設計に落とし込み、スケジューリングする
必要なスキル
- 顧客の業務理解、ITの幅広い知識
- マネジメントスキル
やりがい
- 顧客の希望に沿ったアプリケーションを納品して、顧客から感謝される
- 少ないリソースなど厳しい環境下でプロジェクトを成功させる達成感
報酬
- 平均年収:537.6万円
技術をとことん追求するスペシャリスト 〜 I型キャリア 〜
スペシャリストは、Javaの言語仕様やデザインパターンに精通しており、他のメンバーよりも短い時間で、高い品質でメンテナンスしやすいコーディングができる人です。
一般的な業務内容
- アプリケーションのコーディングおよびテスト
- (業務内容によっては)アプリケーションおよびデータベース設計
必要なスキル
- Javaの言語仕様、テスト等の深い知識
- 処理速度など品質にかかわる深い知識
やりがい
- レビューなどを通して他のメンバーから信頼される
- 複雑なアプリケーションをシンプルに実装して動かす達成感
報酬
- 平均年収:419.3万円
マネージャー(T型)とスペシャリスト(I型)のメリット・デメリット
前の項目では、マネージャーとスペシャリストの業務内容や必要なスキル、やりがい、報酬という項目をそれぞれ見ていきました。それでは、マネージャーとスペシャリストには、どのようなメリット・デメリットがあるでしょうか。
マネージャー
メリット
- 顧客に対してどのようなアプリケーションを提供するかを提案できる
スペシャリストよりも年収が高いケースが多い
デメリット
- プログラミングする時間がとれないケースが多い
スペシャリスト
メリット
- コーディングする時間を確保しやすい
- 技術を追求しやすい
デメリット
- マネージャーよりも年収が低いケースが多い
上記の通り、マネージャーの方が年収という観点では有利に見えますが、FacebookやGoogleなどスペシャリストに対して非常に良い待遇を出していたりしていることから、今後はスペシャリストの方が年収も高くなる可能性もあります。
キャリアはエンジニアだけではない
ここまで読み進めてくださった方の中にも「Javaエンジニアも好きだけど、他のことにもチャレンジしたい」と考えている方もいるのではないでしょうか。
エンジニアとしての経験から、論理的思考や問題解決、コーディングのスキルに長けているはずです。そのようなスキルを活かして以下のような職種にチャレンジするという選択肢もあるのではないでしょうか。
デザイナー
PhotoShopなどのツールのキャッチアップが必要ですが、コーディングを意識したデザインなどエンジニアの特性が活かせる可能性があります。エンジニアから見ても、コーディングがわかるデザイナーは頼もしいですよね。
セールス
セールスも顧客の課題を解決すると考えると本質はエンジニアと同じです。問題解決能力を活かして顧客の課題に対してアプリケーションを提案することができるかもしれません。
もしエンジニア以外のキャリアを模索しているのなら、上記のような職種も視野に入れてみてはどうでしょうか。
キャリアの方向性だけを決めて、流れに身をまかせる
〜 キャリア・ドリフト 〜
ITの世界は、ドックイヤーと言われるくらい技術の移り変わりが早いです。そのような環境の中で、数十年先を見通してキャリアを考えるというと難しいですよね。
前の項目までは、キャリアパスを考える上で参考になりそうなことについて触れてきました。この項目では、キャリアを考えること(キャリア・デザイン)とは少し異なる考え方(キャリア・ドラフト)について簡単に紹介します。
次のような点がポイントです。
- キャリアについて無理に細かい計画を立てる必要はない
- ただし、キャリアの方向性(T型かI型か)を持つことが重要
目的と詳細な計画を持って旅をする(キャリア・デザイン)と、目的だけ決めて、旅先で出会った人に勧められた観光地などに寄り道しながら旅をする(キャリア・ドリフト)という例えが分かりやすいかもしれませんね。
この記事では主にT型とI型という切り口でJavaエンジニアのキャリアパスを見てきましたが、キャリアについて考える機会になったでしょうか。
定期的にJavaエンジニアとしてのキャリアを見つめ直しながら、いろんな機会に身をゆだねるという余裕を持ちながらキャリアを歩んでみるといいかもしれませんね。
フリーランスになるために必要な知識やスキルアップの方法等、様々なお役立ち情報を発信していきます。
(リモートワーク案件に強いフリーランスエージェント「クラウドワークス テック」を運営)