プログラマーとは

ITに関わる職業の代表格、それが「プログラマー」です。

パソコン上で動くソフトウェア、スマートフォン上で動くアプリケーションのプログラムを組むんでいるのが、この「プログラマー」です。数々のプログラミング言語を操り、様々なシステムのプログラムを組むコンピュータ言語のスペシャリスト。
年々増加するIT需要、特にスマートフォン需要により、プログラマーの需要も高くなっています。

今や一般市民の生活基盤となったコンピュータ。プログラマーは市民の生活を支えているという意味で、重い責任を担う仕事となったと言えますよね。

※本ページにはPRが含まれます。

プログラマーは何をしているのか?

プログラマーは、PCの前に座って何をしているのか?

どんな仕事を任される人が、プログラマーと呼ばれるのか?プログラマーの仕事を覗いてみましょう。

SEから降りてきた仕様書に基づいてプログラムを組む

SEが、顧客の話を元に組んだ仕様を元に、プログラムを組みます。SEについての説明は「SE(システムエンジニア)とは」をご覧ください。

システムの開発を中心となって担っているのが、このプログラマー。中にはSEがプログラミングを任されていることもありますが、ほとんどプログラマーに詳細開発は一任されています。

特に客元に派遣されるエンジニア職のプログラマーは、ほとんど兼任することなく、プログラミングに集中することになるはずです。

プログラマーが扱うプログラミング言語は?

プログラマーは「プログラミング言語」という独自の言語をパソコン上で組むことで、システムの開発を行います。プログラミング言語にはどんな種類があるのか、代表的なプログラミング言語を見てみましょう。

C言語

C言語は、ソフトウェアを組む上の共通言語として、一般的なプログラミング言語です。プログラミング言語の初歩的な役割も持っており、C言語を習得することができれば、発展型のObjectーCやC++などのプログラミング言語の習得も難しくないはずです。

Java

Javaも、汎用性が高くプログラミング言語の代表格として扱われます。Androidアプリや、ゲームの開発などで広く扱われるプログラミング言語です。

時にビッグデータの保存などに使用されるフレームワーク「Hadoop」などでもこのJavaが使われることが多いため、YahooやFacebookなどの大企業でも使われることが多いです。

Ruby

Rubyは、まつもとゆきひろ氏によって開発された、オブジェクト型のスクリプト言語です。

上でも説明したJavaなどのコンパイラ言語は、人が書いたソースコードをコンパイル(変換)することで、初めてコンピュータが実行に移すことができます。

しかしスクリプト言語は、コンパイルの手続きを一切することなく、直接コンピュータ上で実行に写すことができるのです。これにより、プログラマーが効率的にシステムを開発することができるようになるのです。

Python

Pythonは初心者でもとっつきやすいプログラミング言語として人気の高いプログラミング言語です。デスクトップアプリからWebアプリケーション開発まで広く活躍する言語で、GoogleやInstagramなど、有名サイトもこのPythonで組まれているのです。

プログラムのアルゴリズムを詳細に決める

プログラマーの仕事は、ただプログラミングをするだけとはいきません。システムエンジニアから下ってきた仕様書を、より専門的に、具体的な形に変換しなくてはなりません。

この手順を専門的に言うと「アルゴリズム」と言い、このアルゴリズムを組むのも、プログラマーにとって重要な仕事の一つです。

プログラムのバグを見つけるのもプログラマーの大事な仕事

プログラムを組み終わったら、プログラマーの仕事は終わり!…というわけでもありません。

プログラミングが終わり、完成したシステム。そこに潜むバグを見つけて、バグをなくしていくのもプログラマーの仕事です。バグを見つけるのは、SEの仕事でもありますが、複雑なシステムともなればこのテストとバグ修正に何ヶ月もかける場合もあるのです。プログラマーは忍耐力が必要な仕事だと言えますよね。

経験のあるプログラマーはSEと大差ない?

今回は、プログラミングに特化しているプログラマーの説明をしましたが、経験を積んだプログラマーは、SEとの境界線がぼんやりしてくる特徴があります。

初心者のプログラマーは、「プログラムを組む」のがメイン業務となりますが、実務経験を積んだプログラマーは、プログラムの基本設計、仕様決めまで行います。経験を積んだプログラマーは、SEを兼任することが多くなってきます。

当然ですが、広い職場で、両方の経験を持っている人が重宝されます。

まとめ

SEが顧客から聞き出した要求、それに基づいて決まった基本設計を元に、コンピュータ言語を用いて「プログラミング」するのがプログラマーの仕事です。

じっとシステムの開発に向けて開発とテストを繰り返す事になるプログラマーという仕事。ここには強い忍耐力と根性が求められます。