転職

プログラマとシステムエンジニア(SE)の違いは? 仕事内容や給与を徹底解説!

こんにちは、ニュージーランドで働くプログラマのはっしー(@hassy_nz)です。

  • IT業界への就職を考えているんだけど、どうやらシステムエンジニアとプログラマって別の職業らしい。どう違うの?
  • システムエンジニアとプログラマ、自分はどちらを目指すべきなのか知りたい。
  • プログラマは安月給で激務ってイメージがあるけどほんと?

そんな疑問に、システムエンジニアとプログラマ、両方の仕事を経験した僕がお答えします。

仕事内容はどう違う?

IT業界に詳しくない人から見ると、プログラマとシステムエンジニア(SE)は似たような仕事に思えるでしょう。
しかし、実際の仕事内容は大きく異なります。
ここを理解せず、なんとなくでIT業界に就職してしまうと「やりたい仕事じゃなかった……」と後悔することに。
それぞれの仕事がどのように違うのか、しっかり把握しておきましょう!

プログラマは「プログラムをつくる人」

プログラマは、その名の通り「プログラムをつくる人」です。
主に一日中パソコンの前にはりついて、キーボードをカタカタ叩いて画面に文字を打ち込んでいく。
一般的なIT業界そのもののイメージと言ってよいでしょう。

参考までに、プログラマとして働いている僕のいまのスケジュールを紹介しておきます。

8:30 出勤、業務開始
9:15 – 9:30 ミーティング。昨日の実績と今日の作業を報告
9:30 – 12:00 プログラミング
12:00 – 13:00 昼食
13:00 – 17:00 プログラミング

ほぼ毎日こんな感じで、プログラミングしかしてません。
役割がもっと大きくなってリーダークラスになるとミーティングも増えますが、平社員のプログラマならこんな感じですね。

SEは会議、設計、管理が主な仕事

一方、SEの仕事はプログラマと大きく異なり、会議や書類作成、管理業務が主な仕事となります。

たとえば、会議では次のような課題を話し合うことが多いです。

  • 今、お客さんのビジネスではどのようなデータを扱っているのか?
  • 仕事上でどのような課題があるのか?
  • それをシステムで解決するにはどうすればよいのか?

などなど……つまり、「どんなシステムを作るのか」に関わる話し合いを多く行います。

こうした話し合いの内容を元に「設計書」と呼ばれる資料を作っていきます。
SEを多く抱える会社にはプログラマがあまりいません。
たいてい、プログラミングは下請けの会社に発注してしまいます。
そのため、外部の業者に「こんなプログラムを作ってね」と発注するための資料 = 設計書が必要となるんです。
設計書はプログラマ向けだけでなく、お客さん向けに作成することもあります。

さらに、開発が予定通り進んでいるかを確認するプロジェクトマネジメントも大事な仕事です。
SEは出世するにつれてマネジメント能力を身につけ、ゆくゆくはプロジェクトマネージャーとしてひとり立ちするキャリアパスが一般的となっています。

ちなみに僕がシステムエンジニアをやっていたときのスケジュールはこんな感じでした。
(ほんとはかなり残業やってましたが、プログラマとの比較のために定時内のみのスケジュールにしてます)

9:00 出勤
9:00 – 10:30 会議の資料準備
10:30 – 11:30 お客さんと会議
11:30 – 12:00 議事録作成
12:00 – 13:00 昼食
13:00 – 14:00 新規機能の打ち合わせ
14:00 – 16:00 打ち合わせ内容をもとに設計書作成
16:00 – 17:00 当日の作業進捗確認、資料更新

どうです、会議とペーパーワークばっかりでしょう笑
プログラマとの違いがおわかりいただけましたか?

プログラマとSEの給与の違いは?

あらゆる仕事の平均給与が網羅されているサイト「給料BANK」を参照してみましょう。
これによると、SEの平均月給は41万円、プログラマの平均月給は34万円となっています。

SEのほうがプログラマより7万円も月収が高いとのことです。
どちらもIT業界の仕事なのに、なぜこんなに給与が違うのでしょうか?

「ITゼネコン」がプログラマの給料を低くしている

システムエンジニアがプログラマよりも高給取りになる背景には、「ITゼネコン」と呼ばれる業界構造が大きく関係しています。
これは巨大システムの開発体制を建築業界(ゼネコン)にたとえた表現です。
まずはこちらの図を見てください。

f:id:imo_jo_chu:20180529143220j:plain

IT業界の中でもシステムインテグレータ(SIer)と呼ばれる業態では、多くの場合このような開発体制を取っています。

まず、発注者(役所、銀行、大手企業など)が一次請けの大手ベンダーに多額の発注をかけます。
この一次請けにはプログラマはほとんどいません。
そのかわりにシステムエンジニアがたくさんおり、設計書を作ったりスケジュールを引いたりといった仕事を主にしています。
これだけではプログラムを組める人がいないので、大手ベンダーは二次請けの会社にプログラミング作業を発注することになります。
さらに人手が足りない場合、三次請け、四次請け……と、開発規模が大きければ大きいほど、ピラミッド構造は深くなっていくんです。

社員のもらえるお給料は、ピラミッド構造の上に行くほど多くなります。
大手ベンダーに勤めるシステムエンジニアは月収もボーナスも多く、残業代もきちんと出る場合が多いです。
一方、下請けのプログラマのお給料はぐっと少なくなり、下手するとサービス残業を強いられる場合すらあります。

システムエンジニアのほうがプログラマより高給取りなのは、このピラミッド構造のおかげなのです。

働き方次第ではプログラマもがっつり稼げる

