テンミニッツTV|有識者による1話10分のオンライン講義 ログイン 会員登録
DATE/ 2021.05.05

プログラマーとエンジニアの違いとは?

 IT業界の職種は大きくは2つ、プログラマーとエンジニア(システムエンジニア=SE)に分けることができます。どちらも人気の職種で、業界を知らない人からすると一見区別がつきにくいです。実際には重なる部分も多々あるようですが、一番の違いは何なのでしょうか。ここで少し詳しく見てみましょう。

プログラマーからSEになるケースが多い

 プログラマーとは、Python、PHP、Javaなどといったコンピュータのプログラミング言語を用いてゲームやウェブサイトをはじめとした様々なシステム構築の実作業を行います。プログラムは仕様書や設計書に基づいて作っていきます。いわば現場の仕事人といった感じかもしれません。これに対して、システムエンジニアとは、自らプログラミングを行ったりすることもありますが、基本的には全体の設計、管理を行い、状況に応じてプログラマーに指示を与えます。また、クラインアントとのやりとりから完成物の確認などといった最終的なチェックまでを行います。

 プログラマーが実際の構築を担い、SEは全体をみて、設計、開発、確認を行って全体を調整すると考えていいでしょう。こう見ると、SEはいわばマネージャーやディレクター、監督といった立ち位置とも言えます。このことから、プログラマーとして経験を積み重ねたのち、SEになるといったケースは多いようです。

Webサイト開発時の一連の流れ

 上で基本的な仕事の違いを示しましたが、ここで実際にクライアントからWebサイト開発の依頼を受けたとして、仕事の流れを見てみましょう。まず営業が仕事を受注したら、SEがクラインアントからヒアリングを行い、全体の計画・設計をします。この時、SEはクライアントとすり合わせながらイメージを共有します。この内容をもとにSEが作る設計書に従ってプログラマーは言語を使って開発・構築します。またWebサイトのデザイン(目に見える部分)はコーダーやWebデザイナーが作り、プログラマーが作ったプログラムを埋め込みます。SEは完成品を確認してクライアントに納品したのち、その後のフォローまでを行うといった流れです。

求められる資格:プログラマーは言語系、SEは総合知識系

 プログラムは誰がみてもわかるように、またシンプルに書くことが良しとされます。よりシンプルに指示を伝えるにはどういった構文をどのように使えばよいかといったことを考えるには、高い論理性が求められます。また、コンピュータの進化スピードは大変早いので、プログラマーは新しい情報を絶えず吸収していく意欲も求められます。こういったプログラマーに適した資格は、PHP技術者認定試験、C言語プログラミング能力認定試験、Javaプログラミング能力認定試験といった言語に関するものです。

 これに対してSEに求められるものは、まずクライアントの要望を正確に理解するヒアリング能力とこれを実現するために、どういった技術や作業が必要となるかといったことを判断するための専門知識、全体の労働量を推し量ることのできる管理能力といったものです。SEに求められるのは、基本情報技術者試験、システムアーキテクト試験、ネットワークスペシャリスト試験といった、コンピュータ回り全体に対する知識や問題解決力を問われるものです。

一般的にSEの方が給与は高い

 ここまで見たとおり、プログラマーは専門的にプログラムを開発し、SEがその統括的役割なので、一般的にSEの方が給与はいいです。CREATIVE VILLAGEというサイトによると、プログラマーの平均年収は約415万円であるのに対して、SEの平均年収は約551万円といったデータも示されています。ただし、プログラマーでもさまざまな言語を扱う能力を身につけて実績を積み、フリーランスで仕事を取れるようになればもう少し状況は変わるようです。ちなみにプログラミング言語別に見ると、Python(パイソン)を習得しているプログラマーの平均年収が比較的高い傾向にあるとのこと。Pythonはスマホアプリなどの開発で昨今よく使われるプログラム言語です。

<参考サイト>
プログラマーとエンジニアの違いとは?仕事内容&資格・スキル比較│インターネット・アカデミー
https://www.internetacademy.jp/it/programming/programming-basic/difference-between-programmers-engineers.html
システムエンジニアとプログラマーの違いって?開発に関わる職種を解説|ferret
https://ferret-plus.com/8774

あわせて読みたい