エンジニアの知識

システムエンジニア(SE)とは?仕事内容や年収・残業時間について解説

投稿日:


下記のことが、知りたい人向け

・システムエンジニア(SE)の仕事内容
・システムエンジニア(SE)の残業について
・システムエンジニア(SE)の年収
・システムエンジニア(SE)のキャリアパス
・システムエンジニア(SE)に向いてる人

この記事を読むと、システムエンジニア(SE)について、知ることが出来ます。

システムエンジニア(SE)の仕事内容

システムエンジニア(SE)の仕事内容は主に、設計や要件定義などの上流工程を担当します。

要は、ユーザから「どのようなシステムが欲しいか」をヒアリングし、形にしていく作業。

製造(プログラミング)に関しては、プログラマーが担当するため、ユーザーの要望を正確に伝えることも重要です。

また、依頼されたシステムが「実現可能か」「どのように実現すればいいか」を考える役割もある為、高度な技術と知識が求められます。

開発の流れを知ろう

システムエンジニア(SE)の仕事内容を深く知るには、システム開発の流れを知っておくべきです。

開発の流れは以下の通り。

「要件定義(要求定義)⇒基本設計⇒詳細設計⇒実装⇒単体テスト⇒結合テスト⇒総合テスト⇒導入」

要件定義を開発の初期段階で行い、最終的には導入して終わりです。

契約内容によっては、導入後に「運用・保守」をする場合がありますが、そこに関しては別の記事で詳しく解説しているので、今回は深堀しないでおきましょう。

それでは、各工程については、次の項目で詳しく解説していくので、ぜひご覧ください。

例に出した、「開発の流れ」は、開発モデルとして最も一般的な「ウォータフォールモデル」だよ
ウォーターフォールモデルとは?開発手法を詳しく解説

要件定義

要件定義とは、ユーザから依頼されたシステムが「どのようなものか」を、ざっくりとまとめる工程です。

システム開発の最初の段階で、最も重要な部分。

まとめる内容としては、以下が一般的

・システムの概要
・システムを導入する目的
・依頼された機能
・利用するDBやツール

システムエンジニア(SE)はユーザからの要望を、ヒアリングして聞きだしていきます。

この工程をじっくりやっておかないと、後々、仕様変更が発生し工数が超過する原因となるのです。

要件定義の内容がしっかりまとめれるシステムエンジニア(SE)は、優秀な証と言えるでしょう。

基本設計

基本設計書とは、要件定義書を元に「システムがどのように動くのか」をまとめる工程になります。

例えば、以下のような電卓を、基本設計書にまとめた時のことを考えてみましょう。

基本設計書の内容

・「税率」押下⇒税率を設定する
・「税抜」押下⇒税抜きで計算する
・「税込」押下⇒税込みで計算する
・「C/CE」押下⇒クリア
・「MRC」押下⇒メモリの数値を表示する
・「M-」押下⇒表示されている数値を、メモリから引く
・「M+」押下⇒表示されている数値を、メモリに足す
・「数字」押下⇒上に数字が入力される
・「×」押下⇒掛け算される
・「-」押下⇒引き算される
・「+」押下⇒足し算される
・「=」押下⇒計算結果が表示される

上記の通り。

かなり簡単に書きましたが、ボタンを押すと、どのような動作をするかわかりますよね。

このように、対象のシステムに「どのような機能があるか」を、まとめていくのが基本設計になります。

詳細設計

詳細設計は、基本設計書の内容を元に、「プログラマーに、どう作ってもらうか」をまとめたものです。

よく、基本設計書と混同されがちですが、実際は下記のような違いがあります。

基本設計書⇒システムの表面的な機能・動作を記載したもの。
 
詳細設計書⇒システムの機能を、どうやったら実現できるか記載したもの。

要は、内部的な動きを記載したものが、詳細設計になるのです。

その為、内部からシステムを作っていくプログラマーは、基本的に詳細設計書を見て製造していきます。

企業によっては、基本設計と詳細設計が、ごちゃまぜになっている場合もあるんだ。
どちらか片方しかなかったりね!
そんな時は、状況を読み取って、柔軟に対応するんだ

実装(プログラミング)

実際に、システムの形を作っていく工程を実装と言います。

また、製造と呼ぶこともあるので、覚えておきましょう。

SEが作成した設計書を元に、プログラマーがプログラミングしていき、必要な機能を作っていきます。

使うプログラミング言語は「Java」「C」「PHP」など様々で、要望のシステムによって最適な言語が変わります。

数多くあるプログラミング言語ですが、一つの言語を覚えておくと、他の言語の取得も早くなる為、全く知識のない言語で「開発を任される」ことも珍しくありません。

ここから下の行程が、プログラマーの仕事だよ

