
プログラミングができる職業の種類について。プログラマーの種類を紹介します
#プログラミング #職業 #種類
こんにちわ。
今日の記事では、IT業界で活躍するプログラマーの方は、一体どういう仕事をしていて、どんな種類があるのか?
また、必要なスキルや将来のキャリアに関して、網羅的に解説する記事を作ります。
この記事を読むことで、プログラマーという職業について、全体像を掴むことが出来ると思います。
関連のリンクには、今回の記事だけでは説明できないより深いコンテンツを付けていますので、
興味がある方はぜひ深掘りしてぜひ深掘りして読んでみてください。
プログラマーってどんな職業?
プログラマーはソフトウェアを作る仕事
プログラマーとは、一言で言えばソフトウェアを作る仕事です。
プログラミングという作業を通してコードを書き、ソフトウェアを作るのです。
ソフトウェアというのは、今はデジタル革命時代ですから、あらゆるデバイスの上で動作します。
インターネット(Web)の上で動くソフトウェアを作る人もプログラマーだし、モバイルアプリ(スマホ)で動くアプリを作る人もプログラマーです。
はたまた、ロボットを動かすためにはソフトウェアが必要であり、ペッパーくんみたいなロボットを動かすソフトを書くプログラマーもいます。

また、それだけではなく、今の時代はiOTの時代とも言われています、iOTとは、モノのインターネットと呼ばれるもので、
家電や、テレビや、スピーカーやお掃除ロボットまでもインターネットに接続して通信を行うというものです。
Amazonのアレクサなどのスマートスピーカーを動かすためのソフトを書くプログラマーもいますし、
防犯カメラをネットに繋いで、データをリアルタイムでスマホに送ったりするためにも、iOTを組み込むプログラミングが必要ですよね?
ザックリと、プログラミングの結果動くようになる種類を考えるだけでも、様々なデバイスで動くアプリケーションが作れるわけです。
- ネット上でブラウザを使うユーザーの為に動くwebサービス
- スマホで動くネイティブアプリ
- ロボットを動かすソフトウェア
- Amazonのアレクサなどのスマートスピーカーを動かすためのiOTプログラマー
- 多大なデータを解析して人工知能を構築するAIプログラマー
そのように、プログラマーという仕事を考えたとき、
簡潔な答えとしては、『プログラミングをしてソフトウェアを動かすコードを書く仕事』と言えるわけですね。
プログラマーの仕事の種類は?
では、現代の私たちがプログラマーとして働くとして、
実際にどのような種類のプログラマーの求人があるのか見ていきましょう。
ざっくりと、プログラマーの業界では、種族が分かれていますので、興味深いと思います。
フロントエンドエンジニア
フロントエンドエンジニアとは、webサイトや、webサービスのUI / UXを作る人々を言います。
UI / UX というのは、ユーザーインターフェース / ユーザーエクスペリエンスの略で、綺麗な見た目や、ユーザーが使いやすいwebを構築することです。
Webサイトというのは、HTMLとCSSで動いているのですが、昔はあんまり綺麗ではないWebサイトが、あんまり便利ではない平坦な動きをしていました。
しかし、今の時代は、JavaScript(React, Vue)という技術を使うことで、
驚くほど綺麗なUIと、カッコいいUXでWebサイトやWebサービス実現することが出来ます。
Webサイトを使うユーザーは、ダサくて使いにくいサイトよりも、早く、かっこいい、使いやすいサイトを使いたいですよね?
フロントエンドエンジニアというのは、そのようなwebサイトの見た目を作る仕事なのです。

