ヨーロッパで働く社長のブログ

http://www.clover-studio.com/ クロアチアのザグレブって所で日本の企業向けにスマートフォンアプリとか作ってます。

スマホアプリ開発のオフショア発注先を選定する6つのポイント

 初めましてクローバースタジオ代表の安江です。弊社クロアチアのザグレブという場所で日本向けにスマホアプリの開発を行っております。設立して4年になりますが、私自身は経営者であり、エンジニアであり、ブリッジでありと何でもやってますが、今日はブリッジSEとして今までやって思った事を書きます。

オフショア開発ですが、日本に居た頃(もう10年も前になりますが)と比べると小規模開発でも選択肢の一つとして上がってくる様になったと思います。ただ海外との取引となると二の足を踏んでしまう方が多いと思います。この記事はそのような方に少しでも役に立てばと思い書いています。

 

1. 内製 >> 外注=オフショア
 いきなりオフショア否定ですが内製出来るだけのリソースと資金があれば内製に勝る物はありません。オフショアで開発を回せるだけのノウハウの取得が目的であれば話は別ですが多少エンジニアのスキルが低くとも内製できるのであれば迷わず内製にして下さい。ただ、日本国内の外注とオフショアを比べると余り違いは無いかと思います。コミュニケーションはどっちにしろメールかスカイプだと思いますし。実際に会って物事を進めるメリットと言う物は余り無いと感じています。

2.日本語で直接やり取り出来るブリッジが居るか

 日本語の話せる外国人ではなく普通に日本語でやり取りが出来るかと言う意味です。アプリ開発はそもそも仕様書を細かく決めても余り意味が無いので直接言葉やメールで仕様を決めながら進めるのが普通です。その際に言葉の違いを気にしながらやり取りしてるとそれだけで疲れてしまい、細かい仕様のずれは「まいっか」となりがちですが、まいっかでは済まない場合もあるので、最初から日本語で安心してやり取りが出来る所を探しましょう。

3.エンジニアがいる
 「は?」って感じですが、発注国内でさらに外注のヒエラルキーを辿ってしまう事もあります。そうなるとプロジェクトの成功率は間違いなく0となり担当者の睡眠時間の確保は絶望的となるでしょう。一度社内プロジェクトをインドに発注して安く押さえようと思ったのですが向こうにも営業会社みたいなのがあり、さらに開発会社に発注しているようだったのでキャンセルした事があります。Webサイトの写真には200人以上のスーツを来た人たちが写っていたのですが、やはりちゃんと現地に行って確認するのがベストだと思いました。

4.担当者がシステムを分かっているか
 担当者が営業畑出身となると抽象的な話しか出来なくなり、メモリ管理の話とか、ネットワーク関連の細かい挙動などの仕様を詰める事が難しくなり終盤の詰めが甘くなってしまいます。担当者はコードを理解している必要は無いですが、コードレベルでの話を少なくともブリッジとして全う出来るだけの知識は必要となります。

5.コードの所有権は自分たちの物になるか
 なんとなくNDAだけ結んで進める事が多いいですが、これだけは先に確認しましょう。コードの所有権が無いとバグの修正がにっちもさっちも行かなくなった際に完全にお手上げ状態となります。所有権だけでなくgitで常に進捗確認する事も明言しておいた方がいいです。

6.デイリーで進捗出来るか
 アプリ開発は仕様を決めずに進める事が普通なので、プログラマー自信が脳内補完して進める事が多々あります。それ自体は規模の差はあれある程度は仕方の無い事です。ただ、間違った方向に進めてしまった際にどの方向修正のタイミングが遅くなると無駄な作業を進めてしまいエンジニアのモチベーションを下げてしまう事になります。で、最終的に行き着くのは毎日ベースの報告と確認にどっちにしろなります。担当者もシンドイですがどっちにしろそうなるので最初からデイリーの進捗会議は可能か確認しましょう。

オフショア開発のプロセス全般に対して書こうと思ったのですが、思ったより長くなってしまったので、選定する際のポイントだけにしてこの辺で終了します。次回はオフショア開発でのプロジェクトの進め方に関して書こうと思います。