クラウドワークス エンジニアブログ

日本最大級のクラウドソーシング「クラウドワークス」の開発の裏側をお届けするエンジニアブログ

クラウドログのオフショア開発について

クラウドログのオフショア開発について
こんにちは!

はじめまして、クラウドログ開発チームで主にバックエンド関連の技術的課題に立ち向かってるエンジニアの武田です。

クラウドワークスへの入社は2022年の2月で、現時点で約1年ちょっと経ちました。 新しい事へのチャレンジは進めつつも、開発全体の生産性効率化を向けて取り組みを進めています。
今回はそのクラウドログ開発チームで行ってるオフショア開発について、ご紹介したいと思います。

目次

オフショア開発とは

オフショア開発とは、主にコスト削減や専門技術の活用を目的として、自国外の企業やチームにソフトウェア開発やITサービスを委託することを指します。 例えば、アメリカや日本の企業がインドやフィリピンのような国の開発者にプロジェクトを委託することがあります。これは時間差を利用して24時間体制で作業を進められる利点もあります。 一方で言語や文化の違い、通信の問題、品質管理などの課題も存在しており、これらの問題を解決するために、良好なコミュニケーションと明確な要件定義が求めらるケースが多くあります。

クラウドログのオフショア開発

これまでの取り組み

クラウドログでは長期的にオフショア開発に取り組んでおり、現在では7名のオフショアメンバーが開発に携わっています。

クラウドログのオフショア開発は、一般的なオフショア開発のイメージとは異なっています。 一般的にはホームショアのチームが詳細な仕様を作り、オフショアチームに渡して開発を進める形が多い印象ですが、クラウドログでは日本のメンバーとオフショアのメンバーが一緒になって開発を進めています。 そのためチーム内で「何を担当するか」を決めており、ホームショアメンバーだから/オフショアメンバーだからという垣根はほとんどありません。

また、オフショアメンバーが参加するイベント等は基本的に英語で実施しています。

  • Scrum(Daily, Planning, Retrospective, Demo)
  • Check-in (雑談イベント)
  • Log's night (コミュニケーションイベント)

チームイメージ

機能開発を行なっているチーム全体のイメージはこのようになっています。 日本メンバーのみ、オフショアメンバーのみのチームもあれば、混在してるチームもあります。

チームイメージ

楽しんでいること

開発はもちろんのこと、雑談を通しての異文化コミュニケーションや合同勉強会等も行なっており

  • 英語でのコミュニケーション・開発
  • 異文化交流
  • 合同勉強会

日本・フィリピンメンバー合同の勉強会等も開催しています。

チーム内コミュニケーションの一環としてCheck-inも取り入れており、チーム内で異文化を楽しむ試みなども行っています。

メンバーの声

James

We are making various efforts as a team to communicate efficiently. For example, we try to speak clearly so that oral communication is reflected in subtitles on Google or Slack, and we frequently communicate not only orally but also through written documents and detailed notes to prevent misunderstandings.

効率的なコミュニケーションを行うためにチームとして様々な工夫をしています。 例えば、口頭でのコミュニケーションはGoogleやSlackの字幕に反映されるようにはっきりと話すように心がけたり、口頭だけでなく文章や詳細に書かれたドキュメントを介したコミュニケーションを頻繁に行うことで認識齟齬が起きないようにしています。

Arnel

Communicating in different languages can be challenging, but it's possible to do so with the use of translation tools. However, we need to be careful as there can be inaccuracies in translations, making it essential to ensure the intended message is conveyed correctly. Despite these challenges, our team cooperation helps compensate for any shortcomings.

異なる言語のコミュニケーションは困難ですが、翻訳ツール等を使うことでコミュニケーションをすることができます。ただ、誤った翻訳がされることもあるので伝えたいメッセージが正確に伝わっているかという点について気をつける必要があります。 課題はあるものの、チーム内の協力によって不足してる部分を補うことができています。

課題

オフショア開発では以下のような課題もあります。

  • 言語の壁
  • 文化の違い
  • 時間の違い(時差)

言語の壁という点では

  • 全ての日本メンバーが英語ができるわけではないのでコストがかかる面がある
  • 全ての資料が英語化されているわけではないため、オフショアメンバーが閲覧するときに困ることがある

このような課題もありますが、英語が得意なメンバーにフォローを依頼するなどして目的達成しつつ、今後について日々改善に向けて取り組み課題に立ち向かっています。

また、オフショア開発では時差も問題になりがちです。 幸いなことにクラウドログのオフショアメンバーは全員フィリピンに在住しています。 日本とフィリピンの時差は1時間程度で時差による大きな問題はありません。 ただ、ランチタイムとミーティングの時間が被ってしまうなど、ちょっとしたやりづらさはどうしても存在します。

その他にも、文化の違いが開発に影響することもあります。 「文化の違いが開発に影響?」と思われがちですが、実はあります。 フィリピンの祝日は突然決まります。事前に祝日が決まってる日本とは異なるので「今週金曜日は祝日になりました。」なんてこともあるんです。スプリント期間中に祝日が決まり、急遽リファインメントの実施が必要になることもあります。(個人的には最初非常に驚きました。)

今後のチャレンジ

「これまで培ってきたオフショア開発のノウハウを活かした開発組織の拡大」を目指しています。そのために「言語に依存しない技術継承の仕組みづくり」や「マネジメント強化」を行う必要があります。 「もっとリアルタイムコミュニケーションで伝えたいことを伝えられるようになりたい!」という声もあり、メンバー間で英語に対しての取り組みを共有し合って課題解決に取り組むメンバーもいます。 今後もオフショアメンバー含め開発組織として言語の壁を感じさせない開発組織強化を進めていきたいと思います!

© 2016 CrowdWorks, Inc., All rights reserved.