最近よく「未経験なんですがプログラマーかインフラエンジニアのどちらを目指せばいいですか?」みたいな質問をよく受けるので、今回は元クラウドインフラ系エンジニアをやっていた僕が、それぞれの違いについて徹底的に解説します。
- プログラマーとインフラエンジニアの違い
- 両者における仕事内容や収入面の違い
- 何を重視してキャリアを選べばいいのか
どちらのキャリアを選ぶべきか迷っている方の参考になればと思います。
やまもとりゅうけん(@ryukke)
WEB/ITコンサルサービスを提供するワンダフルワイフ株式会社代表取締役。
新卒で東証一部上場企業にプログラマーとして就職したのち、27歳でフリーランスエンジニアとして独立し、サイバーエージェント大阪支店等に勤務。
現在は日本最大規模の複業コミュニティ「人生逃げ切りサロン」を開設し、3年間で参加者5,500名超まで拡大させる。
目次
インフラエンジニアとプログラマーにおける業務内容の違い
「プログラマーとインフラエンジニアの境目は無くなってきている説」とも言われてますが、それはある程度スキルが成熟してきたらの話。
両者の違い
プログラマーは、ひたすら言語の仕様を覚えて、定型文を組み合わせてコードを書いていくことから入りますが、インフラエンジニアは冷凍庫みたいなデータセンターに足を運び、サーバやネットワーク機器をメンテナンスするといった物理作業から入ることが多いです。
一般的には、プログラマーはロジカルな思考能力が要求される一方、インフラエンジニアはシステムの根幹に関わる部分を扱うため、論理的思考力以上に正確性が要求されます。
最終的には両者の知見が必要となる
ただ、これは先ほども述べた通り、入り口の話であって、プログラマーもインフラエンジニアもいずれは両者の分野に関する知見を身につけていく必要があります。
「Infrastructure as Code」という概念が浸透し、サーバやネットワークといったインフラの設計や構築をコードで管理するのが一般的になりました。いまや、AWSやGCPといったクラウドインフラを扱う場合、インフラエンジニアにもコードを書く能力が求められます。
逆に、プログラマーからしても、これまではある意味無関心でいられたインフラレイヤーが可視化された分、避けては通りにくくなりました。やはりインフラがわかっているプログラマーの方が、業務の理解が圧倒的に早いですしね。
ただ、インフラエンジニアがプログラムを理解するより、プログラマーがインフラを理解する方がハードルは低くなりがちかなと。
POINT最終的にはプログラムもインフラもわかるのが最強
収入面におけるプログラマーとインフラエンジニアの違い
収入に関しては、扱う技術や案件の規模や予算によって全く変わるので、一概には言えないですが、今はプロジェクトマネージャー案件などを除けば、「フリーランスのWebプログラマー」が最も稼ぎやすいでしょう。
特に東京なら、報酬月100万円以上に到達することは少なくないですし、20代でも年収1000万円以上は容易に狙えるでしょう。東京はITの世界では非常にバブリーな土地で、その他地方と比べると、10万も20万も単価が変わったりします。
僕も東京に住んでた頃は、大阪にUターンした今より1割増しで稼げてたなあ。。
インフラでもフリーランスであれば、クラウドインフラを扱えたり、大規模なネットワーク構築案件に関わる場合は単価が上がる傾向にありますが、それでも月100万円以上の案件というのはあまり聞きません。80万円〜90万円くらいが限界かと思います。
いま未経験者が短期間で収入を爆増させたいなら、プログラマーになる方が早いでしょう。まずは、未経験採用のハードルが低い派遣社員などからスタートし、JAVAやPHPといった主要な言語を2年ほど実地で学んだら独立、というプランで問題ありません。
ただ、これは単に現時点での需要と供給のバランスの問題であって、Webプログラマーの仕事が大変だからお金が稼げるというわけではないですからね。今はたまたまWeb系案件の需要が高騰しているからWebエンジニアの単価が上がっているだけです。
なお、インフラエンジニアの詳しい働き方や将来性についてはこちらでも解説しています▼
POINT今はWebプログラマーが稼げる
労働時間におけるプログラマーとインフラエンジニアの違い
労働時間に関しても案件によってバラバラなんですが、もっと言えば、人によってもバラバラです。
能力が高くさっさと仕事を終わらせられる人とか、能力は高くないけど「定時で帰るキャラ」を定着させられる人なんかは、労働時間が短くなりますが、そのどちらでもない人は、大体月に20時間以上は残業してしまうんじゃないですかね。
どれだけ生産計画がまともで、稼働の安定している現場でも、何故かダラダラと残業する人は必ずいます。不思議。
ただし、インフラエンジニアで保守運用案件でかつ、責任ある立場にならなければ、かなり労働時間は短くできると思います。正社員であれば、時々夜間対応がある現場もありますが、フリーランスならそれも大体断れます。というか、外部の人間にそこまでやらせることはあまりない。
ちなみに、僕はかれこれ、派遣社員だった頃から数えると6年近くインフラエンジニアやってますが、月に5時間以上残業したことがありません。ワークライフバランス的なやつ最高。
なお、インフラエンジニアといっても特に「クラウド」をやるのがおすすめです。クラウドを勉強するべき理由はこちらで話しています▼
POINTとことん残業したくないならインフラ(とくに保守運用)
何を重視するかの違い
結局、プログラマーもインフラエンジニアもどっちが優れてるとかではなくて、本人が何を重視するかによって選ぶべきものは変わるということです。
論理パズルを解くのを楽しめる人はプログラマーになればいいし、パズルは苦手でも機械を触ると興奮する属性をお持ちの方なんかはインフラ向いてるんじゃないですかね。まあまあ暴論かもしれないけど、遠からずです。
収入や労働時間を条件とするならば、「金や!金が欲しいんや!」という方は、Webプログラマーを狙えばいいし、「金はそこそこでええから休み欲しいわ!」という方はインフラエンジニアで保守運用案件を狙えばいいと思います。
もちろん、これらはいち現場エンジニアの肌感なので、Webプログラマーでも異常に報酬の低い案件もあるし、インフラエンジニアでも激烈炎上案件に巡り合うこともあります。微妙な案件は極力避けたい方はこちらを参考にしてみてください。
僕の場合は、エンジニア業単体で年収800万円くらい取れたら満足で、ブログ書いたり、子供と遊ぶ時間を維持したいので、インフラエンジニアでずっとやってくつもりです。プログラマー転身は考えておりません。コードは趣味で書きます。
さいごに
いま、エンジニア転職の難易度は非常に下がってます。なぜなら、プログラミングスクールやエージェントの台頭により、案件とのマッチングが最適化されつつあるから。
プログラマーにしろインフラエンジニアにしろ、最適な案件に巡り会えるかどうかはこうしたスクールやエージェントの就職サポート次第だったりします。
例えばこちらで紹介している就職特化型のプログラミングスクールであれば、最短最速で就職できるので、ぜひあなたに合ったスクールを選んでみてくださいね。