プログラマーの種類を解説!難易度・年収・使用言語まとめ

公開日:2021.09.30

ITエンジニア職種
 

プログラマーは、プログラミング言語を駆使して仕様書通りのプログラムを作成するのが仕事です。ただ、プログラマーの中にもたくさんの種類があり、その種類によって使用言語や細かな仕事内容に違いがあります。そこで、今回はプログラマーの種類ごとに、難易度・年収・使用言語をまとめました。

プログラマーとは

プログラマーとは、仕様書に基づき指定されたプログラミング言語を使って仕様通りに動作するプログラムを作成するITエンジニアの職種です。社会のIT化が進む中で、プログラマーが作成したプログラムは、あらゆるところで使われています。

プログラマーが参考にする仕様書の作成は、システムエンジニア(SE)の担当です。プログラマーとシステムエンジニアの違いについては、以下の記事を参考にしてください。

関連記事:システムエンジニア(SE)とプログラマ(PG)の違いについて解説!

プログラムは、誰が作成しても同じになるとは限りません。できるだけ動作するハードウェアへ負担をかけずに、迅速かつ効率良く動作するプログラムを作成することが必要です。そのためには、プログラミング言語の知識や、アルゴリズム・デザインパターンなどの知識を身に付けることが重要となります。

不具合(バグ)のないプログラムを作成するには、経験も必要です。また、仕様書内にあいまいな部分があった場合、内容を明確にするため、積極的に作成者とコミュニケーションをとる能力も求められます。

プログラマーの種類別・仕事内容を紹介

プログラマーは、対応分野によって種類があり、それぞれに仕事内容や使用するプログラミング言語に違いがあります。プログラマーの種類を一覧表にまとめると、以下の通りです。

この表は横スクロールでご覧いただけます

種類 作成物 使用言語
Web系 Webサイト・Webサービス全般
  • ホームページ
  • SNS
  • ショッピングサイト
【クライアントサイド】HTML/CSS、Java、JavaScript、PHP、Ruby
【サーバーサイド】Java、C+、C++、Perl、PHP、Ruby、Python、各種スクリプトなど
ゲーム系 ゲーム全般
  • テレビゲーム
  • SNS
  • スマホアプリ
C++、C#、Unity、JavaScript、Swift、Ruby
アプリケーション系 PCやスマートフォンにインストールするアプリケーション全般
  • Webアプリ
  • PC用アプリ
  • スマホアプリ
【Webアプリ】Java、C#、Python、Ruby、PHP
【Androidアプリ】Java、Kotlin
【iPhoneアプリ】Swift
パッケージソフト系 パッケージソフト・ミドルウェア全般
  • 会計ソフトなど各種業務ソフトなど
C++、C#、VB、Javaなど
組み込み系 各種機器に組み込むプログラム全般
  • 家電
  • カーナビ
  • スマホ
  • IoT機器
C、C++、C#、Java、アセンブラ
汎用系 大型コンピューター上で動くシステム全般 COBOL、Java、FORTAN、RPG、PL/SQL、C
オープン系 仕様が公開されているOSやソフトウェアを組み合わせたシステム開発全般 Java、JavaScript、PHP、Ruby、Python、C+、C#、VB.net

プログラマーの各種類について、以降でもう少し詳しく説明します。

Web系プログラマー

Web系プログラマーは、Web上で動作するシステムやサービスの開発を行うプログラマーです。画面周りの開発は「フロントエンド」、業務ロジックやデータ操作周りの開発は「バックエンド」と分けて呼ばれます。需要はとても多く、案件数も豊富で未経験者歓迎の案件も比較的見つけやすいタイプです。

言語以外に求められる知識としては、OS、Webサーバー関係のミドルウェア、開発ツール(IDEなど)、データベースなどがあります。Web系エンジニアの詳しい仕事内容などは、以下の記事も参照してください。

関連記事:Webエンジニアとは?未経験でもなれる?年収・将来性・学ぶべき言語

ゲーム系プログラマー

PCゲームやスマホゲームなど、さまざまなゲームを作成するプログラマーです。キャラクターをスムーズに動かすために、数学や物理学などの知識も求められます。大規模なプロジェクトになることも多いため、円滑なコミュニケーションも必要です。

アプリケーション系プログラマー

PCや、スマートフォンにインストールされるアプリケーションの開発を行うプログラマーです。インストールするデバイスによって、開発言語には違いがあり、さらにさまざまなデバイスで動作することも求められます。「複数の言語を身に付ける」「更新される各種OSの仕様についていく情報収集力や柔軟性」などが必要です。

アプリケーションエンジニアの詳しい仕事内容は、関連記事も参考にしてください。

