プログラマーとSEの違い

初心者からプログラマーを目指す

【プログラマーとSEの違い】仕事・年収・求められるスキルを解説!【経験談】

2020年4月6日

 

プログラマーSE違いを知りたい。

どっちを目指すべきか考えている...

 

プログラマーはプログラミング作業を中心とするITエンジニア

システムエンジニア(以下SE)は、クライアント(顧客)の要望をもとに設計書を作成するITエンジニアです

 

ITシステムやサービスを開発するエンジニアという点では共通しています。

 

この記事では、プログラマーとSEの仕事内容・求められるスキル・年収の違いについて解説していきます。

マー坊
IT企業、WEB会社でPG&SE歴17年の僕がその経験からお話します!

 

プログラマーとSEの違い

プログラマーとSEの違い(仕事・スキル・年収)

プログラマーとSEの違いは以下のとおり。

職種 主な仕事内容 求められるスキル 平均年収(※1)
プログラマー プログラミング プログラミング言語

コミュニケーション力

376万円
システムエンジニア(SE) 設計書作成 プログラミング言語

業務知識

コミュニケーション力

504万円

参考:厚生労働省の-R1賃金構造基本統計調査-

 

そもそもソフトウェアを開発するエンジニアという点では共通しています。

しかし、担当する職域(お仕事)が違うのです。

 

ですから、求められるスキルも違うし、年収も違ってくるのです。

では、両者のお仕事・スキル・年収の違いをもう少し深掘りしていきます。

 

1.仕事の違い

プログラマーとSEの仕事の違い2

プログラマーとSEの仕事における違いは以下のとおり。

  1. プログラマーはプログラミングをすることが仕事
  2. SEの仕事はクライアントの要望から設計書を作る

 

順番に解説していきます。

 

1.プログラマーはプログラミングをすることが仕事

プログラマーはプログラミングをすることが仕事

プログラマーは、プログラミング中心のお仕事をします。

 

そもそもプログラミングとは、以下の一連のことを指しています。

内部(詳細)設計書➡︎コーディング➡︎テスト➡︎バグ改修

 

内部(詳細)設計書とは、SEが書いた設計書(後述)に基いて起こす処理レベルの設計書です(プログラム設計書ともいいます)。

処理レベルの設計書なので、入力データやその処理方法(チェックなど)、結果を導き出すアルゴリズムなどが記載されています。

 

出来たプログラム設計書をもとに、実際にプログラミング言語を使ってコーディングし、動作確認(テスト)およびバグ(不具合)を取り除いていきます。

もっと詳しく!

 

2.SEの仕事はクライアントの要望から設計書を作る

SEの仕事はクライアントの要望から設計書を作る

SEのお仕事は、主に設計書を作ります。

 

作る設計書は以下の通り

  • 要件定義書
  • 外部(基本)設計書

 

順番に解説していきます。

 

要件定義書

要件定義書

要件定義書というのは、クライアントの「システムでやりたいこと(目的)」を書いていく設計書です。

クライアントとヒアリングを繰り返す中で、その要望を設計書にまとめていきます。

 

例えば、会員システムを作りたいとするならば、

  • 会員登録ができること。
  • 会員が口コミを投稿できること。
  • 会員システムの管理者は、口コミを管理し削除できること...

などのように、システムで何を実現しなければいけないのかを具体的にしていきます。

 

マー坊

クライアントの業務上における「不便さや悩み」もシステムで解決しなければならない時もありました。

よくあるのが、コストの削減や業務効率化です。

実際にシステムで解決できるかどうかは、プログラマーなどとも相談です。

 

外部(基本)設計書

外部仕様書

外部(基本)設計では、要件定義で決めた機能を、具体的にシステムでどう実装していくのかをまとめていきます。

 

外部(基本)設計の段階で、作る設計書はたくさんありますが、例えば、

  • ハードウェアやソフトウェア構成図
  • 画面・帳票レイアウト
  • テーブル・ファイル定義
  • 業務フロー(流れ図)...

といったように、操作画面やデータ出力など、クライアントでも理解できるインターフェース部分の仕様を決定します。

 

外部設計は、基本的にクライアント向けの仕様を設計することが目的であり、納品物となるものです。

 

マー坊

よくある話ですが、仕様が決まったのにそれをひっくり返す変更もありましたよ。

そんな場合は、残業して対応することも...

 

2.求められるスキルの違い

2.求められるスキルの違い

プログラマーとSEに求められるスキルは以下のとおり。

 

プログラマー SE
プログラミング能力 必須 必須
コミュニケーション能力 必須 必須
マネジメントスキル - 必須

 

