システムエンジニアの仕事は多岐にわたり、SEそれぞれで仕事はさまざまです。そのためシステムエンジニア求人によって仕事の内容が異なり、SE同士で話がかみ合わないこともしばしばあるほど。
この記事ではシステムエンジニアを専門分野別に解説し、業務の種類や流れをお伝えします。
システムエンジニアに理解を深めたい方は必見の記事です。ぜひご覧下さい。
参照:システムエンジニアの仕事面と職業面から見た魅力について解説した記事はこちら
システムエンジニアの種類とは?5つの専門分野別解説
システムエンジニアが扱う分野を5種類に分けて説明します。
業務系システムエンジニア
もっとも一般的なシステムエンジニアで、お客様の業務を円滑に進めるためのシステム設計・導入を行う仕事です。例えば会計管理システムや在庫管理システムなど、お客様の仕事に合わせたオーダーメイドのシステム作りを得意とします。
お客様の要望を実現するためにサーバー・ネットワーク・端末の選定などを担う仕事のため、いわゆるSIerや情報システム子会社に属しているSEが多い分野です。
またシステムは端末アプリケーションだけでなく、ネットワークやデータベースも扱うため、幅広い知識と経験が求められる仕事であり、大規模システムとなればこの業務系システムエンジニアはさらに細分化され専門分野に特化した仕事を担当します。
そこでシステムエンジニアの一種、ネットワークエンジニアとデータベースエンジニアをご紹介しましょう。
ネットワークエンジニア
基本的にネットワーク設計は業務系システムエンジニアの仕事です。しかしシステムの規模がある程度大きくなるとネットワーク部分を担当するシステムエンジニアやNWを専門に扱うプロジェクトが必要とされます。
要件定義や基本設計を担当するシステムエンジニアと連携し、通信回線の手配やルータなどの機器選定や設定設計を担当する仕事で、システムエンジニアの一種です。
ただし一般的なネットワークエンジニアという呼び名は機器の設置や運用を担当する方も含まれるため、NWエンジニアと呼ぶかシステムエンジニアと呼ぶかは会社の慣習や業務内容によります。
データベースエンジニア
ほとんどのシステムではデータベースを使用しますが、大規模システムになるとDBに専任のシステムエンジニアがつきます。
彼らは要件定義や基本設計段階におけるお客様業務分析の結果を元に、最適なデータベースを構築する責務を負い、データベースのパフォーマンスや高速化のためにチューニングも担当します。
これも一般には業務系システムエンジニアが担う仕事ですが、規模が大きくなるとデータベースエンジニアとしてDBを専門に扱うことがあります。
webエンジニア
webサービスやwebアプリケーションを扱うシステムエンジニアはwebエンジニアと呼ばれることがあります。
企業内の閉じたネットワークでシステム構築をするのではなく、一般に開かれたECサイトやメディアシステム構築などは特化した知識が必要とされるためwebエンジニアとしてシステムエンジニアの中でも専門知識が必要です。
他のSEとは取り扱う言語も異なり、PHPやJavaScriptといったweb系の言語に精通する必要があります。逆にwebに関わらない業務系システムエンジニアはC#やCOBOLなどに精通していることが多いようです。
アプリケーションエンジニア
アプリケーションエンジニアはお客様が欲しいアプリケーションや自社展開したいソフトを作るためのシステムエンジニアです。
基本は業務系システムエンジニアと変わらず、お客様の要望を聞き出し、理想とするアプリケーションの設計・製造・テスト・納品を担当します。
アプリケーションをカスタマイズする
SAPのような業務パッケージのようなアプリケーションをカスタマイズする仕事を担うシステムエンジニアもいます。
例えば自社の業務に合わせてSAPをカスタマイズする、在庫管理業務アプリパッケージに自社専用の機能を追加するといった仕事もアプリケーションエンジニアの仕事です。
SAPカスタマイズを得意とするエンジニアの場合、SAPエンジニアと呼ばれることもあります。
データマイニング担当エンジニア
システムを導入するとデータが蓄積されるため、これを利用した戦略策定や動向分析を行う需要があります。
システムエンジニアはITの専門家として、ハードウェアやアルゴリズムに精通しているため、このような分析業務に携わることが有り、この業務のことをデータマイニングと呼びます。
最近ではビッグデータを活用した顧客の行動分析などさまざまに注目されていますが、解析に利用するコンピュータとアルゴリズム、さらに統計学などあらゆる分野の知識が求められるシステムエンジニアです。
専門性の高さゆえシステムエンジニアとは呼ばない方もいますが、顧客の要望からデータマイニングを勉強し、得意分野とするシステムエンジニアは増えています。大きく注目されている分野のひとつです。
エンベデッドエンジニア
組み込みシステムを担当するシステムエンジニアはエンベデッドエンジニアと呼ばれることがあります。
あくまでも他のシステムエンジニアと同じで、要件定義・設計・テストを仕事としますが、組み込みシステム独特のハードウェア設計などが関係するため、他のSEとは区別されます。
システムエンジニアの業務〜種類別解説
すべてのシステムエンジニアに共通する仕事を6種類に分けて解説します。
要件定義・業務分析
お客様がITを使って実現したいことをヒアリングし、どんな要件を満たすシステムを作れば良いのかをドキュメントに起こす仕事です。
顧客はITに精通しているわけではないため、実現可能性や効率的なビジネスに寄与するために最適なシステム化の範囲や方法のアドバイスといったコンサルタント的な役割も担います。
システム設計
設計はSEの仕事の花形です。システムのベースとなる考え方や方針を記述した基本設計書、具体的な機能やアルゴリズムを記述した機能設計書・詳細設計書などを作ります。
またプログラミングルールや設計書に使われる用語や記述ルール作り(規約作り)やシステムの品質を確認するテスト設計といったフェーズも含まれます。
お客様の要件を満たしながら、予算と納期を遵守して使いやすいシステム作りのためにも最も重要な業務です。
レビュー
作った設計書やプログラムの内容を確認する仕事をレビューと呼びます。SEやプログラマが集まり、ドキュメントやソースコードを精査する仕事です。
次の項で説明する製品のテスト前にもテストの確認事項(チェックリスト)のレビューも含みます。
テスト
出来あがったアプリケーションやシステムが正常に稼働するか、顧客の要件を満たしているかを確認するフェーズです。
プログラマが実施する単体テスト、プログラムを組み合わせて機能単位で実施する結合テスト、システム全体の品質を確認する総合テストなどテストもいくつかのフェーズに分かれます。
納品・教育・運用
お客様にシステムを納品し、システムの使い方を教育したり、問い合わせやトラブルに対応する仕事もSEが担うことがあります。コールセンターのようなフロント部署があるとしても、対応マニュアル作りなどに関わります。
システムエンジニアはIT何でも屋さん?
この記事をご覧頂いたとおり、SEの仕事は非常に広くて深いことが特徴です。大企業や金融機関の基幹システム、ECサイトやシステムと連携するスマホアプリなどシステムと言ってもさまざまですから、これらを作るエンジニアもあらゆる仕事を担います。
まるでITの何でも屋さんのような印象を受けるかも知れませんが、どんな分野を担当しても、お客様の要望をヒアリングして、設計・製造・納品までを担うプロセスは変わりません。
システムエンジニアの種類、みなさんはすべてご存じでしたか?ひょっとしたらSEの仕事への印象が変わったかも知れませんね。
SEはITのスペシャリストである一方、ITを必要とするすべての方と関わるジェネラリストでもあります。とてもやりがいのある仕事ですよ。
参照:システムエンジニアの仕事面と職業面から見た魅力について解説した記事はこちら
フリーランスになるために必要な知識やスキルアップの方法等、様々なお役立ち情報を発信していきます。
(リモートワーク案件に強いフリーランスエージェント「クラウドワークス テック」を運営)