📚

全体最適なデータサイエンスチームの運営について (Ubie Tech Book 2024 から抜粋)

2024/09/17に公開

くんぺー (@ymdpharm) です。Ubie でデータサイエンスチームの Lead をしています。

2024.5に開催された技術書典16にて、有志のエンジニアメンバーで「Ubie Tech Book 2024」を出しました (※ 現在はもう販売を停止しています)。私は「第4章: データサイエンスチームの目指す世界について」を担当し、その中で「全体最適を目指して」と題してチームの運営について書きました。

https://x.com/ymdpharm/status/1793267318996512856

いま読み返すと3か月しか経っていないのにすでに古い部分があります。ただ古くなっていくのももったいない気がするので、内容を一部公開します。最新の状況については、直接お話しましょう!

以下、「基盤チーム」という用語を用います。技術アセットによりプロダクトチームによる事業成長を支援するチームという意味で用いていて、私達データサイエンスチームはここに位置付けられます。

Ubieとデータサイエンスチーム

「データサイエンスチーム」と聞くと、どんなミッションのチームを想像するでしょうか。たとえばプロダクトチームを顧客とみなしてAPI等を介した機能提供をする形があるでしょうし、R&Dによる長期的なリターンを目指しているところもありそうです。もしくは人材や知識を提供して社内コンサルティングに徹することもあるかもしれません。私自身いくつかの会社に属してきましたが、さまざまな要因によってデータサイエンスチームのあるべき形は異なる実感があります。変化の激しいスタートアップにおいては柔軟性を保つことが重要だと思います。

「テクノロジーで人々を適切な医療に案内する」をミッションとするUbieにおいて、ユーザーに適切な情報提供を可能にするためのデータとアルゴリズムは事業のコア技術といえます。そして、これを支えるのが我々データサイエンスチームです。Ubieはこれまで、2つの主なサービス(生活者向けの症状検索エンジン「ユビー」と医療機関向けの「ユビーメディカルナビ」)を展開していますが、データサイエンスチームはこれらのプロダクトにAPIを提供してその成長を支えてきました。結果としてサービスは広くユーザーに受け入れられるものになり、会社の競合優位性を構築することに成功しています。データサイエンスチームの社内における歴史は古く、2017年の創業時にはすでに医学論文をもとにした機能の原型がありました。現在は機械学習エンジニアと医師メンバーが合わせて数名在籍しています。それぞれの専門性を活かしつつ、かつ目的に応じて自領域に限定せずにメンバーが活躍していて、日々頼もしいなあと感じています。余談ですが、データサイエンスチーム出身の社員は他のさまざまな領域でも活躍しており、ある意味で人材育成の "ゆりかご" 的な側面も持っています。私達は、そんなチームです。

これまでの取り組みと現在地

データサイエンスチームの主要な責務は、APIとしてプロダクトサイドに提供している機能群の開発と運用です。ここでの機能群とは、ユーザーに関連する病名を適切に表示するためのいくつかの機能を指しています。創業時にはモノリシックなシステムだったようですが、現在はPythonベースのマイクロサービスとして独立しており、それにより新しい機能の開発が活発になり発展してきた経緯があります。

症状検索エンジン「ユビー」で使われている主な機能には、質問選定機能と関連病名列挙機能があります。質問選定機能とは、ユーザーから重要な症状や状態を聴取するために適切な質問を決定する機能です。ユーザーに関連病名を表示するために、必要十分な量の情報を得ることを目指して開発されています。質問数が多すぎるとユーザー体験を毀損する一方で、十分な情報がないと適切な情報提供を行えない難しさがあります。関連病名の列挙とは、前段の質問選定機能でユーザーから得られた回答をはじめいくつかのインプットに対して関連する病名をリストアップする機能です。公知の医学的な情報に基づき、その情報提供によってユーザーが適切な治療にたどり着けることを目指して開発しています。以下に、質問選定機能(左)と関連病名機能(右)がそれぞれ活用されているサービスのイメージを示します。他にも、サービス内のさまざまなところで、データサイエンスチームの開発した機能が活用されています。


症状検索エンジン「ユビー」動作イメージ

プロダクト開発以外の観点では、データパイプラインの整備、E2Eのリグレッションテスト、ビジネス後方支援のための分析、データ管理のための各種ツールの開発などを行っています。

最近の潮流として、Ubieは大きく、かつ複雑になってきています。医療業界においてユーザーの抱える課題とビジネス構造は本質的に複雑なものです。私達はこの複雑さに向き合っているわけですが、多くの打席に立つことで課題を解く姿勢を大切にしてきました。結果として、社内には成熟したチームからゼロイチ探索のチームまでさまざまなフェーズのチームが存在しています。

それに伴って、データサイエンスチームが単体で価値を出すことが難しくなってきているとも感じています。我々は横断チームは基本的にプロダクトチームを介して価値を生んでいるわけですが、さまざまなフェーズのチームが存在すれば、それだけ連携の難易度が上がります。また、Ubieはボトムアップで自律的な組織を志向しているため、トップダウンの形で連携を促すようなこともあまり期待できません。使われるものを作るには、プロダクトチームの需要を適切に満たすことが求められます。

