読めばわかる SE(システムエンジニア)とは
SE(システムエンジニア)って何?と聞かれて答えられますか?答えられる方は、ここでさようなら。
私も一応SEの端くれ。今回はIT関連の記事を書いてみます。
IT業界以外の方には、業界内はかなりわかりにくいと思います。横文字だらけですし、いろんな肩書の人がいます。
例えば、プログラマって?と聞かれたらなんとなくイメージは湧くと思います。プログラムを作る人ですよね。それでほぼ正解です。
しかしSEの仕事ってご存知ないのではないでしょうか。
順を追って説明していきます。
1.プロジェクトの進め方
IT業界ではプロジェクトというものを作って仕事が進行します。
そのプロジェクトは、次のような工程で進みます。
①要件定義
↓
②外部設計
↓
③内部設計
↓
④プログラミング
↓
⑤単体テスト
↓
⑥結合テスト
↓
⑦システムテスト
↓
⑧移行
↓
⑨運用・保守
分かりやすいように簡略化しています。また、現役SEの方から見ると古いと感じられるかもしれません。業界外の方にもわかりやすいようにウォーターフォールモデルをベースにしています。
このうち主に④プログラミング⑤単体テストを実施する人がプログラマーです。
③までにほぼ作るべきものの姿は決定しており、設計書というドキュメントが作成されています。プログラマーはその設計書に従って、特定のプログラミング言語を使ってプログラムを作ります。
その後⑤の単体テストを実施し、自分が作成したプログラムが③の設計書どおりに動くかどうかをチェックします。
チェックした結果、うまく動かなければ修正を行います。
これがプログラマーの仕事です。
かなりせまい範囲だと思いませんか?
2.SE(システムエンジニア)の仕事
上の工程で④⑤⑨以外のすべてを担当するのがSEと考えるとわかりやすいと思います。
ただし、②と⑦は別のSEが実施することは、よくあります。
プロジェクトの規模や種類、期間によります。
このようにSEという仕事は様々な工程を実施するため、幅広く深い知識が要求されます。
プログラマーとSE、どっちが難しいと思いますか?
3.金額
当然SEの方が求められるスキルは高いです。
その分、金額も高いです。
月あたりで見ると、プログラマーよりも10万以上高い場合がよくあります。
しかも、〇〇SE、××SE、△△SEなどといったように、各分野の専門SEがいます。求められるスキルが高ければ高いほど、また、スキルの希少性が高いほど単価は向上します。
4.SEは何をするのか
①はお客様が求める機能をまとめる作業です。
②は全体を部品に分割していく作業だと考えてください。
③は部品を設計する作業です。
⑥⑦はテストですね。
⑧は実際にシステムが動き出してからの話です。
これらの作業をSEという職種の方がやっています。
5.SEに求められるもの
第一は当然ですが技術、および、そのベースとなる知識です。
他には対話能力、ドキュメンテーション能力は必須です。
SEの仕事は調整に次ぐ調整です。その間、様々な人と会話をして、調整を行い、決まったことをドキュメントに残していきます。この時に専門知識と技術が要求されます。
また、全体を見渡す力がなければ、細部ばかりに目が行ってしまい、失敗します。自分の担当部分だけを見ていたらダメだということですね。
6.その他
この他にも、プロジェクトを管理する仕事(プロジェクトマネージャ=PM)や、それを補佐する役割のPMO(プロジェクトマネジメントオフィス)などもあります。SEやプログラマとはまた違った仕事です。
⑨は運用専門の人が行うことが多いです。扱うシステムによっては24時間体制で監視することもあります。そのような専門部隊や会社が存在するということです。
まとめ
IT業界には様々な役割をする人がいて、それぞれに名称がついています。今回紹介したSEも、専門分野ごとに〇〇SEというように呼ばれます。
業界外の方にはわかりにくかったかもしれませんね。
ざっくりいうと、SEはプログラマーの上位ぐらいで考えておくといいかもしれません。(実際はそんなにくっきり分けられないのですが…)
いただいたサポートは、おじさんの活動費としてとんでもなく有用に使われる予定です。