ITエンジニアが目指すべき、真のキャリアとは

こんにちは、masakiです。

ITエンジニア
エンジニアが目指すべきキャリアはどのようなものがあるの?
結局、エンジニアはどのようなキャリアを目指すべき?

こういった疑問を持っている方向けの記事になります。

この記事を書いている私は、PG・エンジニアからweb制作会社を起業、多種多様なWeb制作業務に関わって、7年ほど経営した後、他業種でも起業し、今は金融トレーダーをしています。なので、エンジニアとしてのキャリアに悩んでいる方に少しだけ参考になるかもしれません。

エンジニアには色々なキャリアがあります。

結局、エンジニアはどのようにキャリアを選択していけばいいのでしょうか?

よく言われている、PG(プログラマー)→SE(システムエンジニア)→PM(プロジェクトマネージャー)のようにキャリアアップしていけばいいのでしょうか?

結論から言うと、『自分の資産となる物を作れる技術を学べるキャリアを歩みましょう』です。

結論から読みたい人は『おすすめのキャリア』からご覧ください。

では、詳しく解説していきます。

スポンサーリンク

キャリアの種類

昔からよくあるキャリアとキャリアアップのパターンを見てみましょう。

昔からあるキャリアの種類

・PG(プログラマー)

プログラミング言語でとにかくコードを書く職種。
全体的な設計などは、システムエンジニアや別の人が担当していることが多い。

・SE(システムエンジニア)

プログラマーよりもう少し広い分野でコードを書いたり、設計を担当したりする職種。
全体的な設計やテストを取り仕切ることが多い。

・PM(プロジェクトマネージャー)

プロジェクト全体を統括し管理する。現場で開発するというより、より上流に関与する。
開発プロジェクトに責任を持ち、成功に導くお仕事。

SEとPMの間にディレクターやプロジェクトリーダーとか細かく分かれている事もありますが、ざっくりこのように分かれています。一般的には、

PG(プログラマー)→SE(システムエンジニア)→ディレクター→PM(プロジェクトマネージャー)

と上流に登っていくのがキャリアアップと言われています。

近年出てきたキャリアの種類

近年では上記のキャリア以外にも以下のキャリアがあります。

・フロントエンドエンジニア

Webの需要とWeb技術の高度化と共に非常に需要が高くなっています。
HTMLやCSSはもちろんのこと、JavascriptやJSフレームワークを使って、ウェブサイトやアプリのフロントエンド側の設計・構築・カスタマイズを行う職種です。

・サーバーサイドエンジニア

PHP、Python、Ruby等の言語を使用しサーバー側の設計・構築・カスタマイズを行う職種です。
インフラエンジニアやデータベースエンジニアという職種も内包している事が普通で、インフラの構築設計、データベースの設計なども担当するのが普通です。

・ITコンサルタント

比較的大きな企業に、業務の改善や効率化の為にITのコンサルティングをする職業。

・フルスタックエンジニア

フロントエンドエンジニアとサーバーサイドエンジニアやインフラエンジニアを全て足したような感じ。
すべての開発を自分一人で手がけられるエンジニアです。

・フリーランスエンジニア

会社などの組織体に所属せずに、自分の力で仕事を獲得し納品までを行います。

フロント・サーバーサイドエンジニアとしてフリーランスとして独立したり。
フロント・サーバーサイドエンジニアからフルスタックエンジニアを目指したり。
キャリアパターンは様々です。

スペシャリストかマネジメントか

企業でエンジニアをしていると、スペシャリストの方向か、マネジメントの方向かで目指す方向が大きく2つに分かれます。

スペシャリストの方向を選択した場合、様々な技術を深く習得して生粋のエンジニアを目指すことになります。

ここで注意しなければならない事は、キャリアアップによって自身の収入をアップしたいのであれば、エンジニアとして狭いカテゴリーでスペシャリストを目指すべきではないということです。

例えば、インフラエンジニアとしてスペシャリストになるという目標を立てて、ハードウェアのドライバーとかまでプログラムできるようになる、とか。

PHPの言語のスペシャリストになるという目標をたてて、PHPの言語自体の開発をするとか、そういう狭いカテゴリーでスペシャリストになるのはやめたほうがいいです。

※ 誤解がないように言っておくと、もちろんそういった素晴らしいエンジニアやプログラマーのおかげで世の中の技術が開発され運用されており尊敬されるべき存在です。

スペシャリストの方向にいくならば狭いカテゴリーを選択せず、フルスタックエンジニアを目指すべきでしょう。

マネジメントの方向を選択した場合、求められるスキルがまったく異なります。

技術ではなく、設計書やマニュアルの作成といったドキュメンテーション能力や、マネジメントやコミュニケーション能力が必要になります。

マネジメントの方向を選択した場合、社内ではエンジニアというよりも、経営よりの人材になっていくことになります。

これらのキャリアの根本的問題点

上記のキャリアのどれを選んだとしても、あなたの努力しだいで市場価値の高いエンジニアになることができれば、年収一千万とか数千万くらいに到達する事が可能です。

スペシャリストの方向、マネジメントの方向、どちらを選んでも、社内で常に開発プロジェクトを統括する人材になったり、社内でエースエンジニアになったりすることでしょう。

しかしこれらのキャリアには根本的な問題点があります。

問題点
・どれだけすごい人材になろうとも、企業に務めている限り収入は頭打ちになる。
・自分の時間を売ってお金を得ている状況から変わっていない。
・結局、人の物(資産)を作っている。

これはスペシャリストの方向に進んでも、マネジメントの方向に進んでも同じです。

フルスタックエンジニアになったとしても同じです。

フリーランスになったとしても、受託制作をしているかぎり状況は同じです。

つまり、一般的にいわれているキャリアアップやキャリアパスの通りに進んでいくと、上記の問題を解決できないのです。