順番に解説していきます。

 

プログラマーに求められるスキル

プログラマーに求められるスキル

プログラマーに求められるスキルは、以下2つ。

  • プログラミング能力
  • コミュニケーション能力

 

プログラマーにとって、プログラミング能力は必須の能力です

プログラミング能力がなければお仕事はできませんから。

 

プログラミング能力とは、プログラム言語を使ってコーディングする能力はもちろん、内部(詳細)設計書をつくる能力なども含まれます。

なので、SEの作った外部設計書を読み取る力が必要です。

 

しかし時には、SEの作った外部設計書が理解し辛いことも多々あります。

理解しにくいことをSEに質問するなどし、しっかりと共通認識を持つことが重大なミスを避けることにもなります。

そのためにも、コミュニケーション能力は必要です。

 

マー坊

IT企業では厳格に設計書を書く文化はあります。

設計書は納品物ですから、しっかりと書かなければなりません。

ですから、コーディングの時間:設計書の記述時間の比率は5:5くらいか4:5くらい。

 

しかし、WEB会社では画面設計やフロー図(フリーフォーマット)といったぐらいで、コーディングに掛ける時間が多かったです。

 

SEに求められるスキル

SEに求められるスキル

SEに求められるスキルは、以下2つ。

  • コミュニケーション能力
  • マネジメントスキル
  • プログラミング能力

 

クライアントの要望を聞いて設計書を作りますから、コミュニケーション能力は必須です。

そのほか、開発チームをまとめて牽引したり、エンジニアやスケジュールの管理といったマネジメントスキルも求められます。

 

また、プログラマーの作った内部設計書やソースコード、テスト仕様書などもレビューをしていきます。

レビューでは、設計誤り、コーディングミスや規約違反、テスト項目漏れなど指摘し、成果物の品質を向上させる役割もあるのです。

ですから、プログラミング能力もSEには必要な能力です。

関連【システムエンジニアに必要なスキル】プログラミングは絶対に必要な理由

 

マー坊

自分のデスクに座って作業している時間よりも、クライアントと打ち合わせや会議、他のチームと調整などで自席を外すことが多かったです。

ですから、SEは圧倒的にコミュニケーション能力は必要だと言うことを実感しました。

 

3.年収の違い

3.年収の違い

プログラマーとSEの平均年収は以下のとおり。

 

職種 平均年収(※1)
プログラマー 374万円
システムエンジニア(SE) 504万円

参考:厚生労働省の-R1賃金構造基本統計調査-

 

順番に解説していきます。

 

プログラマーの年収はSEよりも低い

プログラマーの年収

プログラマーの平均年収は厚生労働省の-R1賃金構造基本統計調査-」で調べたところ、平均年収は376万円でした。

ですが、プログラマーにも種類(WEB・アプリ系、制御など)があり一概にとは言えません。

 

さらに、経験や実績、会社の規模やプログラマーの働く時の契約(SES、請負、派遣)契約形態にも関係します。

また、繁忙期だと、基本給と同じくらいの残業代が支給される時もあります。

 

プログラマーは下流工程の「プログラミング」を主に仕事とするエンジニアです。

設計書さえあれば、どんどんこなすことのできる職種です。

 

はっきりと言えることは、クライアントの要望を取り入れながら設計書を作る(上流工程)SEに比べると、120万円ほど低くなることは納得です。

 

マー坊

また、プログラマーだけの仕事しかできないと、給与も頭打ちになりますね。

関連【プログラマーの平均年収】SEより低い理由と高収入を目指す方法も解説!

 

SEの年収はプログラマーよりも高い!?

SEの年収

一方、SEの平均年収は、厚生労働省の-R1賃金構造基本統計調査-」で調べたところ、平均年収は504万円でした。

しかしSEの方にも、種類(WEB・アプリ系、制御)があり一概には言えません。

 

また、前述したプログラマーと同じように、経験や実績、会社の規模や、SEの働く時の契約(SES、請負、派遣)契約形態にも関係します。

 

IT企業に在籍していると、20代若手のSEであれば主任や係長というポストにつくことも多いです。

ですから、SEの給与は一般社員であるプログラマーに比べて給与も高くなる理由も理解できます。

 

マー坊
プログラマーに留まらず、SEへのキャリアアップを目指しましょうね!

関連【システムエンジニアの平均年収】一般サラリーマンと比べて高い!

 

プログラマーからSEになるにはどうする?

プログラマーからSEになるにはどうする?

ITベンチャーのプログラマーであれば、プログラマーからSEになるのには至って簡単ですよ。

