「SE(システムエンジニア)とプログラマーって何が違うんだろう?」
調べてみても、同じような仕事内容です。
何が違うのか。はっきりとした答えが知りたいですよね。
違うのは、作る過程での役割分担。
プログラマーは実際に作る作業をする人です。
2つのお仕事をもっと具体的に掘り下げてみましょう。
掘り下げてみることで、どちらを目指すべきか分かります。
また、実際に働くうえでの待遇の違いなどを今回の記事でお話していきます。
目次
システムエンジニア(SE)とは
SE(システムエンジニア)は「管理する」職種です。
SE(システムエンジニア)の仕事
- クライアントからどんなものが欲しいか要望をヒアリング。
- ヒアリングしたものを元にシステムの設計。
- システムの作成・テスト・実際の運用まで管理。
プログラマーと違いは
- 「どんなものを作るか」を考える仕事がある
- 作るものに対して一番詳しくなければいけない
- 作る時の指示出しや、作った後のテストや運用サポートにも関わる必要がある
「人」を相手にすることが多くなります。
それではSEのお仕事を具体的に見ていきましょう。
主にシステムの設計を行う
- お客様がどんなシステムが欲しいか聞き、よりよい提案をして要望を明確にすること。
- お客様の要望に基づいて見える部分(画面や動きなど)、見えない部分(どうプログラミングするかなど)の設計をする。
この2つがSEのメインの仕事となります。
厚労省の定義でも、SEは「設計者」という形で定義されています
①で何を作るかを考え、②で設計書を作ります。
設計書を作ったら、プログラマーに指示を出します。
設計図通りに指示を出したプログラムをプログラマーに作ってもらったり、また自分も一緒に作ったりもします。
テスト、運用保守を行う
「自分の作った設計書通りに作られているか、動いているか」を確認します。
テスト、運用保守ともに他の人に頼んで行ってもらうこともあります。
その場合も担当の人と密に連携をとって確認作業を行います。
運用保守とはお客様にシステムをお渡しした後のサポートのことです。
プログラマー(PG)とは
プログラマー(PG)はプログラミングがメインの職種です。
SEとの違いは?
- SEは作るものを考える仕事
- プログラマー(PG)はSEが考えたものを実際に形にする仕事
「コンピュータ」を相手にすることが多くなります。
それではプログラマーの仕事を具体的に見ていきましょう。
設計をもとにプログラミングを行う
SEから設計書を貰い、指示を出してもらってその通りに動くようプログラムを作成します。
コードの書き方によってはバグが頻発してしょっちゅう動作が重くなったり、逆にスムーズで使いやすいシステムになったりします。
SEに比べると自由度や独創性が少ないと思われがちです。
コードレビューを行う
仕事の進め方にもよりますが、コードレビューといって、書いたものを他の人にチェックをしてもらうこともあります。
もちろん、自分もレビューする側に回って同じ作業者のコードを見ることもありますよ。
コーディング後のテストを行う
自分の書いたコードは自分でテスト・修正を行うことがほとんどです。
また、他の人たちが担当した部分のコードと合わせてテストするときは、SEや同じ作業者の方と協力してテストしていくこともあります。
どちらを目指したら良いか
まずは、という意味ではプログラマーを目指しましょう!
その後、適正によってプログラマーのままでいるか、SEになりたいか、目指す方向を考えて下さい。
SEの求人例を見てみましょう。
これは実際の求人例です。
求人サイトDodaにて検索。
「SE」の求人は調査時5184件。
うち「未経験者」を含まないで検索すると5051件ヒット
SEでは経験者を多く募集していますね。
プログラマーは未経験でも多く募集しています。
そこからSEとなる人も多いです。
SEは未経験でもなれないわけではありません。
SE求人全体のおよそ2.5%です。
このように、設計業務をメイン・優先としあまり製作には関わらないSEもそれなりにいます。
しかし、多くはプログラミングから経験させる会社が多いです。
なぜでしょうか?
知識がないと実現不可能な設計を組んでしまうこともあります
とうてい実現できないような機能を盛り込んだ設計書を書いてしまい、現場のプログラマーが「できません!!」と悲鳴を上げても製作者の気持ちや状況を理解できません。
プログラミング知識は必須ではありません。
場合によっては、なくてもなれない訳ではありません。
そういうわけで、プログラミングを一通り経験したら、どちらの道へ進むか考えてみましょう。
それぞれ必要なスキルがあります。
何事もやってみるのが一番です。
システムエンジニアに求められる能力
- コミュニケーション能力が重要なウエイトを占めます。
- マネジメント能力も必要です。
SEは設計者で、全体の製作段階の管理をする必要があります。
設計をするときは‥
- お客様の説明をよく聞き取る必要があります。
- 自分たちのもつ技術によってできる事などを説明しなければいけません。
- 場合によっては金額の交渉もあります。
その要望を元に、それぞれの作業者に適切な指示をしなければなりません。
その指示の中には、予算に基づいて決められた、どれだけの時間で何日までに、というものも含まれます。
ここで問われるのは、円滑にプロジェクトを進める計画を立てられるマネジメント能力です。
さらにお客様・プロジェクトメンバーを引っ張っていくコミュニケーション能力も求められます<
プログラマーに求められる能力
- プログラミング技術が重要なウエイトを占めます。
- 言い換えると問題解決能力・論理的思考能力が必要です。
プログラミングをして動作チェックで動かない、ということはよくあります。
その中でどこが間違っているのだろう?それを解決する方法は?という問題にしょっちゅうぶつかります。
また、プログラミングは書いたとおりに動きます。
最近はこういった思考能力を鍛えるパズル!なんてものも売られていますので、こういったもので鍛えてみるのもいいでしょう。
システムエンジニアとプログラマー給与の違い
SEの方が仕事内容の幅の広さからお給料は高くなっています。
下記にて、2019年度政府統計調査の平均給与額データを出しています。
しかし、多くの場合SEになるのはプログラマーとして十分に経験を積んだ人が多いため、会社の勤続年数にも違いがあってこのような結果になっているようです。
実際に、平均勤続年数はSE12年、プログラマー7年となっていました。
また、データはあくまで平均値、会社勤めの方を対象にしています。
それを踏まえた上で、下記のデータを参考にしてください。
※下記に紹介している月収は税金や保険料が引かれる前の給与額です。
システムエンジニアの平均給与(月収)
平均月収:38万円
実際の求人サイトでの初任給(未経験):20万程度
多少変動があるようですが他職種の平均より常に上回っていますね!
また、補足として
- ボーナス:112.9万円
- 平均年収:568.9万円
となっています。
年収額の高さをランキングにすると129職種中19位でした。上位2割に食い込んでいます。
システムエンジニアの年収については別記事でより詳しく解説しています。
(参考記事:システムエンジニア(SE)の平均年収は約550万円!年収1000万円を目指す方法とは)
プログラマーの平均給与(月収)
平均月収:30.4万円
実際の求人サイトでの初任給(未経験):18万程度
こちらは他職種と比べて少々下回っており、年々そこに変化はあまり無いようです。
やはりSEがプログラマーより仕事範囲が広く色々なことをこなす必要があると考えると、この業界は仕事内容が賃金に反映されやすい世界なのだと感じますね。
また、補足として
- ボーナス:60.5万円
- 平均年収:425.8万円
となっています。
年収額の高さをランキングにすると129職種中63位でした。ちょうどランキングの真ん中に位置しています。
システムエンジニアとプログラマーを分けていない場合もある
会社・状況によってSEがプログラマーとして開発に関わったり、プログラマーがSEとして設計業務を任されたりすることがあります。
SE、プログラマーという言葉を同じ意味で捉えている現場もあります。
開発において役割担当の線引きがはっきりしていない場合に多いです。
SEという職種自体、プログラマーの人が「人手が足りないから設計もやっておいてね!」なんて空気で任されていつのまにかSEとして働いていた、なんてこともあります。
プロジェクトによって、ある時はSE、またある時はプログラマー、家に帰ると副業でやっているデバッガー(テストを専門でやる人)、なんて人もいます。
まとめ
いかがでしょうか。
一言にプログラムを勉強するぞ、といっても
- その先どんな形で働くのか
- どの分野を担当していくか
それによって、職種名が変わり、必要スキルが色々と増えていくことがあるということをお話させて頂きました。
ここを見て、まだどちらに適性があるかわからない・・・という方は。
- まずは自分ひとりで自分の作りたいと思うアプリを最後まで作ってみるとよいでしょう。
- 設計して、プログラムして、テストして・・・そうしてできあがったものを配信してみましょう。
また、わからないところを人やインターネットで質問することで、そういった界隈のコミュニケーションスキルが磨かれます。
コミュニティが広がって情報が得られることもあります。
その中で自分自身の適性ややりたいことがわかってくるでしょう。
独学ではなかなか厳しい面もありますので、プログラミングスクールでプログラミングを学ぶのもオススメです。
プログラミングジャパンでは授業の無料体験を行っています。
SE経験のある講師もいます。
あなたの疑問にお答えできます。
いろいろ聞きにきてくださいね!
あなたの夢、応援します!
プログラミングジャパンとは
プログラミングジャパンは日本初の「スマホアプリ開発」専門のプログラミングスクールです。
スマホアプリ開発企業と直接提携することによって他のスクールにはない
『スマホアプリエンジニア』としてのキャリアを最短2ヶ月で築くことが出来ます。