日本のITエンジニアが『インド人』に職を奪われる実質的可能性
アメリカのITエンジニアはインド人にかなり職を奪われているそうです。
その理由は、アメリカの母国語が英語で、インドには英語を話せる人が多いためです。
一方、日本はどうでしょうか?
日本は、「日本語という壁に守られているから大丈夫」という意見がありますよね。
私はインド人と仕事をしたこともありますし、旅行でインドに行ったこともあります。
これらの経験を踏まえて、詳しく考えてみます。
インドは本当にITと数学大国?
私は旅行でインドに行ったことがあるのですが、確かに英語が広く通じました。
旅行者にお金をたかってくるような人でも英語を話していたので、かなりの割合の人が英語を話せるのだと思います。逆に言えば、お金をたかるために英語が話せるようになったと言えるかもしれないですけどね。
ただ、きれいな英語ではなくて、発音にかなりインドなまりがあって、聞き心地の悪いうるさい発音でした。
英語ネイティブじゃない国の人の英語の発音はそれぞれ母国語に近い特徴がありますが、インド人の英語はとくに癖が強いと感じます。
あと、インドって数学がすごいとも言われてますよね。ゼロという概念を考えだしたのはインド人だとかって。
インド人って旅行者にやたら絡んでくるので雑談する機会がたくさんあったので、数学についても聞いてみました。
「インド人って数学が得意らしいよね?」
すると、皆キョトンとしていました。私に話しかけてくるのは、旅行者から金をふんだくってやろうという人たちなので、数学などのちゃんとした教育を受けている人たちではなかったのだと思います。
日本みたく識字率が高くて、大学進学率も高い国でも数学に強い人というのは限られていますよね。インドのように教育水準が低い国だと余計そうなるはずです。
つまり何が言いたいかというと、「インドはIT大国で数学に強い」と言われているけど、それは「ほんの一部のトップの人達だけ」だということです。
ですから、「インドはIT大国で数学が得意な優秀な人達でいっぱいなので日本のITエンジニアは職を奪われちゃうよ!」というのはやや大げさなんじゃないかと思います。
それから、オフショア開発というものがだいぶ前から話題になっていますよね。
オフショア開発で職が奪われる可能性
オフショア開発とは、インド人などの外国のエンジニアが日本に来て開発に参加するのではなく、システムの仕様を日本で決めて、開発をインドなどの賃金の低い国で行うというものです。
それによって人件費を抑えられるので、コスト的なメリットがある方法だと言われています。10年以上前から、
「これからはオフショア開発が進むから、日本のエンジニアは職を失うことになる…」
と言われてましたが、実際そうなってませんよね(笑)
私は以前、オフショア開発のプロジェクトに参加したことがあります。2006年のことです。
内容はかなり前に開発したJavaのWebアプリケーションが稼働しているAPサーバのバージョンがサポート切れになったので、バージョンを上げる際に、そのままだと動かないので、新しいフレームワーク、APIを使ったものに書き換えるというものでした。いわゆるマイグレーション作業です。
「こういうコードの書き換えって定型的な作業が中心だから、どういうふうにコードを書き換えるかのガイドラインを日本で作って、そのガイドラインに従って、プログラムの書き換え作業はインドでやってもらおう」ということでプロジェクトが発足しました。
日本にいる私たちのチームが顧客と打ち合わせをして要求をまとめて、ガイドラインを作成しました。インドからは二人のエンジニアが来日しました。ブリッジSEってやつです。
一人は通訳の人で、もうひとりは日本語はしゃべれないけどバリバリのエンジニアというペアでした。
エンジニアの方は、大学で高度な教育を受けている人でした。Javaの認定資格もいくつも持っていて、話している内容からも、レベルの高さが感じられました。
そのブリッジSEにガイドラインの内容を説明して、必要に応じて修正を加えて、インドの現地チームに作業をしてもらったのですが、結果的に言うと、オフショアに作業を切り出したメリットはありませんでした。
日本で全部やってしまったほうが速いし、コスト的にも少なくて済みました。
「定型的な作業だから、オフショアでやればいいじゃん!」という考えで企画されたわけですが、「定型的な作業って日本でやってもすぐ終わる」ので、意味がなかったんです(笑)
日本とインドという距離の離れた場所でコミュニケーションをするには、ガイドラインも正確に間違いなく伝わるように丁寧な作りにしなければならず、コミュニケーションのオーバーヘッドが大きかったのが主な原因です。
類似の移行作業を100プロジェクトくらいやるってことであれば、オフショアでやるメリットはあったかもしれません。
今回やったのは、たった3つのプロジェクトをマイグレーションするというものだったので、オーバーヘッドの方が大きくなってしまったということです。
ということでオフショアで職を奪われる範囲はかなり限定的です。もちろん、オフショアで行われるプロジェクトは今後増えていくでしょうけれども、主流になることはないと思います。
日本語の壁よりも、別の大きな壁がある?
英語を話せるインド人は多いですが、日本語の話せる人は多くありません。だから日本人エンジニアは安泰、言語の壁に守られているって説があります。
一方、中国人で日本語を話せる人はインド人よりもたくさんいます。日本で働いている中国人エンジニアはたくさんいますよね。彼らの話す日本語は仕事を進める上で十分なレベルです。
ですが、日本で行われている開発業務の大半を中国人がやっているかというと、全くそんなことはありません。
なぜでしょうか?
それは開発を発注する顧客企業の問題です。
一般企業の情報システム部や業務部門の人たちの多くは、作ってほしいシステムの仕様を明確に提示できません。
仕様をきちんと提示できれば、日本人エンジニアが作っても外国人エンジニアが作っても同じものができ上がります。
しかし、ざっくりとした要求しか提示できず、あとになって、
- やっぱりこうしてほしい
- これが足りない
となると、コミュニケーションのオーバーヘッドが大きくなります。
日本人エンジニアの場合、顧客が言っていることがあいまいでふわふわした要求であることがわかっているので、先回りして、
- こうした方がいいんじゃないですか?
- こういう機能があった方がいいんじゃないですか?
などと提案することができます。
このような理由から、日本のITエンジニアの雇用は今後も続くと思います。