IT先進国のアメリカと日本の違いはどこにあるのか。
気になったのでいろいろ調べてみました。
日本はベンダーが頼り
調べたところ大きな違いは企業のシステム開発への取り組みでした。
日本では皆さんが良くご存じの通りある企業で基幹システムを新たに開発するといった場合、要件定義⇒設計⇒開発⇒テスト⇒導入⇒運用 を一括してSierと言われる開発ベンダに委託する方法が多いです。
企業によってはシステム企画や要件定義の上流工程をコンサルタント会社に任せ設計以降はSIerに任せると言う企業もあると思いますが、多くの場合、自社開発はせずに外部の会社に委託し、稼働開始後の運用まで外部会社に任せる会社もあります。
ですので日本の会社のシステム部門はシステムの運用や外部会社の窓口と言った位置づけになるところが多いです。
こうする事でシステムの高度な専門的な知識はシステム会社に任せ、開発時に余計に人員を社内に雇用しなくても良い仕組みと作ったのですが、逆にシステムに関する外注費が非常に高くなっています。
ではアメリカや海外ではどうなのか。
同じく基幹システムを新たに構築しようとした場合、要件定義⇒設計⇒開発⇒テスト⇒導入⇒運用 の工程は全て内製化だそうです。
自社内のシステム部門が全行程を行い、もしそれでも工数や技術面で不足が有った時だけ外部のベンダー、システム開発会社に委託する方法を取るようです。
運用開始後の運用も社内で行うようになります。
その為、社内にしっかりしたシステム部門を持ち、そこで全社のシステムの開発、運用、保守を手掛けていきます。
また反対に日本のようなSierと呼ばれる会社は多くないのが海外のシステム開発です。
ではITエンジニアにはどんな違いが生じるのでしょう。
まずITエンジニアの所属会社に大きな違いが生じます。
日本のITエンジニアの多くはSIer,システム開発会社に属しています。これはシステム開発に関する工数の多くをシステム開発会社が行うので当然ここに人材が必要になります。
アメリカの場合、大多数のITエンジニアは企業に属します。ここでの「企業」はIT企業、ベンダーではなく、日本で言うところのユーザ企業です。(アメリカや海外では「ユーザ企業」と言った言い方もないのかもしれませんね)。
会社毎にシステム部があり、そこで一括して自社開発、自社運用をしていくのでそこに人材が必要になるのは当然で、それが会社毎になるで非常に多くの人員が必要になります。
日本とアメリカのこの構造的に違いが日本の現場が使いずらいシステムとなったり、全体統制が取れていない社内システムになっている要因になっているという指摘もあります。
日本の技術者はコード書ければエンジニアと呼ばれますが、海外ではさらに全体を見渡せるようなところまで求められるそうです。
これからも日本の技術者向上の為にも、海外の事を調べて書いていきます。