単体テスト

単体テストとは、実装して出来上がったシステムに不具合がないか、機能ごとに確認する作業です。

「基本設計」の時に例にした、電卓システムを、再び例にしてみましょう。

電卓では、各ボタン毎に異なる機能があります。

「足し算」「掛け算」「割り算」などですね。

そのような機能に対して、単体的にテストをしていきます。

例えば、「足し算機能が正常に動作するか、徹底的に確認」といったイメージ。

実際、電卓での計算は「掛け算や割り算」を組み合わせることもあるのですが、他の機能を無視して、一つの機能のみをテストするのです。

結合テスト

それぞれの機能をつなぎ合わせて、テストするのが結合テストです。

「単体テスト」では、一つの機能だけを徹底的にテストしますが、結合テストでは反対に、それらの機能を組み合わせてテストしていきます。

単体テスト時、電卓の「割り算機能」だけで、機能実証をしてましたが、ここに「掛け算」や「引き算」が加わると、結合テストになります。

とりあえず、「複数の機能を、組み合わせて行うテスト」と覚えておけばOKです。

総合テスト

テストの最終段階である「総合テスト」は、実際に現地の環境でテストを行います。

「単体テスト」「結合テスト」でも、なるべく本番環境と同じものを利用するのですが、実際現地で稼働させると不具合が起こることも珍しくありません。

その為、総合テストもシステム開発において、非常に重要なものになってきます。

総合テストの時に、起こりやすい不具合として、「想定していないDBデータがあった」場合が考えられます。

実際、結合テストまでは、テストデータを使ってやることが多い為、「どのようなデータがあるか」わからないことも多いです。

その結果、想定外のデータが本番環境であった場合に、不具合が発生するのです。

導入

テストまで終わったシステムを、実際の現場に導入する作業です。

現場では、「DB」「ツール」「ハード」などの環境を整え、システムが動作する状態に整える必要があります。

実際、ここですんなり、導入出来ることは少なく、なにかしらの問題は大抵出てきます。

その為、システムに関する知識の他に、「OS」「DB」などの知識が必要になることも珍しくありません。

システムエンジニア(SE)の年収

システムエンジニア(SE)の年収については、厚生労働省が「賃金構造基本統計調査」で発表しています。

年齢 平均年収(男性) 平均年収(女性)
20~24 337.6万円 341.9万円
25~29 450.9万円 431.2万円
30~34 541.0万円 497.2万円
35~39 582.1万円 497.4万円
40~44 631.2万円 522.5万円
45~49 667.8万円 543.3万円
50~54 664.5万円 580.2万円
55~59 645.3万円 619.4万円
60~64 468.4万円 365.3万円

上記によると、50~54歳男性の年収が最も高く、667.8万円となっています。

これは、他の職種と比べてかなり高い数値です。

今後もIT需要が増えることから、衰退していくことは考えにくいでしょう。

システムエンジニア(SE)の残業時間

転職支援サービス「DODA」によると、システムエンジニア(SE)の残業時間の中央値は、月30時間程度と言われています。

大体一日、1時間30分程度ですね。

全職種の平均が月20時間程度なので、「通常より残業は多め」と言えるでしょう。

といっても、年収に関しては通常より高い為、不当な労働をしている訳ではないです。

また、「残業」のイメージがあるSEですが、それは昔の話しで、今は大分改善されています。

このペースでいくと、今後も働き方改革によって、残業時間はドンドン短くなっていくでしょう。

もし、今
「終電まで帰れない・・」
「残業時間が100時間超えてるよ・・」
という人は、SEという職種が悪いのではなく、会社が悪いので、さっさと転職した方が良いですよ。

システムエンジニア(SE)に向いてる人

システムエンジニア(SE)には、向き・不向きがあります。

✅SEに向いてる人

・コミュニケーション能力が高い人
・物事を論理的に考える人
・細かいことに気づける人
・向上心が高い人
・我慢強い人
・すぐに質問できる人

上記の通り。

ただ、これらのことに当てはまらないと「SEになれない」という訳ではありません。

最も大事なのは、「SEになりたいかどうかです。

「SEの素質」は仕事をしていく中で、能力が上がっていくため、能力が備わっていないからといって、諦めてしまうのはもったいない。

まずは、「考えるより、行動!」

これが一番大事ですよ。

最後に

もし、あなたがSEへの転職を考えているのであれば、仕事内容を知っておくことは重要です。

ただ、実際にWeb上で見ただけでは、SEについて、ぼんやりとしかわからないのではないでしょうか?

その為、詳しく知りたいのであれば、実際にSEとして働くのが一番ですよ。

-エンジニアの知識

Copyright© ITエンジニアの底力 , 2020 All Rights Reserved Powered by STINGER.