バックエンドエンジニア
バックエンドエンジニアとは、簡単に言えば、データベースへのデータ出し入れなど、データを扱って機能を実現するコードを書く人です。
フロントエンドのエンジニアが、webサービスのデザインを作る人なら、
そのウェブサイトから受け取ったデータを処理するのがバックエンドエンジニアに仕事です。
簡単に言えば、会員サイトを考えてみましょう。
フロントエンドエンジニアが、ユーザー登録画面の綺麗なWebサイトを作り、ユーザーが会員登録画面からデータを入力して登録ボタンを押しますね?
サーバー側では、ユーザーが入力した情報を受け取り、バックエンド側のコードで、データを受け取ってデータベースに入れたりします。
そういう部分を書くのがバックエンドの仕事。
これは、Webサイトであろうが、スマホアプリであろうが、ロボットを作るにしろ、iOTをするにしろ存在している概念で、
人間のインプットに対して、サーバー側で処理をするコードを書くんですね。
ちなみに、余談ですが、最近ではFirebaseと呼ばれるクラウド技術が猛烈な発展をしてきていまして、
バックエンドの処理(会員登録や、データの保存、処理)は、もしかしたら全てクラウドがまかなってくれるかもしれない?というレベルまで来ています。
(この記事では詳しく話しません)
インフラエンジニア
インフラエンジニアとは、ソフトウェアを動かすためのサーバーの構築をしたり、多くのアクセスに耐えられるよう負荷分散などをして、サービスのダウンをしないように管理する仕事です。
Webサイトや、Webサービスや、スマホアプリや、その他、ロボットやiOTにしろ何にしろ、ソフトウェアは世界のどこかのサーバーで動いているわけです。
よく、サーバーがダウンしたというようなは話は、こちらのインフラ側での問題が発生しているということですよね。
昨今では、自らデータセンターなどを構築する必要がなく、AWSなどのクラウドサービスの上にサーバーを構築する企業などがとても増えています。
つまり、インフラエンジニアとは、AWSやGCPなどのクラウドコンピューティングを提供してるサービスを使って、今は仕事をするのが多いってことですね。
AIエンジニア
次、AIエンジニアとは、膨大なデータを使って、そのデータから読み取れるパターンや特徴を可視化して、
統計学的な接点を見つけたり、作ったりする仕事です。
例えば、全自動で動く自動車部品工場を考えてみてください。毎日、何万という数の部品が右から左へ流れてくるとします。
そういう時に、一部破損品が流れてくることもあります、これは、今までは人の目で確認して、破損品を排除するというやり方をしていましたが、
AIのライブラリや、もしくは自ら統計の知見などを駆使して、画像から適切ではない形の部品などを検出するプログラムを書くこともできます。
このように書かれたコードは、機械学習などによってより精度を上げることができるので、多くの現場で役に立ちます。
組み込みエンジニア
組み込みエンジニアとは、例えば防犯カメラとか、スマホに組み込むチップを作ったりですとか、単純にソフトウェアを作る以外の仕事も関わってくるのですが、
そのように、単なる機会に、ソフトウェアを搭載した小さなコンピューターを埋め込むことで、iOTや、電子機器に変える仕事のことです。
最近では、ラズベリーパイと呼ばれる、5000円ほどで入手可能な極小のコンピューターが売られていますが、
このようなものを使うと、ラズベリーパイの中にコードを実装して、プログラムを動かしいてる間に、写真を撮影したり、アームを動かしたり、
機械の制御を行えるようになったりします。
ロボットエンジニア
ロボットエンジニアとは、文字通り、ロボットを作るエンジニアです。
有名なものだと、ペッパーくんなどがありますが、もっともっと実用的に使われてるロボットもありますよね。
工場の中で動く kibaというロボットであったり、昔ながらの車工場などにある自動化のためのロボットもロボットです。
また、最近ではaiboのような消費者向けの犬型ロボットなども商業的に成功しているロボットとして有名です。
このようなロボットを作るプログラマーも、今後、より職業として広がってくるのではないかと思っています。
プログラマーの年収やキャリア
さて、ではプログラマーとしての年収やキャリアについて、お話をしていきます。
一般的には、プログラマーとしてコードを書けるようになってからは、三つの道があると思っています。
プログラマーとしてのキャリアプラン
それは、
- 生涯エンジニアとしてプログラミングを極めるか
- 上流工程に移動してプログラマーを使う人になるか
- 自分で何かプロダクトを書く人になるか
世の中には、プログラマーは定年が35歳であるという話がありますが、私は自分の経験談から、この話は全く信じていません。
プログラマーという仕事が、技術職です。
技術職というのは基本的には、一年目で終わらせるのに1ヶ月かかってた仕事が、3年後には1日で終わるようになってるというもの。
基本的には、仕事はどんどん効率的に簡単になっていくのです。
そして、エンジニアとしての平均的な年収は、400万〜1200万とピンキリかと思います。
技術力がとても高くても、営業力や転職能力が低ければ、なかなか年収は上がらないでしょうし、
逆に、そこそこのスキルでも、しっかりとしてビジネスセンスがあれば若くても年収1000万を狙えます。
もし、自分の好み的に、プログラミングを書くということに一生涯の情熱を注げないのであれば、
是非とも上流工程でプログラマーを使えるPMになってみてください。
技術が理解でき、コードをかけるエンジニア出身のPMは、優れたプロジェクトのマネジメントができます。
年収的にも、現在の日本では、1500万ほど狙えるPMもいると聞きます。
そして、そのどちらでもなく、自分のプロダクトで起業するという方ももちろんいます。
個人プロダクトでも、資金調達をしてもいいですけど、
何かを自分で創り出したいという方には、最初の数年はエンジニアとして技術を磨き、その後、自分のプロダクトでマネタイズを狙うのもいいかと思います。
プログラマーの将来性
また、キャリアに関しては、テック業界というのはまさに産業革命のようなものですから、
新しい技術を少しでも追いつこうと頑張っていれば、廃れることはないでしょう。
[st-minihukidashi fontawesome=”” fontsize=”” fontweight=”” bgcolor=”#FFB74D” color=”#fff” margin=”0 0 20px 0″ radius=”” add_boxstyle=””]おすすめ関連記事[/st-minihukidashi]