-
プログラミングで就職できる職業「10の仕事」とは?
プログラミングはどんな職業に就ける?
せっかくプログラミングを勉強するのなら、ある程度習得した後に「どんな職業に就職できるのか?」を知っておきたいですよね。
今回は「プログラミング習得後の就職・職業」という観点から、拓ける未来を見ていきます。
「10個の職業」そして各職業で主に使われる「プログラミング言語の一例」も併記しますので、言語の傾向もつかんでおきましょう。
なお記事中では「プログラマー/エンジニア」という表現が多用されますが、もし両者の違いについて曖昧な方は『プログラマーとエンジニアの違いは?特長や曖昧になる理由も解説。』もチェックしてみてください。
ではさっそく、プログラミングで就職できる職業「10の仕事」について見ていきましょう。
①WEB系プログラマー/エンジニア
おそらく初心者の方々が最もイメージしやすいのがこの「WEB系プログラマー/エンジニア」かと思います。
いわゆる「フロントエンドエンジニア」はここに入り、WEBサイトを作るうえでのUI/UXを担います。見た目はもちろんのこと、操作性やユーザー体験も視野に入れる幅広い仕事。
世界中の各企業において、WEBサイトを使ったビジネスは欠かせないものとなっており、ゆえにWEBクリエイティブ関係の需要が途絶えることはありません。
フロントエンドエンジニアとバックエンドの違いについては『「フロントエンド」と「バックエンド」のちがいとは?』をどうぞ。
<WEB系プログラマー/エンジニアが使うプログラミング言語の一例>
●HTML/CSS/JavaScript/PHP/Java/Python
上記のなかでも文書構造を組み立てるマークアップ言語(HTML)と装飾を担うスタイルシート言語(CSS)はまず最初に抑えるべき技法であり、基礎を成す重要なスキルになります。
②アプリ系プログラマー/エンジニア
アプリ系すなわち「アプリケーションプログラマー/エンジニア」は、私たち普段使用しているスマートフォンに表示されているアプリ、そしてパソコン上で使える「WEBアプリ」の2種があります。
昨今の「ウマ娘」に代表されるようなゲームアプリの需要の急騰により、現在最も注目度の高い注目業種とも言えるでしょう。
<アプリ系プログラマー/プログラマーが使うプログラミング言語の一例>
●Android:Java/Koltin
●iPhone:Swift
●Webアプリ:JavaScript/Java/Python/PHP/Ruby/C#
上記を見てわかるとおり、iPhoneとAndoroidでは取り扱う言語が異なります。一時期話題になったアプリ『clubhouse』は先にiOS(iPhone)版をリリースして反応を見つつ、その後Android版をリリースしていましたね。
③インフラ系プログラマー/エンジニア
IT業界では日々当然のように使用される「インフラ」というワード。しかし初めて聞くとピンとこないかもしれません。
インフラとは「インフラストラクチャー(Infrastructure)」つまり「基盤」の意味。IT業界では、システムやWEBサイトの心臓部となる「サーバーやデータベース」を指します。
これらの「設計・構築・運用・保守・管理」をするのがインフラ系エンジニア(インフラ系プログラマー)の役目になります。
インフラ系エンジニアはWEB系エンジニアでも一部ご紹介した「バックエンドエンジニア」とも呼ばれます。フロントエンドエンジニアとの具体的な差については『「フロントエンド」と「バックエンド」のちがいとは?』をチェックしてみましょう。
<インフラ系プログラマー/エンジニアが使うプログラミング言語の一例>
●WEB系:Python/JavaScript/Ruby
●インフラ系等:AWP・GCP/Docker/Perl/TTL/Bash/Bat等
④オープン系プログラマー/エンジニア
「オープン系」と言われても、全く想像がつかないかもしれません。
いったい何が「オープン」なのかというと、企業がコスト削減のためにオープン=公開されているOS(UNIXやWindows)を使って業務のアプリケーションを開発することから由来しています。
つまり「元々ソースコードなどが公開されているパソコンを基軸に、企業や店舗のデータベースをつくる」というのがオープン系。なお「オープン系」の対極にあるのが次項目の「汎用系」となります。
<オープン系プログラマー/エンジニアが使うプログラミング言語の一例>
●C/C++/C#/JavaScript/Java/Ruby/Python/VB.net
データベースはOracle、SQL Server、PostgreSQL、MySQLなどを使用します。
⑤汎用系プログラマー/エンジニア
「オープン系プログラマー/エンジニア」の対極にあるのが「汎用プログラマー/エンジニア」です。
「完全にゼロから専用機を作るのでなく、異なる業界でも仕様が共通しているシステム部分はそのまま活用しつつ、自社用にソフトウエアを導入する」のが特長です。
「使えるところは使い回す」という意味で「汎用(1つのものを色々な方面で使う)なんですね。
ただし、汎用系については今からわざわざ就職を目指す必要はないとも言えます。パソコンのOSを活用するオープン系と異なり、コストの面では汎用性のシステムが高くつくことは否めなく、ニーズは減少していることに注意。
汎用系で取り扱われる言語で最も多い「COBOL」も、汎用系以外では使用場面がないとも言え、古くレガシーな言語です。学習する人はもちろん、現在取り扱える人も減少傾向にあります。
ITスキルの国家試験である「基本情報技術者試験」においても、2020年度から試験内容の一部がCOBOLからPythonに変更されています。
<汎用系プログラマー/エンジニアが使うプログラミング言語の一例>
●COBOL/FORTRAN/PL/1/RPG
⑥ネットワーク系エンジニア
安全で快適なネットワークの構築や保守を担当するのが「ネットワーク系プログラマー/エンジニア」です。
例えばウイルスやサイバー攻撃に対抗するシステムの設計を行う「セキュリティエンジニア」などが有名。
クラウドが一般化したことで「Microsoft Azure」「Google App Engine」「Amazon Elastic Compute Cloud」にスクリプトを書いたり、PythonやPHP、JavaScript等の理解も必要となります。
<ネットワーク系プログラマー/エンジニアが使うプログラミング言語の一例>
Java/Python/PHP/Ruby/JavaScript
⑦セールス系エンジニア
いわゆる「営業面」を担うエンジニアです。単独または営業担当と顧客訪問をし、技術面での説明を行います。
クライアント側の技術責任者と対等に話ができること、あるいはIT/システム系に明るくない担当者にもわかりやすく説明ができる力、現場のアップセル提案や金額調整等の営業スキルも求められます。
プログラミングやシステム構築に関する経験と造形に深いのが大前提であり、WEBサイト制作で言えば「ディレクター」のような役回りとも言えます。
⑧ITコンサルタント
これまで見てきた①〜⑦のキャリア等、プログラミングの実務経験を活かし「コンサルタント」として就職や独立する道もあります。
単にクライアント側の要望どおりにシステムやWEBサイトを構築するのでなく「経営課題」「IT戦略」段階から入り込み、課題解決のソリューションとして新しいシステムの提案や古いシステムの刷新などを行うのが「ITコンサルタント」。
社内でプロジェクトマネージメントを牽引することもあり、マネジメント能力も求められます。
⑨個人事業主
いわゆる「フリーランス」です。起業家として法人設立まではいかないけれど、会社務めのサラリーマンでもない。
自分の腕で、大小さまざまな案件をこなすワークスタイルです。
制作チームへの一時的な加入もあれば、個人で1つのWEB案件や定期・不定期メンテンナス、時にSEOコンサルなどの集客要素、「3C分析」から始まるマーケティング施策も含めた相談に乗るケースも。
自分のスキルが足りない場合は外注に作業を振ったり、協業で案件打合せに臨むなど業務スタイルに制限はありません。
⑩IT起業家
これまで見てきた①〜⑦のエンジニア職種はあくまでプログラミングを主役にした仕事でした。ただしプログラミングの可能性はそこにとどまりません。
Facebookのマーク・ザッカーバーグやTESLAのイーロン・マスクのように「元エンジニアの企業CEO」という道もあります。いわゆる「IT起業家」「IT社長」。
自身でサービス開発等は行うものの、同時に社長でもあり、ゆくゆくは開発自体も他の担当者に任せ、自身は経営に専念するパターンです。
「なりたい自分」からも逆算してみる
プログラミング言語だけで学習の方向性を決めようとすると、どうしてもさまざまな情報に左右されてしまいます。
どの言語もメリットは多分にあり、学んで損をするようなこともないからです。(汎用系言語は除く)
どんなプログラミング言語を学ぶか悩む場合は「なりたい自分」から考えると良いでしょう。
ゲーム系のプログラマーになりたいのか、手堅いオープン系のスキルを身につけたいのか、ゆくゆくは起業して経営したいので自身の考えるサービスに必要な言語にするのか、などなど。未経験からエンジニアを狙う場合も、まずはコツや学習法、職種の理解は大切です。
もしプログラミング軸での将来像がわからない場合は「どのような生き方をしたいか」という視点からも考える。
会社員や役員を目指すのか、一定の経験値は必須ですがフリーランス、起業家になりたいのかなど選択肢はさまざまです。こういった進路の多彩なバラエティは、プログラミングならではの良い点と言えるでしょう。
プログラミングは一定レベルの習得までが決して容易ではなく、また一生勉強し続けるジャンルであるという大変さはありますが。ただし、そういった困難はどんなジャンルの仕事にもついてまわるものです。
先輩エンジニアの話も客観的要素に
進路については、先輩エンジニアの話を何人かに聞いてみるのも良いでしょう。
先輩たちのリアルな経験談から見えてくるものもあると思います。トレンドの言語や業界の将来性、メリットの多い職種やデメリットなど、多用な意見が聞けるでしょう。
一方で、偏った個人の感想である場合もあるので注意も多少必要になることも覚えておきましょう。アドバイスを求める際は感謝はしつつも盲信せず客観的な視点を持ち、同時に複数の人に意見を求めるのは大事なこと。
プログラミング学習は、まずは基本を固めるのが重要ですが、その基本学習の段階から、ぼんやりと将来像を描くのは大切です。
いざというとき、自分の進むべき道を選択できるよう、調べたり話を聞く機会を自分で作ったり、さまざまなネット検索の手法を使って検索力を高めておくなど、能動的に情報を集めるクセをつけておきましょう。
上手な「プログラミング学習」とは?
当サイト「メンタレ」は、メンターを一時的にレンタルできるサービス。
独学の途中や挫折したところからなど、さまざま場面からのスタートをメンターが「実践講座」というかたちでサポート。
「ココは人に聞きたい」「完全に行き詰まった」「この箇所は講座とか受けたいなあ」そんな願いを叶えます。
単なる質問チャットや動画教材とはちがい、自分の弱みを系統立てて修復できるのが特長。
独学の方、挫折したが再挑戦したい方、ITに苦手意識がある方、昨今の派手なプログラミングスクールには違和感を感じる方、自分のペースで着実に学んで挫折を回避したい方。
一度、お気軽にご相談ください。