“人の物を作るのが好きなんです”という人は、これでよいと思います。

しかし、自分の時間を売ってお金を得ている状況(=労働収入)、人の物を作っている状況から脱したい人。ストック収入を得たり自分の資産を作りたい人は、このような一般的なキャリアをずっと歩んでいてはいけません。

どこかのタイミングで、自分の時間を売ってお金を得ている状況を止め、エンジニアとしての技術と知識を、自分の資産を作ることに使わなければなりません。

資産性のあるものとは

・あなたのエンジニアとしてのスキルや知識

あなたのエンジニアとしてのスキルや知識も、もちろん資産です。
しかしこの資産を他人の物を作るためだけに使った場合、それは労働収入になってしまいます。

・スマホアプリ

あなたが自分でスマホアプリを開発し、販売したりアプリ内課金すれば資産になります。

・WindowsやMacのソフトウェア

あなたが自分でソフトウェアを開発し販売すれば資産になります。

・Webサービス

あなたが何かのWebサービスを作って、それをマネタイズできれば資産になります。

・Blog

あなたが持っている経験や知識をBlogで公開し、マネタイズできれば資産になります。

・Webメディア・Webサイト

なにかしらのメディアやサイトを、自分で作ってマネタイズできれば資産になります。

・自分のビジネスに関わるシステム等

自分が何かの分野で起業した場合、そのビジネスで必要なシステムやWebサイトなどを自分で作れば、あなたの資産になります。

この様に、あなたのエンジニアとしてのスキルと知識で、他人の物を作ってばかりいるのではなく、自分資産になるものを作っていきましょう。

世の中で一般的に言われているキャリアは、自分の資産となるものを作れる技術を学ぶためだと割り切りましょう。

おすすめのキャリア

おすすめのキャリアカテゴリーは圧倒的にWeb系です。

『なんか・・みんなWeb系のキャリアを勧めるけど・・なんで?blogやれるから?簡単だから?』

という疑問があると思います。違います、これには理由があります

SwiftやJava言語を使ってスマホアプリ等を開発するキャリアももちろんありですが、今やWeb技術を使ってスマホのネイティブアプリを作成できるようにするフレームワークがいくもあります(React NativeNativeScript)。

デスクトップアプリも同じです。WindowsやMacやLinuxのクロスプラットフォームで動くデスクトップアプリがWeb技術で作成できます。(Electron)。

今や、スマホアプリもデスクトップアプリも全部Web技術のみで開発できるのです。

なので、キャリアはWeb系一択でOK。

以下の知識を、すべてそれなりのレベルで習得できるようにキャリアを構築しましょう。

おすすめの知識と技術

  1. Webマーケティングスキル(SEO、アクセス解析等)
  2. Webライティングスキル
  3. CMSの知識(WordPress等)
  4. HTML・CSS
  5. Adobe Photoshop、Adobe Illustrator、AdobeXDなどでデザインできるスキル
  6. デザインをHTMLにコーディングするスキル
  7. JavascriptとJSのフレームワーク1つ
  8. PHP・Python・Rubyあたりでのプログラミングのスキル
  9. 各言語でメジャーなWebアプリケーションフレームワーク
    PHPならLaravel
    RubyならRails
    PythonならDjango
  10. データベースの知識(MySQLのみでOK)
  11. Linuxの知識(UbuntuとCentOSのみでOK)
  12. Google Cloud PlatformとAmazon Web Serviceの知識と経験

全部学ぼうとすると流石に多いですね。

必要なスキルの数は、自分の目的によって変わります。
たとえば、自分のBlogやWebメディアを立ち上げたいだけなら、①〜④を学ぶだけで十分です。

仮に、上記スキルを全て習得したとすると、フリーランスで受託制作しても、企業で働いたとしても、労働収入で年収一千万円くらいは稼げると思います。

それに加え、資産性のある物を自分で作れます。
Web系のコンサルティングもできるはずです。

自分が作りたいものに合わせて、必要なスキルを選択していくのが良いかと思います。

キャリアの歩み方

では、上記知識が習得できるキャリアを考えてみましょう。

Webマーケター
Webデザイナー
Webディレクター
フロントエンドエンジニア
サーバーサイドエンジニア

この5つの職種を、自分ができそうなところから渡り歩いて行くのが良いと思います。

①Webマーケター→フロントエンドエンジニア→サーバーサイドエンジニア

技術まったくわからない初心者向け。WebマーケターからWebのいろはと広告やビジネスモデルを学んでから、技術系に行くパターン。

②フロントエンドエンジニア→サーバーサイドエンジニア→Webディレクター

それなりにHTML、CSS、Javascriptができるならこのパターン。

③デザイナー→Webディレクター→フロントエンドエンジニア→サーバーサイドエンジニア

デザイナーならこのパターンもあり。Webディレクターを挟むことでマーケティングや広告を学べる。

④サーバーサイドエンジニア→フロントエンドエンジニア→Webディレクター or Webマーケッター

ゴリゴリの技術系からフロントエンドに上がっていくパターン。

こんな感じがいいと思います。

おそらく2年〜3年くらいで、一通り全て経験できると思います。

そして、初めのキャリアをスタートしたらBlogを始めて、アウトプットすることでライティングスキルを鍛えていきましょう。

まとめ

  • ITエンジニアは一般的に言われているキャリアパスを歩むべきではない。
  • 自分の資産となるものを作れる技術を学べるキャリアを歩む。
  • キャリアカテゴリーはWeb系一択。
  • 自分の時間を売ってお金を得ている状況をやめる。
  • 人の物を作っている状態をやめる。
  • 資産性のあるものを自分で作る。
エンジニアがおすすめするプログラミングスクール3社

スポンサーリンク