※本記事は2022年2月4日に公開された記事の翻訳版です。
Author: Reggie Lai、Search Feature & Infraエンジニアリングマネージャー
検索は、オンラインサービスの一般的かつ重要な機能の1つです。この機能を使うことでお客さまは探しているものを効率的に見つけることができます。メルカリはオンラインマーケットプレイスとして、お客さまが商品を発見したときに楽しい体験をお届けできるよう、検索機能を活用および最適化しています。
短い記事ではありますが、本記事では検索の概念とメルカリでそれをどのように使用しているか、そしてメルカリが近い将来何を実現しようとしているかについて簡単に紹介します。
検索とは
そもそも検索は、検索クエリによって対応するリソースから情報を取り出すための機能またはプロセスです。情報は、テキスト、Webページ、画像、ビデオなど、あらゆる種類のデジタルコンテンツである可能性があります。リソースは通常、そのような取得プロセスにとって最適な方法でインデックス付けされます。そして取り出された情報は検索結果と呼ばれ、通常は検索クエリへの関連性が高い順にランク付けされます。
メルカリでの検索
メルカリは商品を売買するためのオンラインマーケットプレイスであるため、売る・買うという2つのアクティビティをマッチさせるために、検索は不可欠な手法です。基本的なお客さまの典型的なジャーニーは次のとおりです。
- 買い手が検索したい商品と関連するキーワードを入力する
- 売り手が出品した商品の検索結果が、特定の順序で返される
アーキテクチャの概要図
ミッションと重点分野
Searchチームは全体として、商品の発見プロセスが効率的で楽しい体験となるようニーズを理解し、買い手と売り手を結びつけるというミッションを持っています。最終的な目標は、買い手が欲しいものを手に入れるのを助け、その結果、売り手が出品した商品が売れることです。
検索は広い範囲にわたるので、複数のチームがあり、次のようなさまざまな分野に焦点を当てています(これらに限定されません);
- ユーザーインターフェイスとクライアントサイドの表示
- ランク付けの最適化と検索結果をサポートする機能
- データの集約、処理、保存
- 自然言語処理と言語コンポーネント
- 分散インフラと本番サービス
検索インフラの方向性
検索インフラ/プラットフォームの目指す方向性は次のとおりです。
- 堅牢な基盤:すべての検索アプリケーションに堅牢で持続可能な基盤を提供するためには、システムの保守性の向上とコンピューティングリソースの最適化が鍵となります。
- プロダクト開発のスピード:すべての検索アプリケーションが使える検索用PaaS(Platform as a Service)を作っています。プロダクト開発では、アイデアの実験や機能のリリースのためのビジネスロジックの実装により集中できます。
まとめ
検索には多くの部分とドメインがあります。メルカリでは、お客さまに満足していただけるよう、複数のチームがあらゆる面で力を合わせています。検索は全体で見ると複雑なプロセスですが、その目的は単純です。この記事でSearchチーム、そして検索という行為の概要を理解できたことを願っています。
採用情報
検索は、メルカリサービスを使用するお客さまの主要なジャーニーであり、検索品質は、ユーザー体験と組織全体の収益にとって極めて重要です。Search Infra/Platformチームでは、基盤となるインフラに携わり、検索が内部で実際にどのように機能するかを知ることができます。また、あなたの検索エンジンのコアと大規模な分散システムに関する専門知識は、最終的にメルカリのプロダクトとビジネスに大きな影響を与えることもできます。
スケールの大きなことがお好きですか?私たちは数億の商品を扱っており、ピーク時には数万件のリクエストを処理しています。検索エンジンやクラウドサービスの経験があり、プログラミングが得意な方をお待ちしております!
Software Engineer, Search Platform Development – Mercari