[PR]

システムエンジニア

システムエンジニア
×
仕事内容

システムエンジニア(SE)の役割

要求分析からシステム設計

システムエンジニア(SE)の仕事は、まず要求分析から始まります。これは、クライアントがどのようなシステムを望んでいるのかをヒアリングする仕事です。そのシステムを構築するためには、何人の人材が必要なのか、金額はいくらで売るのが良いかなどを、ここでヒアリングした結果を元に考えます。

例えば家を建てるときに「防音がほしい」とお客様に言われれば、「なぜ防音設備がいるのか」をたずねることでしょう。それと同じで、欲しいものとその目的など、詳細をはっきりとさせるのです。そして、具体的にどうすればいいのかを決めます。

次に、クライアントの要望を実現させるためにシステム設計を行います。これは建築家の行う製図のようなものです。SEはクライアントにわかりやすいようにシステムの設計書を書いていかなければなりません。内容を考えたり、どのようなモジュール・サブシステムで構築するかといったようなことを考えます。

システムの素材を書いていくといったところですね。基本的なSEの仕事というのは、要求分析からシステム設計までとなっています。基本的な設計・詳細な設計をして、そこで一旦終了です。あとはプログラマーがプログラミングをし、その後SEがテストをします。

場合によってはプログラミングからテストを行うこともある

基本的には、SEはプログラミングをしませんが、プログラミングを行うこともあります。小さなプロジェクトだと、SEがプログラムを書くこともあるので、意識しておきましょう。それでも、稀なことではありますが。

プログラミングが終われば、次は動作テストです。システムがしっかりと作動するかどうかをテストして、それにクリアすれば納入となります。以上が、SEの仕事内容です。

システムエンジニアとプログラマーの違い

よく、SEとプログラマーが比べられることがあります。両者の違いは、専門とする仕事にあると考えれば問題ありません。プログラマーはプログラムを作り、システムを実装する専門家。SEはシステム設計の専門家です。

製図をする建築家と、実際に工事をする大工という例え方をすることが多いですね。

システムエンジニアに必要なスキル

論理的思考力

システムエンジニアに必要な能力・スキルはいろいろありますが、まずは論理的思考力がなければなりません。

金貨の問題が出されることが多いです。12枚の金貨のうち1枚が偽物で、天秤を3回使い、偽物がどれかを探し当てる方法を解説するという問題です。偽物の重さは不明で、12枚の金貨があるにも関わらず3回しか天秤を使えない。

限定された条件で、論理的に思考をめぐらせ、問題を解決する力が、SEには必要とされています。上記の問題がすばやく解けたのなら、SEに向いているかもしれませんね。思考作業が好きだという人も向いているでしょう。

情報処理技術者試験で証明されるスキルが必要

SEに必要とされるスキルは、情報処理技術者試験での出題範囲とかぶっていると考えて良いでしょう。その中でも、基本情報技術者試験の範囲が、SEに必要なスキルとなっています。それについて学ぶには、基本情報技術者試験を受けるのが早いでしょう。

基本情報技術者試験の内容は、ITに関して幅広い分野の知識が問われるものとなっています。どれかひとつ、専門的な知識を持つのではなく、幅広い知識をバランスよく身につけるものです。学問としてはそれを学習し、あとは実戦経験で培う製品選定のスキルなどが必要となります。

プログラミングスキルは必須ではなく、プラスαのスキルが重要

プログラミングに関しては、特に必須スキルというわけではありません。極端に言えば、プログラミングができなくても構わないのです。現実問題としては、プログラマー経験者がSEになるというルートが一般的なので意識されていませんが、必ずしもプログラミングの知識が必要にはなりません。

ただ、プラスαとして、専門的なプログラミング知識・技術を持っておくと便利です。転職という意味でも、年収という意味でも有利になるため、学んでおくと良いでしょう。