こんにちは、マンハッタンコードでプロジェクトマネージャーをしてる三井です。この記事では、私が過去参画した英会話学習アプリについてやってきたこと、実体験を元に学んだことについてお話します。プロジェクト概要私たちが参画していた英会話学習アプリはIoT機器を使用して音声解析を行い、最適な英会話レッスンを生成するというものです。開発手法はアジャイルを取り入れてアプリケーション開発を行いました。チーム体制弊社はプロジェクトマネージャー2名と技術リーダー1名で参画し、オフショア(中国・ベトナム)拠点とアジャイル開発を2週間で1スプリントとして開発を進めていました。会話を増やすだけでは情報のズレは直らない2020年4月にプロジェクトのキックオフがあり、アジャイル開発は同年5月からとなりました。5月から始まった実装(SP1)は作業タスクの量も少なく、機能の作り込みがなかったのでオフショア拠点内で完結できる内容だったのですが、SP2以降はフロントエンドとバックエンドで手分けをして機能を作り込むというものが多く発生し、想定より2倍のコミュニケーションコストが発生しました。都度ミーティングを開催し、口頭で作業の依頼や情報のすり合わせを行なっていたのですが、拠点ごとの受け取り方の違いや、通訳を通すことによってニュアンスや微妙な認識のズレが発生し、最終的にはスプリント最終日に予定している内容から漏れがあり、作業の手戻りが発生しました。会話も十分にしているし、必要なドキュメント(設計書や仕様書)も増えてきているのになぜここまで実施内容や認識にズレが発生するのか振り返りを行なったのですが、日々の会話でどのようなことを話したのか、何が決まったのかがテキスト化されずそれぞれの記憶、感覚でしか振り返りができない状態にあることに気がつきました。会話の前後は必ずテキスト化して情報を残すそこから言語の違いによる会話のズレをなくすために、今日話したい内容をオフショア拠点へ事前にテキスト化して共有し、翻訳してもらい、議題に対しての意見をコメントで入れていただくようにルールを設定しました。また、オフショア拠点の方々はなぜやるのか?を気にして開発される方が多く、納得がいかないものについては実施しないなどいうケースもありました。なぜを伝えられるようにプロジェクトの未来のお話や、実際にこのアプリを使用するユーザーのUXを交えて会話を進めていくようにしました。そうすることで意図を理解してもらい、それぞれの意見や情報がまとまった状態で会話することができるようになり、徐々に認識にズレや作業の抜け漏れが改善されました。まとめただいたずらに会話の量を増やすとその分開発に割く時間は無くなりますし、拠点も違えば作業フローや考え方など違うので、必ずプロジェクトに必要な情報やルールは可視化して誰でも見てわかるように整えておくことが大切だと学びました。今回はオフショア拠点とのコミュニケーションの問題について一部の解決方法を紹介しましたが、国内の開発でも同じような経験をされる方が多いかと思います。弊社では、プロジェクトに必要なドキュメントやナレッジ、ノウハウが豊富にあり、一緒にお仕事をさせていただくお客様はもちろん、お客様のお客様の問題や課題も一緒に解決できるようにお仕事をしています。