インターネットビジネス最新情報ポータル IBNIP

プログラマーの種類について考えてみた

プログラマーの種類について考えてみた

プログラマーはシステム開発することが仕事ですが、制作するシステムにより、いくつかの種類に分けることができます。使用するプログラミング言語についても、システムや仕事内容によって異なります。このページでは、数あるプログラマーの種類について考えてみました。

Web系プログラマー

Web系プログラマーとは、Web上で動作するシステムを作るプログラマーです。

例えば、インターネットのショッピングサイト、ホテルやレストランなどの予約システム、社内のLAN環境で動作する管理システム、オンラインバンキングのシステム、クラウド業務基幹システムなど、さまざまなWebシステムを作ります。

また、SNSやブロブなども、Web系プログラマーが作るアプリケーションの一つです。HTML、CSS、PHP、JavaScriptなどを始めとして、Java、Perl、Ruby、Python、データベース(SQL)などの知識を必要とします。

Webプログラミングは、小規模なWeb制作案件から、オンラインバンキングや大企業や組織の顧客管理システムのような大型案件まで、さまざまな需要があります。

ゲーム系プログラマー

ゲーム系のプログラマーは、主にC、C++などのプログラミング言語を用いて、ゲームのためのプログラミングを行います。

ゲームの種類としては、WiiやPlayStationのようにゲーム機器で遊ぶものや、PCやスマートフォンで動作するものなど、様々なものがあります。

スマートフォンやタブレットなどの端末のゲームアプリの開発を行う場合は、Object C、Swift、Javaなどのプログラミング言語も使われています。

ゲームができるまでの工程には、プログラマーの他、プロデューサー、ディレクター、プランナー、シナリオライター、デザイナー、サウンドクリエイターなどが関わってきます。

モバイルプログラマー

スマートフォンやタブレット用のアプリを作るのが、モバイルプログラマーです。スマートフォンの普及により、現在は非常に需要が多い職種になります。

以下は、各スマートフォン向けのアプリを開発するための言語になります。

  • 「Objective-C」「Swift」は、Apple社のiOS。
  • 「Java」は、Android。
  • 「C#」は、Windows Mobile。

iOSとアンドロイドで、同じアプリを作ることが多いので、両方のプラットフォームの開発スキルがあることが望まれます。

組み込み系、制御系プログラマー

組み込み系、制御系プログラマーは、アセンブラを中心に、C、C++、JAVAなどのプログラミング言語を用いて、主に電子機器の中に組み込むプログラムを作る仕事をします。

車、家電、スマートフォン、産業用ロボットなどの多くの機械製品には、組み込みシステムを使った制御ソフトウェアが内蔵されています。例えばエアコンの場合、自動運転・タイマー予約・人感センサーなど、こうしたプログラムによって動作しています。

開発はコンピューターで行うものの、デバッグは組み込んだ電子機器によって行われます。

ソフトウェア開発プログラマー

ソフトウェア開発プログラマーは、パソコンにインストールして使用する、パッケージソフトウェアの開発をする仕事です。

例えば、ワープロソフト・表計算ソフト・セキュリティソフト・会計ソフトなど、日ごろ私たちが使用しているソフトウェアを開発します。

使用するプログラミング言語は多岐に渡りますが、主に、C、C++、VB、Java、VC++などが使われます。

オープン系プログラマー

オープン系というのは、複数のコンピューターを使用して構築するシステム(クライアント・サーバーシステム)を言います。

ハードウェアに特化した開発ではないため、急な変更があった場合でも、汎用系よりも柔軟に対応することができます。

OSはUnixが代表的ですが、LinuxやWindowsなども使われています。言語については、オープン系のシステム開発ではC、Java、C++、VB 等を使い、データベースでは、Oracle、SQL Server、PostgreSQL、MySQL等を使います。

汎用系プログラマー

汎用系は、上記のオープン系に対する用語になります。つまり、オープン系が複数のコンピューターを使用して構築するシステムに対して、汎用系は1台のホストコンピューターが使用されます。

ハードウェアに特化した開発であるため、使用するコンピューターについての専門的なスキルを必要とします。他のコンピューターシステムとは互換性が無く、クローズドなシステムを構築します。言語は、COBOL・RPG・PL/Iなどが使われます。

汎用系はメインフレーム、オフコンとも呼ばれ、主に銀行業務やクレジットなどの金融機関の大規模システム、企業の基幹システムなど、安全性や信頼性が要求されるような業務で使われます。

通信系プログラマー

通信系プログラマーは、ネットワーク機器やコンピューターの通信に関わるプログラムを開発します。プログラミング言語はC、C++やJavaなどが用いられます。

組み込み系、制御系のシステムの中にも、通信系の技術が使われることがあります。例えば、スマートフォンで車や家電が操作できるのも車や家電に組み込みつつ、通信系のプログラムの技術が使われています。

その他の種類

研究開発系プログラマーのように、技術検証試験などのソフト開発を行うというような、かなり専門的な技術や知識を必要とする特殊なものもあります。

プログラミング言語はC、C++、VB、アセンブラ、FORTLAN、その他特殊言語が使われます。また、制御系プログラマーの中でも、工場のライン設備や交通システムなど、設備に特化した制御ソフトを開発するプログラマーもいます。

最後に

汎用系とオープン系のように全く異なる種類でない限り、ある種類のプログラマーに特化しているというよりも、複数の種類の仕事もこなすプログラマーが多いようです。また、経験を積み上げて行くうちに複数の言語を習得するようになり、さらに、幅広い仕事ができるようになります。

どのプログラマーにも言えることですが、時代の変遷が激しく、次々に新しいデバイス、サービスが登場しますから、その時々の変化に常に敏感であることが大切です。