全体最適を目指して

リソースが限られるスタートアップにおいて「使われないものを作ってしまうこと」は致命的です。それはユーザーに向き合っているプロダクトチームだけでなく、社内にユーザーを抱える基盤チームにおいても重要な観点です。リターン期待値の高いアセット構築を探索するにはプロダクトチームとの伴走が不可欠で、次のような観点が重要だと思っています。

正しいテーマ選定

まず、テーマの設定です。基本的に、プロダクトチームが向き合っているもっとも大きい不確実性、つまりユーザーの課題やビジネス上の課題に私達も向き合ってしまうのが効率的だと思っています。特にプロダクトのチーム側が解決可能な課題だと思っていない点を探し出してリーズナブルな提案にできるとベストです。また、一石N鳥になるように適切に抽象化された問題設計に落とし込むことも重要で、そこはデータサイエンスチームをはじめ基盤チームの腕の見せ所かと思います。

これを精度高く実現するには、ドメイン理解が役に立つと思います。ドメインとは、ユーザー理解、ビジネス構造、医療業界の知識やデータなどを幅広く指しています。前提としてデータサイエンスの高いスキルは必要ですが、Ubieはシンプルなソリューションとドメイン理解のかけ合わせで価値が出しやすい環境だと思います。今のメンバーを見ると、それぞれ何かしら掛け合わせられる領域を持ち合わせて課題に挑んでいるように思いますし、成果を挙げた取り組みを振り返ってみても技術的にはシンプルなものが多い気がします。ドメインエキスパートとして医師が在籍している点は、この観点でもとても頼もしいです。

また、コミュニケーションも重要です。プロダクトチームが解決できると思っていない課題は「ただ話す」ことでしか発見できません。Ubieはコミュニケーションを重視した文化で、雑談を大切にしているメンバーが多いです。また、timesから始まるSlack上の議論も活発です。この文化は、データサイエンスチームが正しいテーマ選定を可能にするのに役に立っています。

Ubieの文化として固定の組織図を持たずにホラクラシー的な組織運営をしている点があります。これは各メンバーの柔軟な兼務を促進するため、ドメイン理解の助けになっています。私も新規プロダクト開発の開発責任者を兼務していたことがありますが、そのときのプロダクト開発の知見、特に向き合う課題の種類とそれを解くフェーズ分けの感覚は基盤チームでのテーマ選定に活用できている実感があります。

小さく検証する

正しいテーマ選定とオーバーラップする部分ではありますが、プロジェクトの進め方の工夫も重要で、やはりセオリーとおり小さく検証することが重要です。施策がプロダクトサイドで完結する形に縮小できるなら、そこで十分なリターンが生めることを検証するべきです。Ubieでは全社的にこれが徹底できており、常に「本当に作るべきなんだっけ?」の問いが投げかけられている印象があります。

とはいえ、特にデータサイエンス領域はやり込んではじめて価値が出る部分もあり、どれほど技術的な投資をするかの判断にはバランス感覚が求められます。検証できるまでのリードタイムが長い場合は、計測可能な前駆指標で計測する選択肢を持っておけると良さそうです。また、有識者の意見を参考にして思い切ってインベストをかける意思決定も重要です。

浸透させる

Ubieという会社はボトムアップの文化を大切にしています。ホラクラシーで組織を運営していて、意思決定に必要な権限は各チームに委ねられます。これは最高な文化なのですが、基盤的な取り組みで全社的に足並みを揃えるのが難しい側面もあります。トップダウンで連携を強いるような浸透の仕方が期待できません。結果、能動的に使われるものを作っていく必要があり、組織に取り組みを浸透させることが重要になってきます。ここで重要になるのもやはりコミュニケーションになりそうです。全体最適のあるべき形を共有して、認識と意思決定をすり合わせることが重要です。

上記の課題感に対して、最近はデータサイエンスチームを飛び出してプロダクトチームに兼務として所属してしまう方法に手応えを感じています。プロダクトチームのひとりのメンバーとしてその課題に取り組み、専門性をもって(もしくは専門性を捨てて)チームに貢献しつつ、腰を据えてスケールする際にはデータサイエンスチームに持ち帰るような動き方です。この取り組みは、兼務先の選択と属人性の難点がありますが、うまくワークすると全体最適を効率的に達成できるのでわくわくしています。これはまだ試行錯誤中の取り組みで、うまくワークしたら扱う領域や割く人的リソースを拡大していきたいと思っています。

おわりに

Ubieにおけるデータサイエンスチームを紹介しました。会社はこれから「テクノロジーで人々を適切な医療に案内する」を体現していく局面にいます。データ活用は間違いなくその要であり、世界に対してどんな貢献ができるかと考えるとワクワクしますね。

Ubie テックブログ

Discussion