プログラマーとシステムエンジニア(SE)とよく耳にするけど何が違うのかな…
求人とかでも書いてあったりするので、どういったものか知っておきたい!
上記、お悩みの方向けの記事になります。
プログラミングの勉強し始めて、いずれ就職したいと思われている方やフリーランスを目指される方は知っておいたほうが良いです。
システム開発を行う上で、プログラマーとシステムエンジニアとでは仕事内容が変わるからです。
もちろん、収入面でも変わってきます。
本記事では、初心者向けにプログラマーとシステムエンジニアの違いと各々の仕事内容について記載していきます。
プログラマーとシステムエンジニアは何が違うのか
プログラマーとシステムエンジニアの違いについて記載していきます。
ざっくり以下のイメージで考えてもらえればいいと思います。
設計をする人:システムエンジニア
プログラミングする人:プログラマー
家で例えると。
設計図を作る建築士:システムエンジニア
家を建てる大工さん:プログラマー
料理で例えると。
レシピやメニューを考える料理長:システムエンジニア
料理を作る人:プログラマー
初心者向けにイメージしやすいようにいくつか例をあげてみました。
もう少し詳しく書くと以下の通りです。
システムエンジニア
よく略してSEと呼ぶことが多いです。
基本的な仕事は、顧客からどういったシステムを作りたいかヒアリングし、システムの設計を行う作業がメインになります。
いわゆるシステム開発における上流工程を担当します。
プログラマー
プログラマーは、システムエンジニアより作成した設計書をもとに製造(プログラミング)を行う人になります。
プログラミングするだけでなく、単体試験まで担当することが多いです。
下流工程を担当します。
ちょっと言葉だけではイメージしにくいと思いますので、一般的なシステム開発の流れと合わせて見てみると以下のような役割分担になります。
↓
外部設計(基本設計)
↓
内部設計(詳細設計)
↓
製造(プログラミング)
↓
単体試験
↓
結合試験
↓
総合試験青色:システムエンジニア
赤色:プログラマー
ただ、案件によってはプログラマーが詳細設計を行ったり、結合試験も行ったりすることもあります。
各種工程でどういうことするかは以下の記事でまとめていますので軽くご確認頂くと各作業内容をイメージできるかと思います。
https://sasasorato.com/programming-how-to-work/
上記、色々書きましたがまとめると以下のようになります。
冒頭に書きました通り、設計を行う人がシステムエンジニアでその設計をもとにプログラミングする人のことを一般的にプログラマーと呼ばれます。
システムエンジニアはプログラマーの延長線上
システムエンジニアになるにはどうすればいいの?という話になるかと思いますので、こちらを簡単に書いていきます。
実際のところ、医者や弁護士みたいに何か資格が必要というわけではなく、何かを境としてシステムエンジニアになれるというものではありません。
前の項目で書いた作業を主に行っている人がシステムエンジニアと呼ばれます。
なので、自分がシステムエンジニアかどうかは自称で名乗ったりしてるところも多いです。
もしくは、周りから認められてその作業を任せてもらったりなどがほとんどかと思います。
ただ、ほとんどの方はシステムエンジニアとしての仕事をするまでにプログラマーを経験している方が多いです。
というのもプログラミングを経験していないと、設計する際にその仕様が実現可能かの判断が難しいからです。
おそらく、この業界の企業だと新入社員ははじめにプログラミンの製造や試験を行うことがほとんどで、経験を積むにつれて設計を任されはじめたりし、最終的には顧客の前に立って要件定義をしてシステムエンジニアとしてのキャリアを積んでいく流れが多いです。
なので、システムエンジニアはプログラマーの上級職っぽいイメージで思って頂けたらと思います。
プログラマーとシステムエンジニアはどちらを選べばいい
プログラマー、システムエンジニアどちらを選ぶかは本人次第になります。
システムエンジニアとして頑張りたい場合は、顧客との会話は必須になりますのでそれなりにコミュニケーションが苦でない人でないと難しいと思います。
プロジェクトの管理も行ったりもするので、色々やることが多いですがその分収入が良かったりします。
逆にプログラマーであれば、顧客折衝がほぼない代わりにプログラミングの技術や知識等のスキルを伸ばしておく必要があります。
基本的にこの業界に入る人はプログラマーになりたがる人が多いので、自身の能力を磨き続けないと難しいところもあります。
システム開発の企業に就職した場合は、いずれシステムエンジニアのキャリアへ向かうことのほうが多いです。
企業としては、プログラマーよりシステムエンジニアを求めている傾向があるためです。
※収入面もシステムエンジニアのほうが良いため。
また、企業によっては技術に特化した肩書を用意してくれているところもあります。
そういった企業であればプログラマーとしての道を進む事も可能ですが、やはり勤める会社次第なところがあります。
もし、ご自身が将来どういった職種で働きたいかをちゃんとイメージした上でご自身のキャリアプランと合うかこのあたりを就職する際に確認するといいでしょう。
ただ、プログラマーだと収入が低くなるというわけでもなく、フリーランスとして企業から信頼して仕事を任せてもらえる実績さえあれば、年収1,000万を稼いだりする人もいます。
最後に
システムエンジニアとプログラマーの違いについて書いてみました。
概ねどういった違いかご理解頂けたかと思います。
最後にまとめる以下の通りです。
・設計をする人
・会社に勤めている場合は収入高め
・顧客とのコミュニケーションが重要
・プログラムする人またはテストする人
・フリーランスとして活躍できれば収入高
・常に新しい技術を身に着ける向上心が重要
主に上記を押さえておけば問題ないかと思います。
プログラミングをはじめたばかりの人でいずれか自身で選択することになるので、今のうちにしっかりと理解しておきましょう。
コメント