プログラミング道場Top

エンジニアのロールモデルってあるの?

更新日:

私はWeb業界でエンジニアとして働いています。
若いうちはよいのですが、将来的にどうしたらいいのかという不安もあります。
なにかしら参考になるロールモデルはありますか?


これは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 for your engineer life!

 

 

-エンジニアの生き方

Copyright© プログラミング道場 , 2018 All Rights Reserved Powered by AFFINGER4.