システムエンジニア
出典: フリー百科事典『ウィキペディア(Wikipedia)』
システムエンジニア(Systems Engineer、SE)とは、もともと、情報システムの要求定義、設計、構築、運用に従事する職を指す。日本では企業情報システムの開発に携わる者に対して主に使われる用語である。現在では単に、企業情報システムの設計開発者のうち上級の者を指して言うこともある。アメリカでは、システムエンジニアはプログラマと同義であり、アメリカのプログラマは、日本で言われるプログラマだけでなくシステムエンジニアの仕事も兼ねているのが一般的である。
単体の製品として販売されるソフトウェアを設計開発するものは、ふつうシステムエンジニアとは呼ばれない。
何の事前知識もいらず入社2~3年で一通りのことが出来るようになるというのが謳い文句だが、実態は長時間残業、過酷な成果主義、どんどん新しくなっていく技術についていけなくなり、入社2,3年で転職してしまう人も実際問題として多い。新3K職と揶揄されることもある。慢性的な長時間残業と深夜勤務、仕事自体のストレスなどによって精神的な疾患にかかる人も多い。実に5人に1人がうつ病(およびその予備軍)とさえ言われる[要出典]。
通常、日本では企業がSE職を募集した場合、それはプログラマを指すことが多い。
目次 |
[編集] システムエンジニアの職域
システムエンジニアの職域を上流から下流にかけて分類すると、以下のようなものを挙げることができる。
- 顧客の要求に対する聞き取りをして要求定義を行い、構築するコンピュータシステムの内容を明確化する。
- 定義された要求を実現するために構築するソフトウェアとハードウェアの設計を行う。
- ソフトウェアの構築とハードウェアの調達を行う。
- 構築するシステムのテストを設計し実施する。
- テストにより発見されたバグの修正を行う。
- テストに合格したシステムを構成管理して稼動開始させる。
- 稼動したシステムの運用管理を行う。
- 運用管理の成果に基づき、顧客にシステムの改善を提案する。
- 以上の全域に渡り、システム構築のプロジェクトマネジメントを行う。
これらの中には、単にコンピュータの専門知識があるだけでは勤まらず、職業人としてのコミュニケーション能力や、顧客のビジネスの知識が要求されるものもある。 どの分野を取っても、一生をかけて高度化するに値する技能である。これら得意分野の異なるシステムエンジニアが力を合わせることで、優れたコンピュータシステムを構築することができる。
[編集] プログラマとの違い
日本では、企業情報システムの業界におけるプログラマ(Programmer、PG)とは、前述した職域のうち「ソフトウェアの構築」を担当する者のことである。しかし、アメリカでは昔から上記のシステムエンジニアの仕事も、プログラマがすべて担当している。
かつてはシステムエンジニアが仕様を作成し、それに基づいてプログラマがプログラミングを行うという分業が行われていた。 プログラミング環境が進化した現代のシステム構築では、システムエンジニアがプログラマを兼任することも多い。 [1]。 この傾向は小規模プロジェクトで顕著である。逆に、プログラマが要件定義や設計など従来システムエンジニアの職分とされていた職域に進出することも増えており、境界は曖昧化している。 [2]
なお、日本のソフトウェア受託開発業では、プログラマよりもシステムエンジニアの方が上級技術者らしく聞こえて高い単価を要求できるためか、実際にはプログラマであってもシステムエンジニアを名乗ることが多い。
欧米においては、システムの企画・立案、工程管理、運用を行う技術者をシステムエンジニア、ソフトウェアの設計、開発を行う技術者をプログラマと呼ぶことが多く、日本国内での呼び方との間に差異がある。
システムエンジニア経験者は最低1言語は知っており、コードが書けるのは当然だと思われることが多いが、そうでもない場合もある。プログラマを経験したのちシステムエンジニアになる場合もあるが、企業の合理化手法の為、中にはコードを書かずにすぐにシステムエンジニアになる場合や、顧客と交渉する営業職と変わらない場合もある。そういう場合では当の本人は「営業兼システムエンジニア」と自分で名乗る場合が多い。
[編集] システムエンジニアリングの手法
システムを作成していくにあたっては、様々な工学的手法が用いられる。特定の技術に習熟して競争力とする企業がある一方、とても工学的とはいえないシステム構築を行っている企業もある。精神論(死ぬ気になってやれば何でもできる)だけで、連日の徹夜で開発を行ったりするのがその例である。
ソフトウェア工学をはじめとする様々な分野の知見が利用されるが、これさえあればシステム構築は完璧というような銀の弾丸は存在しない。そのため、時々の流行も含め、システムエンジニアは広い知見を持ち続けることを要求される。
[編集] システムエンジニアの資格
システムエンジニアは資格独占業務ではないので、これといった資格がなくても仕事を受けることはできる。これは、
- システム開発の顧客は法人であり、個人がシステム開発を発注することはまずない
- システムエンジニア個人ではなく所属する企業が顧客に対して責任を負う
ため、あえて資格による規制を導入する必要はなく、民間の自由競争に委ねられているものと考えられる。
しかし自己の能力を立証するため、システムエンジニアの中には以下のような資格の取得を目指す者もいる。また、僅かだが、このような資格を取得すると所属する企業から報奨金が支給されることがある。特に、派遣社員の中には、資格を重視している派遣会社が存在するため、資格取得が命であるとし、その取得に熱心としている者もいる。 但し、下記の資格は認定資格である。
- 民間資格
- ITコーディネータ
- マイクロソフト認定技術者
- オラクル認定技術者
- サン・マイクロシステムズ認定技術者
- TOEIC
- PMP
[編集] 脚注
- ^ キャリアパスとして、プログラミング経験者がシステムエンジニアになることが多いことは、兼任が行われやすい理由の一つである。ただし、本格的にプログラミングを理解・実行するには、それなりの期間とスキルが必要であり、兼任が不適切な場合もある
- ^ 設計者の指示のもとに単純なプログラミングをするだけの人材では、加齢とともに需要がなくなるため、プログラマから徐々に職域を拡大していき、システムエンジニアやコンサルタント、ITアーキテクトなどにステップアップすることが、一般的な企業情報システム技術者の職歴とされている。しかし、近年では、UMLの普及などで、プログラマが上流行程に手を出しやすくなる一方、ソフトウェア工学の高度化により、より高度なスキルを持ったプログラマも求められるようになっている。
[編集] 関連項目
カテゴリ: 出典を必要とする記事 | 情報技術者