趣味でつながる恋活サービス「タップル誕生」(株式会社マッチグエージェント提供)や位置情報を利用した、すれ違いを恋のきっかけにするサービス「CROSS ME」、“タイプ(好み)” の異性を探せる恋愛・婚活サービス「mimi」、そして2017年8月28日(月)にリリースした女性からはじまる恋アプリ「トルテ」とサイバーエージェントグループでは様々なマッチングサービスを提供しています。
それら全てのマッチングサービスを集結させたのが、横断組織である「カップリングユニオン」です。2016年12月の発足以来、カップリングユニオン内で様々な運営ノウハウの共有を行なってきました。エンジニア同士の横断的な取り組みも盛んなのが特徴で、2017年9月11日(月) にはカップリングユニオンとしては初めての主催となる勉強会「マッチングサービスを支えるElasticsearch」を開催。当日は特性の異なる各サービスで得たElasticsearchの知見を、参加者の方々に共有いたします。
Developers Blogでは、カップリングユニオン横断の技術的な取り組みを推進する河野と、当日登壇を行うアントニオ、川田、中川、矢﨑にインタビュー。
勉強会当日の見どころや、カップリングユニオン内で行われている技術的知見の共有、各サービスの今後の展望について話してもらいました。
河野 智則 「タップル誕生」リードエンジニア。 2011年サイバーエージェント中途入社。サーバーサイドエンジニアとして、コミュニティサービス「アメーバピグ」や「ピグライフ」の運用・開発を担当したのち、オンラインRPG「ピグブレイブ」、美少女バトルRPG「オルタナティブガールズ」等ゲーム事業の立ち上げに従事。 2016年7月に株式会社マッチングエージェントに出向後は、同社のリードエンジニアを担当。
ヴァルヴェルデ・アントニオ 「タップル誕生」サーバーサイドエンジニア。 スペイン出身、現地の大学院を卒業後2013年サイバーエージェント新卒入社。入社後は基盤システムやソーシャルゲームの立ち上げ・運用に携わった後、2015年12月より株式会社マッチングエージェントに出向し、現職。
川田 浩史 「CROSS ME」エンジニアリーダー兼スクラムマスター。 2011年サイバーエージェント新卒入社。入社後は、サーバーサイドエンジニアとして数々のコミュニティサービスやソーシャルゲームの立ち上げ・運用に携わる。2015年11月よりグループ会社の株式会社プレイモーションに出向し、現職。
中川 武憲 「トルテ」サーバーサイドエンジニア。 2016年サイバーエージェント新卒入社。無料ホームページ作成サイト「Ameba Ownd」の運用に携わった後、2017年2月より株式会社トルテに出向し現職。
矢﨑 亮太 「mimi」プロジェクトマネージャー兼サーバーサイドエンジニア。 2006年、サイバーエージェントのグループ会社、株式会社シーエー・モバイルへ中途入社。様々なWebサービスや課金基盤などの開発を担当した後、2016年7月より現職。
第1回目のテーマは、マッチングサービスを運営する上で欠かせないElasticsearch
ーーカップリングユニオンはどういった組織なのでしょうか?
河野:カップリングユニオンは、サイバーエージェントグループで運営している全てのマッチングサービスを集結させた横断組織です。趣味でつながる恋活サービス「タップル誕生」(株式会社マッチングエージェント提供)、位置情報を利用した、すれ違いを恋のきっかけにするサービス「CROSS ME」、“タイプ(好み)” の異性を探せる恋愛・婚活サービス「mimi」、そして2017年8月28日(月)にリリースした女性からはじまる恋アプリ「トルテ」の4つのプロジェクトが所属しています。
サイバーエージェントグループ全体でマッチングサービスの成長を加速させ、市場No.1を目指していくことを目的に昨年12月に設立しました。カップリングユニオン全体では毎週月曜に全体で朝会を実施したり、各子会社社長や企画職メンバーで頻繁に運用ノウハウの展開や共有を行なっています。
カップリングユニオンには30名弱のエンジニアが所属していますが、我々エンジニア組織としては同じマッチングサービスを開発するエンジニア同士の交流や知見の共有、活性化を目的にカジュアルな社内勉強会や交流ランチを行なっています。カップリングユニオン全体で価値基準を決めるとか技術選定を統一するということはせずに、子会社の集まりなので各社の意向を優先させることを大切にしています。
これまでにサーバーサイドやiOS、Android、デザインといった技術軸に分かれた勉強会を不定期に開催してきました。勉強会ではテクノロジーレーダーを用いて各社がどういう技術をどのようなスタンスで使用しているのか発表し合ったり、最近こういう技術を使ってみましたといった内容をカジュアルに共有しています。
ーーどんなきっかけで今回の勉強会開催に至ったのでしょうか?
河野:これまで各社のメンバーがそれぞれ勉強会やイベントで登壇することはあったのですが、カップリングユニオンとして勉強会を主催したことはありませんでした。どこかのタイミングで対外的に技術アウトプットをしたいねという話をずっとしていて、今回「トルテ」もリリースしたのでぜひこの機会に実施しようということになりました。勉強会のテーマはマッチングサービスを運営する上で欠かせない、Elasticsearchです。
社内のメンバーでも、まだ他のサービスがどのように工夫をしているのかといった深い知見については知らないことも多いと思います。社外の方々に参加いただく勉強会ですが、今回はカップリングユニオンのメンバーたちにとっても実りある時間になるのではと考えています。
ーー登壇者のみなさん、今回の登壇内容と見所について教えてください
アントニオ:「タップル誕生」はカップリングユニオン内の他のサービスと異なり、リリース以来検索機能にはElasticsearchではなくMongoDBを用いていました。2016年にElasticsearchに移行したのですが、結果的に検索機能のパフォーマンスも向上しましたし、おかげで様々な施策を試せるようになりました。今回は導入理由や方法について話したいと思います。
中川:「トルテ」は新規サービスで最初からElasticsearchを採用することを決めていたので、導入にあたってカップリングユニオンの知見を生かし、ロジック周りや検証実装を進めていった経緯をお話する予定です。
マッチングサービスなので、すでにマッチングしたユーザーをお互いの検索結果から除かなければいけないのですが、その方法が特に見どころかなと思います。
川田:「CROSS ME」は位置情報を用いたマッチングサービスなので、その特性を生かして「位置情報を用いたElasticsearchの活用事例」と題してお話させていただきます。
矢﨑:「mimi」ではタイプの異性を探す際に、ランダム表示されるカードで1枚ずつ探す方法とリストで一覧から探す方法があります。これまではランダム表示のアルゴリズム部分にしかElasticsearchを用いていなかったのですが、最近リスト表示にも導入しました。ランダム表示とリスト表示では検索できる項目が違うため、インデックスの構成を変える必要があったのですがそのあたりのお話ができればと思っています。
皆同じフロアで開発しているので気軽に相談しやすい環境
ーーマッチングアプリを開発するエンジニア同士で知見を共有し合える環境のようですが、具体的にはどんなメリットがありましたか?
矢﨑:「mimi」は、リリース当初からカップリングユニオンに所属していたのですが、オフィスは離れたところにありました。リリースから4ヶ月後に同じオフィスで働くようになってから、自分たちでは解決できなくてもやもやしていた点もカジュアルに聞くことができ、すごく助かっています。
たとえば新たな機能を開発するときに、こちらの実装が間違っているのかOS側の仕様上の問題なのかわからずに「mimi」メンバーだけで悩んでいたことがありました。「タップル誕生」など運営の長いサービスではそういった知見が既にたまっているので、彼らに質問するとすぐに解決しましたね。
河野:カジュアルに相談しやすい環境だと感じてくださっているのなら嬉しいです。「カップリングユニオンどうですか?」って普段面と向かってなかなか聞けないので(笑)
矢﨑:何かあった際に相談できるエンジニアがすぐ近くにいるというのは非常に心強いですね。「mimi」はサイバーエージェントのグループ会社 シーエー・モバイルの子会社である「mimiLab」で運営しているのですが、シーエー・モバイル内ではマッチングアプリを作っているチームは他にないんです。カップリングユニオン内には4つものマッチングアプリがあり、皆同じフロアで開発しているので相談もしやすいですし、先日も課金周りで悩んだ際にも皆に相談してスムーズに開発することができました。
中川:新たにマッチングサービスを立ち上げる際、課金周りの知見やマッチングサービスで欠かせないElasticsearchの活用方法などが気になるところですが、「タップル誕生」などすでに流行っているサービスの知見を活かして効率的に開発を進められたのはよかったですね。おかげさまで、技術的に挑戦する余裕ができました。身近に相談できる横断組織があるのは心強いです。
河野:「トルテ」のような新規サービスには、特に横断組織のメリットが活きますよね。
サイバーエージェントでは新規サービスの立ち上げ時に新しい技術を使うことが多いですが、3年以上運用している「タップル誕生」もそういった点に刺激を受けて、逆にこちらも良いところを参考にさせてもらうというメリットもあるんです。
川田:もともとElasticsearch周りは「CROSS ME」が最初に導入して、試行錯誤取り組んだ結果を「トルテ」などに活用してもらえたかなと思っています。
河野も話していたように、「トルテ」はどんどん新たな技術を取り入れているので、今後それらを「CROSS ME」にも生かしていきたいなと考えています。たとえば「トルテ」ではすでにマッチングした異性を表示させないようにする仕組みをElasticsearch上で行なっているとのことでしたが、「CROSS ME」はAuroraのみで対応しているんです。今回の勉強会で話を聞いて、うちでも対応できそうということであればぜひ参考にしたいと思っています。
中川:「CROSS ME」も「トルテ」も同じGoを使っていますしね。
アントニオ:「タップル誕生」は運用歴も3年以上と長く、カップリングユニオンの中でもサービス規模が一番大きいのでパフォーマンス系の課題に向き合わなければいけない機会が多くあります。ElasticsearchやDBの設計などカップリングユニオンのエンジニアメンバーにデータ設計のアドバイスをもらったりもしました。
また、多くのユーザーに利用いただいている分Elasticsearchでパフォーマンスの問題が起きたことがありましたが、その解決方法についてもカップリングユニオンのメンバーに共有したりしています。先ほど河野が言っていたように、新しい技術を他のサービスから教えてもらって、こちらで導入してみることも多々あります。
横断組織だからこそ、リリース前から数値感覚を持つことが可能に
ーー様々な知見を共有しつつも、やはりみなさん「カップリングユニオン内の他のサービスたちには負けないぞ」という思いはあるのでしょうか?
川田:日々ストアのランキングはチェックしていますが、各サービスで戦略が異なるので、順位の変動などはそんなに意識しすぎないようにはしています。それ以上に知見の共有など、メリットをたくさんいただいている感じですね。
矢﨑:以前「CROSS ME」のレスポンスタイムを聞き、このレスポンスを実現できているからこそ現在の高水準のサービスレビューを維持できているのだと感じました。そのため「mimi」も同じくらいのレスポンスを実現できるよう、mySQLだと厳しいところはElasticsearchに置き換えたりしています。
なので、カップリングユニオンの他サービスたちには、しれっと対抗意識を持っています(笑)
中川:「トルテ」では毎日朝会を実施しているのですが、リリース前から数値感覚を持っておこうということで、他のサービスの数値を共有するようにしていました。また、「タップル誕生」くらいの規模になったときを想定して、負荷対策も進めています。
アントニオ:他のサービスを意識するというよりも、「タップル誕生」をより多くの方々に使っていただけるよう効果的な施策を生み出し続けることに力を割いています。その取り組みの一つとして、私のチームではエンジニアがより多くの施策を提案できるよう「エンジサク」を実施しています。
ーーさいごに今後のカップリングユニオンと、ご自身の担当サービスの展望を教えてください
河野:アメリカにIACグループという様々なデーティングサービスを提供しているグループがあるのですが、展望としてはカップリングユニオンもいずれはそういう組織を目指しています。
多種多様なマッチングアプリを生み出して日本のマッチング市場をさらに伸ばしていき、その成長を牽引できるようなグループになれたら嬉しいです。
アントニオ:まず技術に関しては、今よりも検索周りの改善効果を最大化していきたいと思っています。Elasticsearchについてももっとうまく使っていきたいですし、良いアルゴリズムでユーザー検索の粒度を上げていきたいですね。またAndroidのKotlin化やiOSのSwift化も進めていて、どんどん新たな技術を取り入れていきたいと考えています。
河野:より多くの方々に「タップル誕生」を使っていただきたいという思いがあるので、たとえば今後は友達と一緒に好みの異性を探せたりだとか、より “趣味でのつながり” の部分を強化できたら嬉しいですね。
中川:「トルテ」は女性支持率ナンバーワンを目指していて、男性の魅力がクチコミでのぞけたり、アルバム機能があるのが特徴です。特にアルバム機能は、女性は写真を通して人柄を感じることが得意であるという考えから、プロフィールの顔写真以外の趣味や特技を写真で紹介する場として提供しています。写真やその説明テキストから共通の趣味があることが分かって、マッチングにつながるきっかけになれれば嬉しいですね。エンジニア発の施策としては、このアルバム機能内の写真とテキストを機械学習することで、相性の良いユーザーに出会いやすくするような取り組みを考えています。
矢﨑:「mimi」は顔で検索できるという他のサービスにはない特性があるので、その独自性をさらに活かした展開ができればと思っています。たとえばもっと検索カテゴリのバリエーションを増やしてみたりとかサービスの展開は色々と考えられます。またサービス規模が大きくなっていくとパフォーマンスはさらに重要になるので、ユーザーが心地よく使えるサービスを目指して頑張っていきたいですね。
川田: “すれちがい” は気軽に楽しめるものだと思うので、その気軽さを武器にして、マッチングサービスを使うならまずは「CROSS ME」を使おう、と思っていただけるようなサービスにしていきたいです。