オフショア開発の目的と概要
オフショア開発の目的で一番最初に思いつくことはコスト削減だと思います。もちろんコスト削減できるケースはもちろん多いのですが、ただ単にコスト削減だけを求めるだけでなく、それ以外にもオフショア開発の利点はたくさんあるので、ここでいくつか紹介させてもらおうと思います。
コスト削減
オフショア開発の目的にはいくつかあると思いますが、なんといっても一番の目的は開発コストを削減することにあると思います。国内の開発者一人当たりの技術者の1人月の価格が80万円程度であるのに対し、SYSDeCがお付き合いしているベトナムでは、25万円程度であることが多いです。オフショア開発の主な委託先が中国やインドであったのが、中国やインドの人件費の高騰から、ベトナムなどのより人件費の価格の低い国に移って来ています。
価格はもちろん重要なことではありますが、オフショアを検討する国を決める際には、その国のシステム開発の特徴や国民性なども考慮し検討して決めるのが良いと思います。
我々の個人的な感想ではありますが、インドの技術者は非常に優秀です。日本からしっかりした要件を伝え、マネジメントをしっかり行えば、とても良い仕事をしてくれます。反対に日本側の要件定義があいまいだったり、マネジメント能力が不足してしまうと、インドの良さがなくなってしまって、プロジェクトがうまくいかないことが多くあります。また、インド自体が日本よりもアメリカを向いている傾向があって、日本語よりも英語でコミュニケーションをとるケースが多いです。
中国へのオフショア開発は歴史があります。そのため、開発をお願いするにも安心感があります。彼らはちょっとした無理でも料金をしっかり支払えば対応してくれることが多いです。一方で、中国の技術者のコストは高騰し続けているので、コスト削減だけを目的にした場合、管理にかかるコストを含めた全体のコストが、日本で開発する場合とあまり変わらなくなってしまうこともあります。インドとは異なり、日本語でコミュニケーションが取れるケースが多いです。
ベトナムの国民性はとても日本人の国民性と似ていると思います。とてもまじめです。中国と違って無理がきかないという話を聞いたこともあるのですが、我々自身がお付き合いしたベトナムの会社は、無理なお願いにも出来るだけ対応してくれています。中国やインドに比べるとオフショア開発は歴史は短いので、会社によってはその作業品質などにはムラがあるのかもしれません。ベトナムは親日で、日本語でコミュニケーションが取れる会社がたくさんあります。
新技術採択や開発プロセス適応へのスピーディな対応
開発コストの削減以外でもオフショア開発を行う目的があります。インド、中国、ベトナムいずれの国でも技術者の能力は非常に高いと感じています。一方で、品質に関しては、やはり日本品質と比べると見劣りする点は否めません。そうであれば、高信頼なシステム開発よりも、新しい技術を使ったシステムや開発スピードが重要なプロジェクトで彼らを活用するという目的は大変有効だと思います。中国、インド、ベトナムともに日本よりもずっと英語が出来る技術者が多いので、グローバルの最先端の技術を利用したシステムのプロトタイプを作るようなプロジェクトでは水を得た魚のように活躍してくれます。
開発プロセスを改革するためのトライアルとして、アジャイル開発などの新たな開発プロセスをオフショア開発で試してみることも出来ます。
リソース不足への対応、リソースの流動性向上
国内の技術者不足を補うという目的でオフショア開発を行うケースもあります。また、必要な時に必要な量のリソースを確保するというリソースの流動性を高める目的も同様にあります。オフショア開発では、業務委託開発とラボ契約という二つの契約形態があります。業務委託ではシステム開発全体をオフショアに依頼しますが、ラボ契約は海外の技術者を1か月いくらという金額で契約する形態です。どちらの契約形態でも必要な期間指定で契約が出来ますので、不要なリソースを国内に抱える必要がありません。さらに、同じ人数の技術者が必要だったとしても、時期によって異なる技術の技術者が必要になった場合でも柔軟に対応することが可能です。
オフショア開発を考えるきっかけ
オフショア開発を考えるきっかけはいくつかのケースに分類されるように思います。
国内の技術者をより上流工程の作業に位置づけ、単純なコーディングなど作業は人件費の安い海外のリソースを活用する。
システム開発においては、単純にシステムを開発するよりも、それらを使ってどのような成果や効果を得るのかが重要視されるようになってきました。
このような状況の中で、システム開発会社や情報システム部門では、これまでの製品・サービスにおける上流工程のシステム企画、設計をより重要視するように変わってきました
それぞれの組織は、より上流工程の作業にシフトする中で、単純なコーディング作業などを、より安価な海外のリソース活用に任せようとすることが多くなってきています。
このような単純作業で海外のリソースを活用する際には、文化が違う海外とのやりとりになりますので、品質管理やコミュニケーションのコストも含めてオフショア開発の是非を検討することが重要です。
より競争力のある製品やサービスの開発に注力するため、保守の作業において安価な海外のリソースを活用する。
システム開発の事業が長くなるにつれ、新製品やサービスの開発に加え、それまでに開発した製品やサービスの保守にかかる作業の割合が大きくなってきます。
保守の作業によって新規開発のリソースが奪われ、組織全体の生産性を押し下げるといった状況は、多くの組織で問題認識されています。
国内の戦力となる開発者が新規開発に注力できるように、既存システムの保守作業を海外のリソースを活用することで実現したいという要件もよく聞かれます。
このように国内メンバを新規開発、海外のリソースで保守という風に上手に分けることが出来れば、それぞれにおいて生産性や投資対効果をモニタリングすることが出来、改善もうまくいく可能性もあります。
このような進め方で一番注意しなければならないことは、保守の作業には高いスキルが要求されることも多いことです。トラブルの発生時には新規開発以上に高い能力が必要とされることも多く、完全に海外のリソースに作業を移管することが出来るかについては、注意深く検討する必要があります。
短期間でのプロトタイプの作成などで、国内のリソースに影響を与えずに海外のリソースを活用することで実現したい。
国内におけるシステム開発では、高い品質を維持するために、開発プロセスと品質保証のプロセスが密接にかかわっています。また、このプロセスは長い時間かけて作り上げられてきたものが多く、昨今における短期間での開発においては、そのプロセスが固定化されすぎているというマイナスの影響を与えていることが多くあります。
また、開発者についても、この長い間自分たちがやってきた開発プロセスに慣れてしまっていることもあって、アジャイルなどのプロトタイプ開発的な開発プロセスに戸惑いを見せることも多いです。
一方、海外の開発者の傾向として、日本人ほどの注意深さは若干の不足があるものの、新技術に強い興味を持ち、その開発スピードも国内の技術者に比べると早いことも多くあります。
このような状況の中、国内のリソースに影響を与えることなく、さらに、高速な開発を行いながら修正を繰り返していくような開発には海外のリソース活用が大変効果があると考えます。
最終的には国内の基準で品質確保をしたり、保守をしたりする必要が出てくることはほとんどのため、海外のリソースを活用しながらも最低限のプロジェクト管理や品質管理を確実に実施する必要があります。
技術者の需要増に対応するために、海外のリソースを活用する。
昨今においては、技術者の需要が増加し、技術者不足が問題視されています。合わせて技術者の単価も上がっています。
このような状況に対応するため、技術者の単価も安い海外のリソースの活用を検討することは、ごく自然な発想であると思います。
特に東南アジアにおいては、多くの若者がITを専攻して勉強をしていて、日本の企業と仕事をしたいと考えている人がとても多いです。
国ごとの文化の違いなどはありますが、基本的にはみんな一生懸命に仕事をしてくれます。
短期での需要増に海外のリソースで対応する場合には、国内でのやりとりのように納品後もなぁなぁで保守を続けてもらったり、トラブル発生時の対応をお願いすることが難しいことは意識しておく必要があります。
国内の同じ文化の中で仕事をしている以上に、契約内容をしっかりと決めることが重要になります。
国内ではなかなか採用が難しい優秀な技術者を戦力にする。
国内においては、IT業界はどちらかというときつい業界という認識が強く、そのような状況の中で優秀な人材を確保することは難しくなっています。
一方、特に東南アジアにおいては、多くの優秀な若者がITを専攻して勉強をしています。彼らはITに対する希望を持つことに加え、日本に対するあこがれを持っていることも多いです。
国内においては不可能と思われるようなとても優秀な人材を確保することも可能ですし、彼らに日本の文化や仕事の仕事をきちんと理解してもらえば、安価で大きな戦力となります。
短期間の人材確保と考えるよりも、優秀な人材を海外から採用する。というような考え方でのぞむことが良い結果に結びつくのではないかと思います。
将来アウトソーシング先の国でビジネスをするための調査や基盤作りのために海外のリソースを活用する。
現在の東南アジアの市場は日本国内の市場に比べて大きなものではありませんが、国内の市場の拡大が見込めない中、東南アジアの将来の市場拡大は魅力的です。
海外のリソースを活用する中で、アウトソース先の国の情報を得たり、将来アウトソース先の企業と一緒にビジネスをするなどの基盤作りのために海外のリソースを活用することは有効であると考えます。
このようなケースにおいては、発注者と受注者という関係だけでなく、お互いがお互いを必要とするようなパートナーとしての関係が理想的だと思います。
相手に日本の歴史や文化を理解してもらい、逆に我々も彼らの歴史や文化を理解し、双方がお互いを尊重できるようなパートナーになれればと思います。
オフショア開発会社の種類と特徴
オフショア開発といえば、アウトソース先の相手先企業が海外にあるということ以外については多種多様です。
このような多種多様なアウトソース先の企業を選ぶには、自分たちがどのような課題を抱えているかをしっかりと理解し、どのような人たちをパートナーに選ぶのかが明確になっている必要があります。
相手先の国や企業規模、ひいては、その中で働いている個々の技術者の能力までもが、アウトソーシングの成否にかかわってきます。
場合によっては、アウトソーシングの費用対効果が十分に見込めず、国内でパートナーを探したほうが良い場合もありますし、自社内でリソースをやりくりするほうが良い場合もあるかと思います。
ここでは、以下にいくつかの切り口でシステム開発会社を分類し、それぞれの特徴を記述してみたいと思います。
オフショア開発と国内パートナー
オフショア開発業者の種類ではありませんが、システム開発の一部を、海外の企業に頼むのか、国内の企業に依頼するのかというのが一番最初の選択になります。
国内のシステム開発業者と海外のシステム開発業者の一番大きな違いは、これまでの国内の開発プロセスを理解し、何かトラブルになった場合であっても、その解決方法に共通の認識があることです。
そのため、細かいことをいちいち確認せずに、おおまかなシステム開発の目的を共有することで、その目的に向かって双方が協力することが可能になっています。
一方で、細部を詳細に合意しないことで、小さな認識のズレが生じ、そのことから大きな問題が発生することもありますし、関係が良い間は良いのですが、両社の関係が悪くなった場合には、あいまいにしていた部分でトラブルが大きくなることもあります。
海外のシステム開発業者においては、日本の仕事の仕方を理解してもらうという国内のパートナーでは必要ない追加の作業が必要になってきて、このコミュニケーションにかかる手間は、経験のない人にとっても簡単に考えてはいけないほど大きなものです。その一方で、オフショア開発を検討するきっかけの大きな要因である低コストは大きな魅力であり、国内で済ませるか、オフショア開発に取り組みかの大きな選択になります。
単純な作業単価だけにとらわれず、コミュニケーションや情報共有にかかるコストを認識し、トータルコストとオフショア開発によるメリットをきちんと理解した上で、オフショア開発に取り組むか否かの意思決定をすることが重要です。
オフショア先の国による分類
オフショア先の国は、コストメリットが最優先されることが多く、東南アジアの国に依頼することが多いです。
その一方で、私自身が富士通でグローバルビジネスを推進しながら海外のパートナーとソフトウェア開発を行っていた時には、グローバルで売れる製品をグローバルの視点で一緒に作り上げるという共通の目標を持って、アメリカ、イギリス、オーストラリアの会社と連携してソフトウェア開発を行いました。
このように、オフショア開発の大きな目的によってオフショア先の国を選びますが、開発力を安価に獲得したいといった場合には東南アジアの国々。グローバル製品を開発するパートナーとしてのオフショアであれば、そのターゲット市場を良く知る会社をパートナーにするということが一般的ではないかと思います。
その後、具体的なパートナー企業を探す前に国を決定することが多いですが、同じアジアでも国ごとに歴史も文化も違います。また、それによってそこで働く人々の習慣や特徴も違ってきます。これはアジアだけではなく、日本人からは同じに見えがちな欧米の国々でも国ごとに大きく異なります。
オフショア開発の目的と概要でも記述しましたが、日本からのオフショア先としては、中国、インドに加え、昨今ではベトナムの企業をパートナーに持つことが多くなってきたように思います。それ以外にも、今後に向けてラオスなどもより安価な人件費を求めて開拓している企業もあります。
それぞれの国ごとに、日本企業から見た場合のメリットとデメリットがありますので、各国の状況を理解した上で、パートナー企業の国を選定することが重要になってきます。
会社の規模による分類
ここではオフショア先の中心となる東南アジアの企業について、会社の規模による分類を行いたいと思います。
東南アジアにおけるシステム開発企業は成長期にあり、多くの会社は規模の成長を目指しています。そのため、会社の規模と会社の歴史が相対していることが大変多いです。
つまり、創業して長い間事業を続けている会社は、その会社の規模も大きくなり、その過程で開発プロセスが整備されていたり、品質管理も上手にで出来るようになっています。
インドのウィプロという会社やベトナムのFPTという会社は、国内の大手ベンダとそん色ない規模の会社であり、CMMIと呼ばれるグローバルな開発プロセスの成熟度を持っています。
ここまで来てしまうと人件費もそれなりに高いものとなって、中小企業のシステム開発会社が低コストだからとお付き合いするのは難しくなってしまいますが、彼らの技術力やマネジメント能力は日本企業以上のものがあります。
中小のシステム開発企業がオフショアのパートナーとして選ぶ企業においても、その規模や事業の年数はかならずチェックするようにしてください。
その際、開発プロセスや品質を担保するために、ISO9001やCMMIの認証を取得しているかも確認してみるのが良いでしょう。開発プロセスや品質を認証取得だけで判断するのは難しいことですが、それでも、開発プロセスや品質に対する意識が高いという確認にはなりますので、そのあたりの問題が発生するリスクはかなり低くなるのではないかと思います。
事業の期間が長くなり、会社の規模も大きくなるにつれ、単価も上がっていきます。コストを最優先にする場合には、創業して間もない会社という選択肢もないわけではありませんが、システム開発の経験だけではなく、日本における商取引の経験も少ないということで、ある程度のリスクを許容し、まずは限定的なお付き合いから始めるのは良いのではないかと思います。
会社の経営層による分類
ここでは、大きく3つの分類について説明させてもらいます。
一つ目は、日本企業が海外に支社を持ち、現地の支社で技術者を採用し、安価な人件費でリソースを他の日本企業に提供するケースです。
このケースでは、国内の企業と契約を結び、問題が発生した場合においても、国内の企業とのやりとりで解決することが可能となるメリットがあります。
その一方で、当たり前ではありますが、国内企業における作業が発生し、コストが割高になる傾向は否めません。
また、親となる日本企業がシステム開発を本業としない会社である場合には、技術的な相談が日本で出来るのか、問題が発生した際の対応における、ITの専門家としての能力が十分であるかなどはきちんと見極めておく必要があります。
オフショア開発のメリットを簡単に感じることの出来る形態ではあると思いますが、オフショアのメリットを最大限に享受するには難しい部分もあります。
二つめは、現地法人が日本法人を子会社として持っているようなケースです。
現地の法人であっても、日本での事業期間が3年を過ぎるころから日本法人設立に向けて取り組む企業が多いようです。
これは、日本法人を持つことによって、クライアントである日本企業に安心感を持ってもらえることが一番のメリットです。そのほかにも、資金の決済において海外送金が必要なくなり、国内の銀行振り込みで完了するなどのメリットもあります。
海外の企業にとって、日本法人を持つということはそれなりに大変なことですし、日本での事業を正当に行っていくという第三者の目線を入れた意思表示でもありますから、仕事を依頼する企業からすると大きな安心感につながると思います。
このケースにおいても開発プロセスや品質管理の基準をきちんと共有することが重要です。彼らの日本での事業経験から、日本企業のシステム開発のプロセスや品質管理についての理解度について確認することが必要です。その際、ISO9001やCMMIの認証を取得しているか否かも参考になると思います。
このケースは、良いパートナーを見つけることによって、バランスの取れた、お互いにとってメリットの大きいオフショア開発が実現できる可能性が高まります。
三つめは、現地法人に直接開発を依頼するケースです。
このケースは創業してまだ期間の短い企業にシステム開発を依頼するケースで、コストパフォーマンスの高いオフショア開発が期待できる可能性があります。
信用度という観点においては、日本国内に企業がなかったり、事業年数が長くなかったりするのですが、アジアで起業しようという若者のパワーはものすごく大きくて、また、彼らの中には優秀な人材が数多くいます。先の述べたウィプロやFPTといった大企業でさえ、初めは起業家精神に満ちた、若者が始めた企業です。
良い人材、良い企業と巡り合うことが出来れば、ともに成長していくといった夢も描けるのではないかと考えます。
その一方でリスクもあります。日本の商習慣に慣れていないことによる本来対応しなくて良いようなトラブルが発生する可能性もありますし、日本語が十分にできない場合には、誤解によるミスなど生産性の低下も心配されます。また、開発プロセスや品質管理については彼ら自身で行うことが出来ずに、仕事をお願いする日本企業側でしっかりとプロジェクトマネジメントを行っていくことが必要になることも多いです。
メリット、デメリットはありますが、上手にパートナーとの付き合いが出来るようになると、発注者、受注者の関係というよりも、緊密なパートナーという関係に一番なりやすいケースとなり、小さなリスクのコントロールを行いながら、将来のメリットを最大限に享受するなどの付き合い方もあっても良いかと思います。
一口にオフショア開発企業と言っても、また、国が同じであっても経営母体の種類によって、それぞれの企業のビジネスモデルは異なっています。
自社がオフショア開発をする目的はなんなのかを十分に議論することは重要ですし、その際には短期的な視点だけではなく、中長期にわたって、パートナーとどのような付き合い方をしてながら、どのような役割を双方が演じていくのかまで検討し、経営母体についてもきちんと理解することが重要であると考えます。
契約形態による分類
以下に、オフショア開発で行われる3つの契約形態について説明させてもらいます。
一つ目は請負型開発契約です。
国内における請負契約での開発と同様のものです。仕様を提示していただき、見積を行ったうえで、スケジュールなどの合意を行い、開発、納品という手順で作業を進めます。
二つ目はラボ型開発契約です。
現地の人間を派遣社員のように活用する形態で、人月での契約になります。日本側のディレクターからの指示で現地の人間をコントロールすることになります。ラボ契約では一般的に契約期間中は技術者の変更がありませんので、同じ技術者との関係が長く続くことで関係性が良くなり生産性の向上も期待できます。ラボ契約では最低でも1名の日本語が出来る技術者が開発チームに入ることが多い。
三つ目は派遣型開発契約です。
現地の技術者を日本に招き、発注元企業内で作業をしてもらう契約です。こちらも派遣社員のような形態になります。派遣型で1名を日本国内でブリッジSEとして働いてもらい、現地にいる数名のチームとの橋渡し役になってもらうというプロジェクトの形態も一般的です。
いずれの場合においても、技術力だけではなく、日本語におけるコミュニケーション能力を重要視することが大切になってきます。
技術者本人が日本語が堪能であれば一番良いのですが、数名の日本語が出来ない技術者にコミュニケーターと呼ばれる通訳のような役割のメンバが入るチーム編成も良く見られます。この場合、このコミュニケーターは日本語は出来るが、技術的なことが分かっていないということも多く、技術的なコミュニケーションが上手に出来ずに、仕様変更やスケジュール変更で意思がうまく伝わらないといったことが起こる場合も見受けられます。
企業によっては技術者の能力や役割で人件費を細かく規定している会社もありますので、それぞれの役割や能力がどのような基準で設定されているかをきちんと説明してもらうことが必要です。その上で納得できる企業に発注することが当たり前のことではありますが、開発が始まってから問題を発生させない、もしくは大きな問題にしないことにつながります。
では、、自社にあったオフショア開発会社ってどうやって見つければいいのでしょうか。
一番安全な方法は、やはり知り合いの企業が実際にお付き合いしたことのあるオフショア開発企業を紹介してもらうことでしょうか。しかいこの場合、失敗は少なくなるかもしれませんが、実際には知り合いの企業と自社では抱えている問題も違うでしょうし、そもそもビジネスモデルや戦略だって違うことが多いと思います。
上記で記述させていただいたような、それぞれのオフショア開発企業の特徴を理解した上で、どの国の企業に仕事を頼みたいかのあたりを付けてみてください。
そこまでを自身で行ったら、JETROのような海外ビジネスをサポートする公的組織に相談するとか、SYSDeCの相談会への参加でも構いません。どちらの組織も初回相談は無料だったり、3回程度の相談は格安だったりしますので、気軽に相談するのが良いと思います。もちろんSYSDeCの相談会を利用してもらっても構いません。中立な立場でアドバイスさせていただきます。
単純なコスト削減のための人材リソース確保であれば短期的な視野での企業選びになると思いますが、それではせっかくのオフショア開発に取り組むことによるの可能性を狭めているように感じてしまいます。将来の自社の競争力の源となるような成長戦略の中で、有益なパートナーを開拓するんだという気持ちでオフショア開発に取り組んでいただければと個人的には感じています。