(割と小さなIT会社(少数精鋭)であれば、一人のプログラマーに期待されることは多いということです)

 

ではどうすればなれるのでしょうか...

僕の経験からお話しますね。

 

ITベンチャーだとエンジニアに期待することは多い

エンジニアに期待

ITベンチャーは、少数精鋭で新しい技術やサービスを開発していきます

(大手と同じ土俵だと勝負に負けてしまいますからね)

 

ですから、エンジニアに期待することは多いのです。

 

例えば、クライアントと打ち合わせしてITやWEBサービスの仕様を決めたり、IT技術を使ってクライアントの「やりたいこと」を実現するための提案もやります

当然プログラミングもやりますよ!

 

ですから、ITベンチャーに新卒入社した場合でも、いきなりプログラマーとしてではなく一人のITエンジニアとして活躍できますよ

 

しかし、覚えることややることはたくさんあります

迷うことや疑問などでつまづき、なかなか作業が進まないことも頻繁です。

 

ですが、先輩・上司も同じ環境で苦しい思いをしてきた人ばかり。

なので、分からないことを聞いていけばきちんと教えてくれますよ。

 

マー坊

もちろん、エンジニアとして自分で調べたりすることも必要です。

 

僕は社内のネットワーク構築や、仮想サーバー構築などもしていましたよ!

スキルをつけておけば、転職にも有利だということも実感しています。

 

ITベンチャー企業ではSEへのステップアップを望んでいる。

ITベンチャー企業ではSEへのステップアップを望んでいる。

会社はプログラマーよりも、SEになることを期待しています

プログラマーとしての職域よりSEの職域の方が広いので、活躍の幅も広がります。

 

なので、会社の技術力アップにもつながります。

すると、一人のエンジニアが客先常駐で作業する場合の、契約単価が変わる(アップする)というメリットもあるのです。

 

クライアントとの契約において、プログラマーとしての単価を採用か、もしくはSEとしての単価なのかを決めます。

もちろんSEとしての単価が高額であるため、会社としてはSE単価を採用したいがためにプログラマーではなく、SEになることを期待します。

 

とはいえ、仕事のできない社員をSEにはしません。

(クライアントに迷惑も掛かりますからね)

 

ですから、ずはあなた自身に与えられた仕事をしっかりこなし、期待されるような人材になることが大切です

期待されるようになれば、会社もあなたをSEとして育てようとしますので!

 

マー坊

とはいえ、ベンチャー企業に関わらず、中小のIT会社に所属していると、20代半ばあたりから上流工程の設計書の作成作業もさせてもらえます。

SEになるためのステップとして、クライアントとの交渉なども増えてきますよ。

 

プログラマーとして慣れてくれば、少しづつクライアントともコミュニケーションを取りながら、SEの仕事にも踏み込んでみてくださいね!

 

大手企業に就職する

大手企業に就職する

大手企業に就職することで、いきなりSEになれることも

大手企業だと、実際のシステム開発部分は外注へ出してしまいます。

 

そのため大手企業のエンジニアは、上流工程の設計に関わったり、プロジェクトの進捗管理を主な仕事としています。

(新卒社員もいきなりSEでしたね)

 

ですが、プログラミング自体にはあまり関わっていなかったので、コーディングスキルはあまり身につかないようです。

なので、プログラマーとして転職やフリーランスとして活動しようにも厳しいです。

 

マー坊

しかし給与や賞与は期待できるものがあります。

某大手ITベンダーの20代半ば(新卒入社2、3年)で、前述したSEとほぼ同額の給与をもらっていましたから。

関連ITエンジニアが活躍する大手IT企業の平均年収ランキング50!【2020年版】

 

まとめ

プログラマーとSEの仕事内容・年収・求められるスキルの違いについて解説してきました。

 

ITシステムやサービスを開発する上で、主に携わる開発工程に違いがあります。

  • プログラマーはプログラミング
  • SEは設計書作成

 

特にSEに関しては、クライアントの要望をシステムに取り込まなければなりません。

その実現可否を判断するには、まずはプログラミング能力は必須です。

 

ですから、プログラマーはITエンジニアとして活躍するための第一歩であり、基礎ともなります。

SEとコミュニケーションをとりつつ、そのノウハウを吸収しながらステップアップしていってくださいね!

 

まずは、プログラマーからはじめてみましょう!

おすすめ!

 

 

 

この記事はいかがでしたでしょうか✨?

-初心者からプログラマーを目指す

© 2020 WEB系エンジニア-マー坊ブログ