システムエンジニアの職域 [編集]

システムエンジニアの職域を上流から下流にかけて分類すると、以下のようなものを挙げることができる。
1.顧客の要求に対する聞き取りをして要求定義を行い、構築する情報システムの内容を明確化する。
2.定義された要求を実現するために構築するソフトウェアとハードウェアの設計を行う。
3.ソフトウェアの構築とハードウェアの調達を行う。
4.構築するシステムのテストを実施する。
5.テストにより発見されたバグの修正を行う。
6.テストに合格したシステムを構成管理して稼動開始させる。
7.稼動したシステムの運用管理を行う。
8.運用管理の成果に基づき、顧客にシステムの改善を提案する。
9.以上の全域に渡り、システム構築のプロジェクトマネジメントを行う。

システムエンジニアの職務内容は、細部においては、それぞれの企業により異なるが、概ね、初期においては、要求分析、要件定義、作業工数見積もり、作業計画の策定に始まり、要員の手配、開発チームの組織、物資の手配、進捗管理、技術的課題管理、調整、果ては、部下の勤怠管理まで、多岐にわたる。さらに、これに加えて、設計、及びテスト計画の策定、テストの実施指示まで関わり、成果物に対して責任を負うところまで、職務としている場合が多い。一般的には上級職とされがちであるが、実際のところは、コンピュータシステム開発における担当部分、分担するパートの違いと見た方が正しい見方と言える。システムエンジニアだからといって、コンピュータに関する技術に精通しているとは限らない。むしろレベルの高いプログラマの方がより専門性が高い。

これらの中には、単にコンピュータの専門知識があるだけでは務まらず、コミュニケーション能力や、顧客のビジネス知識(業界知識、業界動向など)が要求されるものもある。

上記作業はすべて一人で担当する場合もあれば複数人で担当する場合もある。

システムエンジニアリングの手法 [編集]

システムを作成していくにあたっては、情報工学やシステム工学など様々な工学的手法が用いられる。特定の技術に習熟して競争力とする企業がある一方、とても工学的とはいえないシステム構築を行っている企業もある。精神論(死ぬ気になってやれば何でもできるなど)だけで、連日の徹夜で開発を行ったりするのがその例である。

コンピュータサイエンスソフトウェア工学をはじめとする様々な分野の知見が利用されるが、これさえあればシステム構築は完璧というような万能の解決策は見つかっていないのが現状である。そのことをフレデリックブルックスが発表した論文を引用して『銀の弾などない』という表現を用いることがある。そのため、時々の流行も含め、システムエンジニアは広い知見を持ち続けることを要求される。

プログラマとの違い [編集]

日本において、企業情報システムの業界におけるプログラマ とは、前述した職域のうち「ソフトウェアの構築」を担当する者であるというのが従来の考えであるが、徐々に、その意識は変わりつつある。

日本では、システムエンジニアがプログラム仕様を作成し、それに基づいてプログラマがプログラミングを行うという分業が行われることが多かった。しかし、プログラミング環境が進化した現代のシステム構築では、システムエンジニアプログラマを兼任することも多くなっている。 [3] この傾向は小規模プロジェクトで顕著である。逆に、プログラマが要求定義や設計など従来システムエンジニアの職分とされていた職域に進出することも増えており、境界は曖昧化している。 [4]

最近では、プログラマシステムエンジニアという区別をせず、ソフトウェア技術者(Software Engineer)やソフトウェア開発者(Software Developer)などと呼ぶ企業も増えてきている。

なお、日本のソフトウェア受託開発業では、システムエンジニアと呼ぶ方が上級技術者らしく聞こえて高い単価を要求できるため、能力や適性が伴わなくても、ある程度の年齢になると、システムエンジニアと名乗らせることが多い。

システムエンジニアの資格 [編集]

日本におけるシステムエンジニアリングは受託開発が中心である。システムエンジニアは資格独占業務ではないので、これといった資格がなくても仕事を受けることができる。これは、
システム開発の顧客は法人であり、個人がシステム開発を発注することはまずない
システムエンジニア個人ではなく所属する企業が顧客に対して責任を負う

ため、あえて資格による規制を導入する必要はなく、民間の自由競争に委ねられているものと考えられる。

また、システムエンジニアは最低1つのプログラミング言語は習熟しており、コーディングができて当たり前、と思われがちだが、そうでもない場合も多い。企業の合理化手法のため、プログラマとしての経験無しにすぐにシステムエンジニアになる場合や、顧客と交渉する営業職と変わらない場合もある。そういう場合では当の本人は「営業兼システムエンジニア」と自分で名乗る場合が多い。

しかし、自己の能力を立証するため、システムエンジニアの中には以下のような資格の取得を目指す者もいる。また、このような資格を取得すると所属する企業から報奨金が支給されることがある。特に、派遣社員の中には、資格を重視している派遣会社が存在するため、資格取得が命であるとし、その取得に熱心な者もいる。

