インド人にソフトウェア開発を習う

インドのオフショア開発部隊と仕事をするようになって、間もなく数年になろうとしている。メールでのやり取りはもちろんのこと、オフショア部隊と電話会議を行ったり、日本に滞在しているオンサイトエンジニアと打合せを行ったりしているが、その中で分かって来たのは皮肉にも「経験はあるが教育無き日本人エンジニアと、教育はあるが経験の乏しいインド人」という現実であった。

今までに会って話をしたインド人のエンジニア全てが理工系の大学を出ており、大学院で修士号を取得している人も珍しくはなかった。実戦経験に乏しい分、製品開発を進める上でのいわゆる「現実的な妥協点」を分かっていなかったりするが、バックグランドとして情報工学の基本を理解しているので、説明すればこちらの意図を分かってもらえるという感じである。しかし、日本人の場合、その場限りのやっつけ仕事には慣れているものの、ソフトウェアエンジニアリングの基本を学んでいないものだから、基本的なところでインド人と話しがかみ合わなかったりする。

このような話題を取り上げようと思ったのは、共同作業を進める中で「インド人と仕事をすると勉強になる」と発言した若手の日本人開発者がいるからである。もちろん、他国のエンジニアと仕事をするのだからそれなりに得るものは有るはずだが、彼が言っているのは実はそのような内容ではなく、情報工学の基本的知識だったりする。理工系の大学や情報系の学校を出たのなら、当然知っていて然るべき内容であるはずなのだが、「学校時代はソフトウェアエンジニアリングとは全く関係なし、満足な教育も受けずにソフトウェア開発の現場へ入り、OJTの名の下に実践トレーニング」という彼のようなパターンだと、そのような知識を得る機会が無かったらしい。

教育のツケは大きい。英語を流暢に操りソフトウェア工学の知識をバックボーンに戦う海外勢と、英語はダメ、専門的知識も不足し、経験と勘に頼る開発しか出来ない日本勢の差は歴然としている。現状はまだ日本人の方が優位な位置にいるが、このような差は急速に縮まっていき、やがてインド人と日本人の立場が逆転するのは明らかだろう。ソフトウェア開発者として、こんな現状を憂うのは私だけだろうか?