実はコミュニケーション能力が命の「システムエンジニア」
システムエンジニアはシステム開発に取り組む各種のITエンジニアの先頭に立って、まず大きな設計図を描く人です。略して「エスイー(SE)」と呼ばれます。
クライアントから要望を聞き取り、それに沿ってシステムの内容をプロジェクトマネージャーやプロジェクトリーダーと決めていきます。
大切なのが最初に行われる「要件定義」と呼ばれる作業です。
クライアントの要望を聞き取ったうえでそれをどのように解決するのか、要求を基にどういう機能や性能をもったシステムを作るのか、それをシステム開発者の視点で整理した「要望実行書」です。
要件定義で気をつけなければならないのは、クライアントはITシステムについて詳しい知識をもっているわけではないということです。
つまり「あなたが求めている広いということは、こういうことですね」と、プロの目で置き換えて示し、「それそれ、そういうこと!」というゴールで合意しなければなりません。
時にはクライアントの内部に対立が残っていることもあります。
例えば、病院の外来患者の受付から診療、薬の受け渡し、支払いまでの一貫したシステムを作るとします。この場合、医師や看護師などの医療スタッフの求めることと、事務スタッフの求めることはしばしば対立します。
部署間の話し合いができるよう両者が顔を合わせる場を作ったり、そこで両者の意見を吸い上げ「それならこういう仕様のシステムを作ったほうが全体として良いものになるのでは」と議論を導いたりするようなことも、システムエンジニアには求められます。
要件定義が終わったらシステムエンジニアは基本設計を行います。要件を実現するための全体的なシステム構成の設計です。
システム開発についての最新の知識や、より専門的な領域についての動向なども知っておかなければならないので、各分野のスペシャリストからヒアリングをしたり議論をしたりしながら仕上げます。
それができたら次は、システムを構築するための具体的な手法や技術を定める詳細設計に進みます。
具体的にどういう機能をもたせるのか、そのためにコンピュータはどういう処理をしていくのか、操作画面はどういうデザインにするのか、データを保存したり引っ張り出したり書き換えたりするためのデータベースはどのような考え方で作るのか、といったシステムの細かい仕様をすべて決めていく作業です。
これも各分野の専門のエンジニアと相談しながら作りあげていきます。
システムエンジニアに求められるのは、まず、問題解決能力や構想力です。
クライアントが直面している問題をどうすれば解決できるのか、論理的に考え解決策を導くことができなければなりません。そのためにはそもそも何が問題なのかを見つける力が必要です。
問題をいろいろな視点から見直したり、階層に切り分けて分析し検討する論理的な思考力や、時間的な経過を遡ってみたり背景に思いを巡らせる、といった多角的な視野をもつことも必要です。
また、起きている不具合や問題点に精神的に追い詰められない、悩んでいる相手に共感し過ぎないタフな精神力も求められます。
もちろん問題発見のためには、プロジェクトマネージャー同様、コミュニケーション力も大切です。
要件定義をしっかり行うためには、明確な言葉になっていないものにまで遡って相手の求めているものをつかむ必要があるからです。
村岡 佑紀
株式会社リアルインベント 代表取締役社長
↓コチラも読まれています
ハーバード大学が運用で大成功!「オルタナティブ投資」は何が凄いのか
富裕層向け「J-ARC」新築RC造マンションが高い資産価値を維持する理由