こんにちは、ITエンジニア専門の転職エージェントの中の人です。
IT系の職種はわかりにくいものが多いですが、「エンジニア」と「プログラマー」の違いもわかりにくいかも知れません。
では、「エンジニア」と「プログラマー」の違いは何でしょうか。
今回は「エンジニア」と「プログラマー」の違いを、「仕事内容」、「資格・スキル」、「未経験からの転職難易度」という観点で、説明します。
この記事を書いた人はこちら
エンジニアとプログラマーの違い
エンジニアは、ITに関わるエンジニア全てを含めて「エンジニア」と呼びますが、プログラマーは「開発言語」を使って、プログラミングをする人を「プログラマー」と呼びます。
つまり、エンジニアの中に「プログラマー」という職種があると考えると、わかりやすいでしょう。
目で見てわかりやすいように、ITエンジニアを大きく4つに分類し、プログラマーの仕事を赤枠で囲いましたので、下記図を見て下さい。
エンジニアとプログラマーの仕事内容の違い
最初の図で、4つに分類したエンジニアの仕事を説明したあとに、プログラマーの仕事を説明します。
・業務系エンジニアの仕事:
業務系エンジニアは、企業が使う業務システムを作るエンジニアです。
例えば、会計システム、営業管理システム、受発注システム、人事システムなど、企業が運営する中で使われるシステムを作る事が仕事です。
開発言語は、Java、.net、C#などが多く使われています。
・Web系エンジニアの仕事:
Web系エンジニアは、Webを利用したシステムを作るエンジニアです。
例えば、インターネット事業者などが作るWebサービスを作るエンジニアをWeb系エンジニアと考えると、わかりやすいかも知れません。
開発言語は、PHP、Python、Ruby、JavaScriptなどが使われています。
・組込み系エンジニアの仕事:
組込み系エンジニアは、モノを作るエンジニアと考えるとわかりやすいでしょう。
例えば、スマートフォン、デジタルビデオカメラ、カーナビ、医療機器などに使われているソフトウェアを開発するエンジニアを、組込み系エンジニアと呼びます。
開発言語は、C、C++、VC++などが使われています。
・インフラ系エンジニアの仕事:
インフラ系エンジニアは、インターネットなどを繋ぐ際に必須となる、ネットワークやサーバーを構築、運用するエンジニアです。
目に見えるものをプログラミングで作るわけではないため、インフラ系エンジニアは基本的にはプログラミングは行いません。
・プログラマーの仕事:
プログラマーは、業務系エンジニア、Web系エンジニア、組込み系エンジニアの中で、「プログラミングを専門とする人(具体的に言うと、詳細設計・開発の専門家)がプログラマーであり、開発言語を使ってコードを書く事が仕事です。
「エンジニアとプログラマーの違い」の図を再度見てもらうと、更に理解度が進むかも知れませんので、再度下記に図を掲載します。
エンジニアとプログラマーの資格・スキルの違い
今回も、エンジニアの職種を分けて、必要とされる資格やスキルの違いを説明します。
・業務系エンジニアに必要とされる資格、スキル:
業務系エンジニアは、企業のシステムを開発しますので、企業の事業運営で必要とされる業務知識(金融業界、製造業界、物流業界といった業界知識から、会計知識、生産管理知識、販売管理知識などの業務知識まで)から、設計スキル、プログラミングなどがあると、活躍が出来ます。
求められる知識やスキルは幅広く見えますが、一つの業界や一つの業務に知見があるなど、何かしら強みがある場合は、業務系エンジニアとして活躍がしやすいでしょう。
業務系エンジニアの必要とされる資格は、必須ではありませんが、基本情報技術者や、応用情報処理、OracleMaster、PMPがあると、尚良いでしょう。
・Web系エンジニアに必要とされる資格、スキル:
Web系エンジニアは、業務系エンジニアと比べてシステム開発の進め方が異なる場合が多く、特にプログラミングスキルがあると活躍しやすい職種です。
サーバーサイド(PHP、Ruby、Pythonなど)もしくはフロントエンド(HTML、CSS、JavaScript)のスキルが必要となり、資格よりも「実務で何が出来るか」が重要な職種です。
資格を取得するよりも、手を動かして勉強することが趣味であるような人が、活躍しやすいポジションです。
・組込み系エンジニアに必要とされる資格、スキル:
組込み系エンジニアは、プログラミングのボリュームが多い職種であり、よく使われる開発言語であるC、C++、VC++などのプログラミングスキルが強く求められ、今までどれだけコードを書いたか?が求められやすい職種です。
また、RTOS(リアルタイムOS)や組込みLinuxなどを用いた開発経験があると、更に良いでしょう。
組込み系エンジニアの資格としては、必須ではありませんが、ETECやエンベデッドシステムスペシャリストがメジャーと言えるでしょう。
・インフラ系エンジニアに必要とされる資格、スキル:
インフラ系エンジニアはネットワーク機器(ルーター、スイッチなど)やサーバOSの知識が必要とされますが、プログラミングの知識は必要とされません。
ただし、プログラミングが出来るインフラ系エンジニアは需要が高く、最近プログラミングも出来るインフラ系エンジニアは非常に増えています。
必要とされる資格としては、Cisco技術者認定(CCNA、CCNPなど)やLPIC(LinuC)、ネットワークスペシャリストが主要と言えるでしょう。
・プログラマーに必要とされる資格、スキル:
プログラマーに必要とされるスキルは、プログラミング(コーディング)です。
一つの言語に豊富な経験を持っても良いですし、3つ程の複数言語に強みを持っても良いと思います。
ただし、プログラマーに資格はそれ程関係なく、資格を取るよりも「プログラミングが趣味」といえるようなタイプの方が、活躍はしやすいでしょう。
エンジニアとプログラマーの、未経験からの転職難易度の違い
・業務系エンジニアの未経験からの転職難易度:
難易度:★★★☆☆(3/5)やや難しい
業務系エンジニアに未経験から転職をすることは、やや難しい職種ではありますが、しっかりプログラミングの勉強をして臨めば、未経験転職は問題無く可能です。
ただし、しっかり会社選びを行わないと、研修でプログラミングを学べても、配属先ではプログラミングが出来ず、テストやアプリケーション保守といったオペレーション業務になる事もありますので、プログラミングをしっかり勉強して転職をし、転職先を選んだ方がよいでしょう。
・Web系エンジニアの未経験からの転職難易度:
難易度:★★★★☆(4/5)難しい
Web系エンジニアに未経験から転職をすることは、難しい職種ではありますが、プログラミングを自分で勉強して、自分で作品・ポートフォリオを作っておけば、未経験転職は可能です。
ただし、最初は年収が安くなる傾向もありますので、スキルアップをして年収を上げていく流れとなるでしょう。
・組込み系エンジニアの未経験からの転職難易度:
難易度:★★★★★(5/5)かなり難しい
組込み系エンジニアに未経験から転職はかなり難しく、大学や専門学校でC、C++における開発を学んでいる人が有利であり、最低でもCであればポインタの理解レベルは欲しいところです。
未経験の場合は、最初はテスト、評価検証といった下流工程からスタートする可能性は高いですが、勉強を続ければ、組込み系エンジニアになれるといえるでしょう。
・インフラ系エンジニアの未経験からの転職難易度:
難易度:★★☆☆☆(2/5)やや易しい
インフラエンジニアは社会人から学びだす人が多いため、インフラ系エンジニアの未経験からの転職難易度は比較的易しい方だと言えるでしょう。
ただし、会社選びをしっかりしないと、監視オペレーターやテクニカルサポートといったオペレーター業務に配属となることもありますので、エンジニアとしてスタートダッシュをしたい方は、会社選びに気を付けましょう。
・プログラマーの未経験からの転職難易度:
難易度:★★★☆☆~★★★★★(3-5/5)やや難しい
プログラマーは、業務系エンジニア、Web系エンジニア、組込み系エンジニアの開発工程のエンジニアですので、難易度に幅がありますが、基本的に未経験でプログラマーを目指すのであれば、業務系エンジニアかWeb系エンジニアが主要なキャリアパスといえるかも知れません。
プログラマーを目指すのであれば、やはり手を動かしてプログラミングを学び、自分で作品を作る事が一番おすすめです。
■転職相談・未経験ネットワーク・インフラエンジニア求人を紹介してほしい方のお申込みはこちら
■CCNA・LPICの無料資格取得支援、転職支援サービスを希望の方はお申込みはこちら
キャリアや転職などに関するご質問・ご相談を希望される方はこちらから
LINEで相談 >>
メールで相談 >> メールからのご相談
ネットワーク・インフララボは個人情報保護を遵守します。ご相談頂いた際に伺った個人情報を含め、適切に管理します。また、相談内容に関しては、ご相談者様の同意が無ければWEBに掲載は致しませんので、ご安心下さい。
※お電話での匿名相談を希望の場合は、お電話相談希望の旨などをLINEもしくはメールに記載下さい。
※ご相談に費用はかかりません(無料です)。