国家資格 [編集]
情報処理技術者 レベル1 : ITパスポート試験
レベル2 : 基本情報技術者試験
レベル3 : 応用情報技術者試験
レベル4 : 高度情報処理技術者試験 当該資格取得にはレベル3までとは一線を画す技術と知識が要求され、難度は非常に高い ネットワークスペシャリスト試験(旧:テクニカルエンジニア(ネットワーク)試験)
データベーススペシャリスト試験(旧:テクニカルエンジニア(データベース)試験)
エンベデッドシステムスペシャリスト試験(旧:テクニカルエンジニア(エンベデッドシステム)試験)
情報セキュリティスペシャリスト試験(旧:テクニカルエンジニア(情報セキュリティ)試験を母体に情報セキュリティアドミニストレータ試験の内容を包含)
ITサービスマネージャ試験(旧:テクニカルエンジニア(システム管理)試験)
システムアーキテクト試験(旧:アプリケーションエンジニア(特種情報処理技術者試験))
ITストラテジスト試験(旧:システムアナリスト試験を母体に上級システムアドミニストレータ試験の内容を包含)
プロジェクトマネージャ試験
システム監査技術者試験

技術士 技術士情報工学部門
技術士経営工学部門

日本と世界との認識の差異 [編集]

日本国内ではソフトウェア開発業界は、建設業界に類似した重層下請け構造になっている。システムエンジニアの主業務が外注管理となっている例も多い。この場合は、コンピュータの技術的なスキルよりも、対外交渉能力、調整能力、問題解決の整理能力、場合によっては不屈の精神と粘り強さが問われることになる。このあたりが世間一般のイメージと大きく異なるところである。

低下するソフトウェア開発従事者の地位 [編集]





この節には「独自研究」に基づいた記述が含まれているおそれがあります。これを解消するためにある情報の根拠だけではなく、信頼可能な解釈、評価、分析、総合の根拠となる出典を示してください。このタグは2011年1月に貼り付けられました。

企業にとって極めて高額となる投資によって導入される情報システムを正しく構築し安定運用させ、一旦稼働を始めた情報システムのライフサイクルを永続的に実現させる為に必要となる技術者としての技術力の真髄を、採用先の企業のOJTの中で培い高めて行くのか、学業の一環として国家試験である情報処理技術者試験の獲得を目指し習得するのか、技術者個人の技術との関わり方というのは、コンピュータシステムの多くが容易に生活環境の中に溶け込んだ現在において、その方法は多岐に渡る。

しかし現在では、特定の技術を用いる専門的な集団という位置づけとしてのシステムエンジニアという名乗りは極めて曖昧な姿であり、その地位というのは年々低下して行く一方である事が社会の実情であり、もはや議論の対象とできる程のアイデンティティーを持ち得ていない名称である。

技術者という職業は時としてなんでも屋であり、特にソフトウェアの開発に携わる技術者は技術が保有する特異性(開発に投じたコストと物理的に生み出された情報システムの規模や複雑さや難解さが全く一致しない) を根拠として、他の産業で培われるノウハウが通用しづらい事から、他にも多くある専門的な技術者集団の中でもその傾向が強い。

本来技術者とは、技術に対して人一倍貪欲でなければならず、何がしかの肩書にこだわる中で専門性の高い能力を研鑽する為の修練を怠る事は許されず、こともあろうに後輩の技術者や学校を卒業したばかりの技術者よりも、その技術力や守備範囲が狭い状態が生じるベテランエンジニアが優越感を以て企業の中に存在できてしまう事が、そもそも技術者の地位を自ら貶める事となり、それが結果的にシステムエンジニアと呼ばれる名乗りの価値を極めて荒唐無稽な存在感へと歪めた原因である。

専門職であるシステムエンジニアが、管理職としてのシステムエンジニアに職業の変更を求められ、それまでに社内や社外で専門職として培われた技術力や人脈を活かす中で、より重い責任を任され対外的な折衝や人材育成を含めたマネージメントを主体とした業務に少しずつ変化する事を期待されるのは、他の職業と全く同じである。

但し、その場合に職業が専門職から管理職へと変更になった事は重大な事実であり、管理職たる職務に専念をすれば定量的な経験年数としてもいつかは若手の技術者の方が技術力の上でレベルが上回るのは当然の事であり、職業の変更に伴い職業を通じて主に研鑽されるべき対象が技術力以外へと変更となった事が当たり前な理由であり、そもそも管理職に対して二束のわらじを期待する事の方が人事において不可能である。

専門職から管理職へと職業が変更になった経緯の中で、管理職はそれまでの経験の中で培われた技術力の真髄を人材としての価値の主軸として社業にあたるわけであるが故に、技術畑出身の管理職とは生涯「一技術者(いちぎじゅつしゃ)」としての本分をわきまえた上で、現場で培われた豊富な経験や力量を発揮する事が期待されるわけであり、現場の業務から離れる事が、技術者である事を否定されるわけでは無い。

若手の技術者に対してより大きなフィールドで活躍する姿を期待する中で、ただ単に特定のプログラミング言語の内部仕様の仕組みの解析にこだわりつづけ、技術者として大成する事を自ら拒否する傾向にある若手エンジニアも多いが、特に大手SIerを中心とした厳しい教育環境の中で優秀な技術者を多く育成して行く事は、システムエンジニアという名乗りの地位を再び蘇らせる為に避けて通れない工程であり、その為に目を覚ますべきベテラン技術者や管理職が古き良き時代(システムエンジニアという肩書を名乗るだけで尊敬された時代)に逃避し、その理解が通用する者同士だけで形成した少数派の集団にて排他的に社会と接する傾向は、システムエンジニアという名乗りが全く尊敬されない時代を裏付ける意味でも、末期的な状況であり、地位の回復に向けて社会の中における自身の立ち位置を自ら問う事は、技術者であればもはや必然である。