入社4年目のSEがオフショア開発をしたときの話~ベトナム~

入社4年目のSEがオフショア開発をしたときの話~ベトナム~

こんにちは、こんばんわ
システムエンジニアのでんこ(男)です!

現在システムエンジニアの私が2018年10月から2019年10月まで、
1年間オフショア開発の管理を行ってたことについて書きます。

オフショア開発って段々と耳にする言葉になってきました。
なぜならめちゃくちゃ安く開発してくれるんです。
日本人よりずっと安いです。
有名になってくるはずです!

ただし安のには理由があるし、大変な事だってある。
そんなオフショア開発を管理した1年間で、思ったことを書きます。

今後オフショアをやる方は参考にしてみてください。

ざっくり以下の内容を書いていこうと思います。

良かった点
・お金について
・やる気について
・仕事が丁寧になる

大変だった点
・言葉の壁
・価値観の違い
・スケジュール

良かった点

お金について

プログラマー1人当たりの単価はとっても安いです。
新人の日本人1人分とベトナム人3人くらいが同じ金額です。

IT業界は人手不足なので、SESで若手を契約するのにもそこそこのお金がかかります。
個人的には技術力と単価が合ってないことが多いです。。。

そう考えるとベトナムの人を雇って仕事をしてもらうのはとてもリーズナブルです。

これがオフショア開発の魅力ですよね。

技術力もそこまで低いとは感じなかったです。
安くて技術もそこそこある最高じゃないですか。

やる気について

やる気はすごいです。
日本人も見習ってほしいところですね。

ベトナムではSEはとても人気がある職業です。
お給料も良いようです。
日本とは大違いですね。

そのため、SEになる前もなってからも勉強をとてもするそうです。

やる気エピソードとして、
最初はシステムの実装してもらう部分しか伝えてなかったのですが、全体を把握したいのか、仕様関係の質問攻めを受けました。

また、システムを作るうえで提案をしてもらうことが多かったです。
今回は仕様が曖昧なこともあり、提案が多かったのかも知れませんが
僕的に盲点だったこともありました。

ベトナムは祝日が少ないので、日本人より多く働きます。
年末年始は1月1日だけ休みのようで他は普通に仕事してます。
その代わりに旧正月が2月にありますけどね。

バグがあって困っています。
土日に一緒に対応してほしいです。とお願いしたら快く引き受けてくれました。
しかも2週連続です。
お願いしていた会社では振り替え休日がないため、連続で働いてもらってしまいました。。。

仕事が丁寧になる

日本人には伝わるから、わかってもらえるから、
と言った理由で簡略化できるものがベトナムだとそうはいかないです。

バグの内容だったり、仕様に関係のドキュメントは丁寧に書きました。
そのため、後で見返したとき見やすいものになっていました。
その分工数はかかるんですけどね。。。

大変だった点

以下に書いていく点をクリアすれば、オフショア開発がより良いものになると思います。
今後私が再度オフショア開発を行うことになったら、
注意する部分です。

言葉の壁

今回行ったオフショアの開発を行っている会社さんは、
コミュニケーターといった通訳さんがいました。

打ち合わせを行ったり、仕様書の翻訳をしてくれる人がいたので、
こちらは日本語オンリーで会話をしていました。

しかしある程度の会話はできますが、
日本人独特の言い回しだったり、言葉遣いによって
誤認識する部分が多かったです。

その会社は日本にも支社が会ったので、日本に住んでいるベトナムの方を交えて会議を行いました。

解決策として、話すより文章でやり取りをすることに重点をおきました。
会議は簡単なアジェンダを作成してから行いましたし、
議題はバックログ等でまとめてから行いました。

価値観

オフショア開発で一番問題になることは、
価値観だと思います。

こればかりはどうしようもないです。
留学している人もよく言っていますよね。

ですので、日本からの仕事を請けるためには日本の価値観に慣れてもらうしかないです。
僕がプロジェクトを離れてからも、続けていくようなので価値観がわかってくることを祈ります。

一番価値観が違うと感じたのは品質についてです。
日本人は絶対にエラーを出してはいけない。
バグを出してはいけない。
(バグのないプログラムって大変ですよね。。。。)

日本人はめちゃくちゃテストを行ってバグが出ないようにとてもがんばります。
そしてバグが出たらお客と開発側でもめたり、もめなかったり、、、、

その点、ベトナムの場合は出たバグはそのときに対応すれば良いというように感じました。

そしてデグレの嵐がおきました。
多いときは1つの機能を修正すれば、1つのデグレが起きるほどでした。

ベトナム側がすべて悪いわけではないですが、これが価値観の違いかと思いました。

価値観以外で問題を解決する対策として、仕様を内容の共有を徹底する。
単体テスト、結合テスト、システムテストの項目書は日本で作成して、
ベトナムにやってもう用にすればこのようなことはおきなかったと思います。

ベトナムに実装を任せていたので、プログラムテストは任せていた状態でした。
仕様関係は日本が握り続けないといけないと思いました。

スケジュール

スケジュールは大幅にバッファーを持たせたほうが良いです。
今回の開発では、4月納品だったものを8月に納品しました。

一通りの実装は本当であれば1月には終わっているはずが、
終わったのは3月です。
そこからテストを行って4月には形にはなりましたが、
その後のバグ改修を行った結果8月納品になりました。
仕様書の翻訳が思っている以上に時間がかかりました。

ベトナム側にもPMがいましたが、
日本のやり方と会わなかった気がします。

仕様の問題もあって完全にベトナム側に問題があるわけではないが、
スケジュールを守れていませんでした。

特にアラートが遅かった印象です。
スケジュールもほしいといい続けても出てくることが少なかったです。

もしオフショアをやる場合はスケジュール管理を徹底する必要があります。

最後に

今まで書いてきた内容は、ベトナムに限定されるわけではないと思います。
今回僕はプロジェクトを管理することも初めてだったので、
特に苦戦しました。

日本人相手でも、コミュニケーションは難しいし大変です。
価値観もスケジュールも意識しないといけないポイントだと思います。

ただし意識するポイントのベクトルは違うかも知れませんね。

周りでオフショアをやったことがある人はみんな大変だったと言っています。

確かに大変です。
単価が安い分苦労するのは当たり前じゃないですか。
ただしいくら単価が安くてもスケジュールがとてもオーバーしてので結果は日本人を雇っても同じだったかもしれませんね。

安い単価の人を上手に使うには、苦労するはずです。
でないと誰でもオフショアしますよ
次にオフショア開発をするときは工夫をして売り上げを出そうと思いました。