関連記事:アプリケーションエンジニアとは?資格や必須スキルも解説

パッケージソフト系プログラマー

PCにインストールするパッケージソフトウェア全般を開発するプログラマーです。インストール形式で提供され、個人向け・法人向けどちらも開発します。法人向けのパッケージソフトは、サーバーマシンとクライアント端末両方にインストールするタイプもあります。

インストールするマシンのOSやインストール用プログラムなど、Web系プログラマーとは異なる知識が求められます。

組み込み系プログラマー

家電や電子機器、IoT用のセンサーなどを小さなコンピューターを制御するためのプログラムを作成します。これらは、PCなどと異なりCPUやメモリなどのリソースが潤沢ではなく、コンパクトな設計が求められることが一般的です。

そのため、他のプログラマーとは異なり、ハードウェア周りの知識が求められます。使用言語は、比較的難易度の高いCやJavaがよく使われる傾向です。

組み込みエンジニアについて詳しく知りたい場合は、以下の記事も参考にしてください。

関連記事:組み込みエンジニアとは?仕事内容と年収、将来性、求められるスキルを解説

汎用系システムプログラマー

メインフレームや、ホストコンピューターと呼ばれる大型コンピューター上で動くシステムを開発するプログラマーです。従来はよく見られた汎用系システムですが、ダウンサイジングの流れで、Webシステムやサーバー・クライアント型のシステムに置き換わりつつあります。

使用するプログラミング言語は、COBOLなど他のシステムで使わないものが多いことが大きな特徴です。汎用系システムプログラマーは、若手不足となっているため、案件数は少なくても年収は高い傾向にあります。

ネットワーク系プログラマー

Wi-Fiルーターやテレビ会議システムなど、ネットワーク周りのプログラムを作成します。使用言語は、難易度が高いC++やC言語などです。クラウドサービスや新しい通信規格5Gなど、技術の進歩が目覚ましい分野となるため、需要は今後も高いと見込まれています。

ネットワークエンジニアについてさらに深く知りたい場合は、以下の記事もあわせてお読みください。

関連記事:ネットワークエンジニアとは?仕事の内容や将来性について解説!

オープン系プログラマー

汎用系システムと反対の性質を持つシステムを「オープン系システム」といいます。オープン系システムに含まれるものは、Webシステムやサーバー・クライアント型システム、クラウドサービスなどです。

複数のコンピューターを利用し、さまざまなミドルウェアなどを組み合わせてシステムを構築します。求人案件としては「Web・オープン系プログラマー」として応募されるケースが多い傾向です。

プログラマーの難易度と将来性・年収

プログラマーの難易度は、使用する言語と作成するプログラムの複雑さなどに左右されます。比較的初心者でも学びやすい言語は、Javascript、Python、PHPなど。逆に、難易度が高いとされる言語は、C++、C、Javaなどです。使用言語から考えると、Web系プログラマーでもフロントエンド周りは、比較的理解しやすい分野といえます。

逆に、難易度の高い分野は、ハード周りの知識も必要な組み込み系や、物理・数学の知識が求められるゲーム系、機械学習やBIツールなど難易度の高いWeb系・アプリケーション系などです。

プログラマーの将来性については、以下の関連記事でまとめていますので、併せてご確認ください。

関連記事:プログラマーの将来性とは?今後も活躍し続けるために必要なこと

AKKODiS(派遣・紹介予定派遣)別ウィンドウで開くの求人案件でプログラマーの種類別年収相場を確認したところ、以下の通りでした。(2021年8月時点・見込み月収や時給より計算)

  • Web系エンジニア:約250万 ~830万円
  • ゲーム系エンジニア:約300万~720万円
  • 汎用系エンジニア:約417万円
  • パッケージソフト系:約300万~400万円
  • 組み込み系:約250万~604万円
  • アプリケーション系:約300万~821万円

プログラマーの年収は、約240万~879万円と幅があるのが特徴です。また、上記以外でも、機械学習やBIツールに関するプログラミング案件もあります。基礎統計学の知識や、BIツールでの開発経験があることで安定した収入につながるでしょう。また将来性からみても必要とされる職種です。

どのプログラマーを目指すか決めて勉強を

プログラマーには、さまざまな種類があるため、難易度や将来性はそれぞれに異なります。目指す種類によっては、勉強するべきプログラミング言語も異なるため、将来性や年収なども考慮して、どの種類のプログラマーを目指すかを決めましょう。

どの種類のプログラマーを目指すか迷う場合は、AKKODiSで募集している求人を参考に、目指すべき方向を検討してください。

(2021年9月現在)

AKKODiSコンサルティングに関するお問い合わせ