ではプログラマはどこにいっても安月給のままなのか? というと、決してそんなことはありません。
むしろ、そのへんのシステムエンジニアより稼いでいるプログラマはたくさんいます。

稼げるプログラマになるためには、働き方選びがなによりも重要。
先に説明したITゼネコンの構造に巻きこまれては大変ですので、就職する会社をしっかり見極めましょう。

自社でサービスを開発している会社に就職するのがもっともオススメです。
わかりやすくいうと Google や Facebook のような会社ですね。
自分たちでサービスを作って運用している企業は、ITゼネコンのようなお金を中抜きされる構造に巻きこまれません。
そのため給与も高く、福利厚生も充実する傾向にあります。
ちなみに僕もこうした自社サービスの企業に勤めており、平均よりかなり高いお給料を得ながら残業ゼロ生活を満喫してます。

ほかには、お客さんから直接発注をもらっている受託開発企業が狙い目です。
こちらも同様にITゼネコンの構造の外にいるため、プログラマでも高いお給料を稼げますよ。
クライアントの業界によっては、金融や通販サイト、ホテルの予約など様々な種類のシステム構築を経験できるので、自社サービスの会社よりも幅広い経験を積みやすいというメリットがあります。

また将来的にはフリーランスになるという選択肢もあります。
プログラマなら自力でWebサービスやスマホアプリを開発する技術も身につきますので、スキルを活かして独立するのは比較的容易です。
うまく仕事を取ってこれれば、月収50万円〜100万円を目指すこともできるでしょう。

技術と働き方によっては、プログラマのほうが稼げるかもしれませんね。

プログラマとシステムエンジニア、どちらを目指すべき?

プログラミングが好きという人は必ずプログラマを目指してください。
自社開発、または直接受注の受託開発企業に就職すれば、毎日楽しくプログラミングしてお給料をもらえる可能性がグッと高くなります。
うっかりシステムエンジニアになってしまうと、プログラミングの仕事は入社1〜2年で強制的に卒業させられ、打ち合わせやマネジメント業務に駆り出されるので注意しましょう。

お客さんとの打ち合わせ、スケジュール管理などシステム開発の幅広い工程を経験したいという人にはシステムエンジニアが向いています。
設計から実装までひととおりの仕事を経験したのち、システムエンジニアとしてのキャリアを突き詰めることもプログラマに転向することも可能です。
なんとなくIT業界に興味があるけど、自分ではどの工程が向いているかまだわからないという人は、とりあえずシステムエンジニアになってみるのも良いでしょう。

プログラマになりたい人がやるべきこと

世の中には「未経験歓迎!」とうたってプログラマを募集している会社が多くあります。
しかし、そういった会社はITゼネコンの底辺に位置する可能性が高いです。
高い技術よりも人数を集めることに重きをおいて、エンジニアを何人いくらで売り飛ばす企業かもしれません。

プログラマとして優良企業に就職したいならば、最低限のプログラミングの基礎技術は身につけておいてください。
お給料が高く残業も少ないような職場には、当然応募者が殺到します。
その中で競争を勝ち抜き内定を獲得したいなら、少しでも技術レベルが高いことをアピールする必要がありますよね?

最近はプログラミングスクールが充実しているので、誰でも手軽に開発技術を学べる環境が整っています。
場所を問わずオンラインで勉強できる「CodeCamp」などを利用すれば、3ヶ月でスマホアプリも作れるようになりますよ。
CodeCamp の無料体験レッスンを受けてみる

自力でスマホアプリやウェブサービスが作れるだけの技術力があれば、新卒でも中途でもかなりの企業がオファーを出してくれるでしょう。

よりよい環境でプログラマとして働きたい人のためには「残業ゼロのプログラマになる方法」も別記事で詳しく解説していますよ。

あわせて読みたい
【転職】だれでも残業なしのプログラマになれる3ステップ! 長時間労働から抜け出そうこんにちは、ニュージーランドで働くプログラマのはっしー(@hassy_nz)です。 プログラマとして働いているが、労働時間...

システムエンジニアになりたい人がやるべきこと

システムエンジニアを目指すなら、最低でも基本情報技術者の資格を取っておきましょう。
「基本情報技術者」は経済産業省による国家資格で、「高度 IT人材となるために必要な基本的知識・技能をもち,実践的な活用能力を身に付けた者」を認定するために設けられています。

試験の問題はプログラミングだけでなく、コンピュータの基本的な構造、ネットワーク、セキュリティなど幅広い分野から出題されるので、合格すればITについての基本的な知識が一通り身につきます。
基本情報技術者試験の勉強が「おもしろいな」「もっとやりたいな」と感じられれば、たとえ大学の学部が文系だったり、プログラミングの経験がまったく無かったりしても、エンジニアとしての適性があるといえるでしょう。
逆に、どうしても勉強に興味が持てないという場合は別の業界を目指したほうがよいと思います。

基本情報技術者は決して難しい試験ではないので、独学でじゅうぶん合格を狙えます。
まずは、なるべく解説の詳しいテキスト1冊と過去問を揃えましょう。
1日1時間〜2時間の勉強を続ければ、3ヶ月〜6ヶ月で合格ラインを超えられますよ。

ABOUT ME
はっしー
ニュージーランドで働くプログラマ。 日本のIT企業で月100時間超えの残業を経験して過労死しかけたことをきっかけに国外脱出、毎日定時帰りの生活と年収アップを実現させる。脱社畜、英語、海外移住などをテーマに情報発信中。Twitterフォロワーは1万人を超える。ニュージーランド永住権ホルダー。

COMMENT

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です