若いうちはよいのですが、将来的にどうしたらいいのかという不安もあります。
誰かしら参考になるロールモデルや明確なキャリアパスはありますか?
記事の内容
これはWeb業界で働くほとんど全てのエンジニアが持っている悩みです。
一部の天才を除いては、10年ぐらいの経験があったとしても同様の悩みを抱えています。
私も同じ悩みを抱えているので、参考になるかはわかりませんが、私なりに思うことを書いていきたいと思います。
数少ないロールモデルの紹介
Web業界は、せいぜい2000年ぐらいから始まったので、歴史の浅い業界です。
当時、最前線で働いていた人達でも、今は40代ぐらいでしょう。
さらに、そういったエンジニア自体が少なかったこともあり、現在のコードを書く現場で40代を見ることはあまりありません。
ほとんどの人がエンジニアを辞めていったのかもしれません。
そんな中でも残っている、何人かの有名人を紹介します。
小飼弾(48歳)
Livedoorで働いていた人で、オープンソースのコントリビュータでもあります。
今はVALUのリードエンジニアです。
まつもとゆきひろ(53歳)
Rubyを作った人です。
今はいくつかの会社で、研究職として働いています。
グリーのCTO
中学生の頃からプログラミングを始めて、過去にフレームワークのエスナを作っていた人です。
見てもらえばわかるように、圧倒的に高い能力を持った人達ばかりです。
「こんなもん、何の参考にもならねえよ」って言う声が今にも聞こえてきそうです。
普通の人は、どのようなキャリアプランを描いたらいいんでしょうか?
エンジニアのロールモデル
才能の多寡はあるにしろ、キャリアプランにはいくつかのパターンがあるので、それを紹介していきます。
尖った人材になる
これは、オープンソースのコミッターを目指す道です。
それぐらいの人材になれば、何歳になっても、どっかしらの企業が雇ってくれるはずです。
クックパッド、フルタイムRubyコミッターとして遠藤侑介氏を採用
しかし、この道に進むのは、相当の覚悟がないと難しいかもしれません。
なぜならば、レベルの高い知識を実務で使うことは少なく、一人でモクモクと勉強する必要があるからです。
よほど「好き」でないと続きません。
私の同僚に「Linux」のコントリビューターがいましたが、「C言語は金にならない」と言っていました。
趣味の領域でここまで勉強するのは、大変なことです。
また、何かを極める時に「0 → 90」にすることは簡単ですが「90 → 100」にすることは難しいものです。
これはプログラミングの世界だけでなく、格闘技やサッカーといったスポーツや囲碁や将棋といった世界でも同様です。
「90 → 100」の部分が難しいからこそ、プロの価値があるのですが、100に到達するには時間がかかるので、よく考えてから目指しましょう。
ようするに、コストパフォーマンスがよくありません。
CTOになる
どこかの会社のCTOになる道です。
これは意識して目指せば、比較的、簡単になれる道です。
求人広告で、「CTO募集」といった内容も、時々、目にします。
これは一つの選択肢として、アリだとは思いますが、いくつか知っておくべきことがあります。
知っておきたい
- 一度、CTOになってから、辞める人も多い。
- 採用や教育といった人事的なことから技術選定まで、多岐にわたって考える必要があります。
- 技術の勉強をする時間がなくなります。
- ビジネスサイドとエンジニアサイドの板挟みになりやすい。
- スキルがないと、エンジニアから尊敬されません。
CTOという肩書き自体はカッコいいのですが、難儀なことも多くあります。
CTOになるのはいいのですが、それが本当に自分が目指すべき道なのかは、よく考えましょう。
一度、なってみてから、改めて自分に合っているのか考えるというのもいいかもしれません。
企業に勤めて、マネージャー兼エンジニアとして働く
会社に勤めて、数人のエンジニアを率いながら、コードも書き続けるパターンです。
企業に勤めていて、30代ぐらいになると、このポジションになる人が多いです。
マネージメントをせずにプログラミングを書き続ける
フリーランスの人がこのパターンに当てはまります。
企業で働いている人の中にも、たまにこういった人がいます。
一般的なロールモデルとしては、最後の2つの複合パターンが多いように思えます。
つまり、ある時はプレイングマネージャーになり、ある時はプログラミングを書く人です。
次にキャリアをもう少し、深掘りしていきたいと思います。
エンジニアのキャリアパス
自分がどこを目指すかを決めたあとは、技術領域を選びましょう。
様々な技術領域
- サーバーサイドエンジニア
- フロントエンジニア
- UI/UXデザイナー
- ネットワークエンジニア
- サーバー管理のエンジニア
- Androidエンジニア
- iOSエンジニア
- ブロックチェーンエンジニア
- 機械学習エンジニア
- IoT、組み込みエンジニア
- データベースエンジニア
これぐらいの粒度で、ザックリと決めるのがいいと思います。
AWSエンジニアといった感じにピンポイントで決めると、AWSが廃れてGCPといったPaaSのサービスが流行ると、職を探す時に苦労することになります。
かつては、インフラの知識は一生モノと言われていましたが、AWSが流行り始めてからは、一生モノのはずであった知識のいくらかは使い物にならなくなりました。
IT業界は流行り廃りが激しいので、そういったことは往々にして起こります。
常に最新の技術にキャッチアップしていくようにしましょう。
ちなみに、自分の場合は以下のような感じで技術のポートフォリオを組んでいます。
上級レベル
- サーバーサイドエンジニア
中級レベル
- フロントエンジニア
- データベースエンジニア
- サーバー管理のエンジニア
初心者レベル
- ブロックチェーンエンジニア
- Androidエンジニア
このようにしておけば、食いっぱぐれる心配は少なくなります。
最後に自分のエンジニアとしての心構えを伝えます。
エンジニアとしての心構え
エンジニアとして4、5年も働いていれば、それなりにプログラミングはできるようになります。
勤めている会社では、何の問題もなく働けているはずです。
ただ、その落ち着いている現場でずっと保守作業をしていると、スキルはそこで止まります。
そして、いつの間にかスキルを若者に抜かれ、「マネージメントしかできないエンジニア?」になってしまいます。
あなたが、もし、生涯、現役のコードを書くエンジニアでいたいと思うなれば、意図的にその状況から逃げましょう。
社内で部署を異動するか、もしくは転職して環境を変えましょう。
常にやり甲斐のある仕事に携わっていれば、自ずとエンジニアとしての道は開けるはずです。
Good luck with your engineer life!
▼ エンジニアの組織論について興味がある人は、この記事を読んで下さい
-
エンジニア組織を作る時におすすめの本【2023年最新】
Googleのソフトウェアエンジニアリング ―持続可能なプログラミングを支える技術、文化、プロセス Googleのエンジニア達が培ってきたノウハウが、600ページ以上にわたって書かれた本です。 Googleの現役ソフトウェアエ ...
▼ 2030年に、エンジニアが何歳まで働いているか気になる人は、この記事を読んで下さい
-
2030年にはエンジニアは何歳まで働いているのか?【生涯現役!】
昔は、「プログラマー35歳定年説」というものがあり、35歳でコードを書くことを引退していたと聞きました。 でも、最近は35歳を過ぎてもコードを書き続ける人もいるという話も聞いています。 10年後の2030年には、日本人は何歳までコードを書き ...
▼ キャリアの作り方が気になる人は、この記事を読んで下さい
-
エンジニアの錯覚資産の作り方【エンジニア必見!】
目次1 錯覚資産とは何か2 錯覚資産を生み出すための、いくつかの方法3 錯覚資産からの恩恵 錯覚資産とは何か 別の記事を読んでいない人もいると思うので、改めて説明しますが、錯覚資産とは、「誰が見ても、わかりやすい成果」のことを指しています。 ...