Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
CSの生産性改善を支える分析環境 Mercari CS/CRE Tech Talk #1
Search
ukitaka
July 04, 2021
Technology
1
2.8k
CSの生産性改善を支える分析環境 Mercari CS/CRE Tech Talk #1
ukitaka
July 04, 2021
Tweet
Share
More Decks by ukitaka
See All by ukitaka
switchのexhaustiveness/redundancy チェック 理論と実装 わいわいswiftc #8 @ukitaka
ukitaka
0
210
SwiftのDemanglerを書く @ わいわいswiftc番外編
ukitaka
0
460
Swiftの型システムに入門する - iOSDC Japan 2018
ukitaka
10
7k
Responder Chainを使って コードをスッキリさせたい - 第1回 HAKATA.swift
ukitaka
6
1.4k
理論から入門するswift/lib/Sema - わいわいswiftc #1
ukitaka
5
1.7k
Realmの処理を再利用可能かつ合成可能にする
ukitaka
0
940
マルチスレッドRxSwift @ 社内RxSwift勉強会
ukitaka
5
1.2k
今日こそ理解するHot / Cold @社内RxSwift勉強会
ukitaka
14
2.8k
RxSwift コードリーディングの勘所@社内RxSwift勉強会
ukitaka
3
1.1k
Other Decks in Technology
See All in Technology
MCPで変わる Amebaデザインシステム「Spindle」の開発
spindle
PRO
3
2.9k
Automating Web Accessibility Testing with AI Agents
maminami373
0
1.1k
AI エージェントとはそもそも何か? - 技術背景から Amazon Bedrock AgentCore での実装まで- / AI Agent Unicorn Day 2025
hariby
4
1.2k
Kiroと学ぶコンテキストエンジニアリング
oikon48
6
9.2k
Language Update: Java
skrb
2
280
Grafana MCPサーバーによるAIエージェント経由でのGrafanaダッシュボード動的生成
hamadakoji
1
1.4k
Function Body Macros で、SwiftUI の View に Accessibility Identifier を自動付与する/Function Body Macros: Autogenerate accessibility identifiers for SwiftUI Views
miichan
2
170
20250903_1つのAWSアカウントに複数システムがある環境におけるアクセス制御をABACで実現.pdf
yhana
2
410
まだ間に合う! StrandsとBedrock AgentCoreでAIエージェント構築に入門しよう
minorun365
PRO
11
1k
【初心者向け】ローカルLLMの色々な動かし方まとめ
aratako
7
3.2k
Webブラウザ向け動画配信プレイヤーの 大規模リプレイスから得た知見と学び
yud0uhu
0
210
落ちる 落ちるよ サーバーは落ちる
suehiromasatoshi
0
140
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Site-Speed That Sticks
csswizardry
10
810
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
840
Build your cross-platform service in a week with App Engine
jlugia
231
18k
GitHub's CSS Performance
jonrohan
1032
460k
Embracing the Ebb and Flow
colly
87
4.8k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Fireside Chat
paigeccino
39
3.6k
Making Projects Easy
brettharned
117
6.4k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.6k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
Transcript
1 CSの生産性改善を支える分析環境 Mercari CS/CRE Tech Talk #1 @ukitaka
2 2018年にiOSエンジニアとしてメルカリ 福岡 オフィスに入社、その後色々あって現在は CRE/CX-PlatformのEngineering Manager. 音楽とアイドルとSplatoonと野鳥が好きで す。 Yuki
Takahashi (@ukitaka)
3 今日の話 メルカリのお問い合わせ対応ツール(以下、Contact-Tool) を 作っている僕らのチームが、どのようにデータを活用しながら CSの生産性改善を行っているのか、その環境やツールについて 簡単に紹介します。
4 Contact-Toolについて • Contact-Toolを内製しているメインの理由は、メルカリというプロダクトに最適 化されたお客様体験を提供するため • とはいえお客様体験だけを追い求めればよいというわけではない • CSの方々に使ってもらうために、ツールとして効率性・生産性・コストなどに責任 を持つ必要がある
お客様体験の改善と生産性の改善
5 画像 良いコンタクトセンターが考慮すべきこと お客様に価値を届けるためには、効率性を 考えなければいけません。 効率的な運用ができないと、コスト面で会 社にとっての負担が大きくなってしまうばか りか、お客様に良い体験を提供することす らままならなくなってしまいます。 なのでツールとしても効率性に責任を持つ
必要があります。 「コールセンターマネジメント 戦略的顧客応対 理論と実践」 からの引用
6 生産性を図るための指標の1つ: AHT • AHT = 1件のお問い合わせの対応にかかる平均時間 • ものすごく単純化すると、すべてのお問い合わせに返信するためには、 お問い
合わせ数 × AHT 秒分の時間が必要になる • これに応じて必要人員が計算され、その人数に応じたコストがかかってくる構造 AHT (Average Handling Time)
7 お問い合わせ数 × AHT コスト削減へのアプローチ (お客様側) • VoCを元にプロダクト改善を行い、お困りごと自体を減らす • ガイドやチャットボットによって自己解決率をあげる
8 お問い合わせ数 × AHT コスト削減へのアプローチ (ツール側) • ツールのUIや機能によって対応を効率化する • CSの方々のオペレーションを改善する
9 ここまでのまとめ • お問い合わせ対応ツールとして、お客様体験の向上だけでなく、効率性・生産性 ・コストに責任をもつ必要がある • 効率性・生産性を改善し、コスト削減につなげるために、ツールとして追うべき指 標の1つにAHT(Average Handling Time)
がある
10 生産性改善に取り組むための仕組み
11 生産性改善に取り組むための仕組み • AHTを計測し、そのデータを集めることができる必要がある • そこから仮説をたて、改善し、効果を検証する • それを繰り返すことで成果を積み重ねていく 計測して改善する
12 生産性改善に取り組むための仕組み • データ計測: FE/BEでのロギングの仕組み • データ収集: CloudSQLからBigQueryに集めるpipeline • 分析環境:
BigQuery, AI Platform Notebooks • 可視化: Looker, AI Platform Notebook 利用しているツール・仕組み
13 Contact-Toolのアーキテクチャについて 自分自身でデータストアをもつ
14 Contact-Toolのアーキテクチャについて FE/BEがわかれている
15 HTを計測するためのログの仕組み • Backendでのログ ◦ アクションしたログが確実に存在するが、APIが叩かれる単位でしかログが 取れない • Frontendでのログ ◦
細かい操作のログまで取れるが、欠損・遅延も起こる ◦ クライアントPCの時刻設定に依存してしまう • 基本はBackendのログを使いつつ、詳細な分析が必要な場合にはFrontend のログを組み合わせて使う Frontend/Backendそれぞれでログの仕組み(自作) を持つ
16 参考: なぜGoogle AnalyticsやDatadog UX Monitoring を活用しないか? • Google AnalyticsやDatadog
User Monitoringなど、代替となるツールは いくつかある • しかし個人情報を扱う業務の性質上、セキュリティ的なリスクや、そもそも外部に アクセスできないなどのシステム的な制約があった • 結果として自作することになった
17 データを収集するための仕組み • 前提として、メルカリはマイクロサービスアーキテクチャを採用している • 先程あげたようなログも一度Contact-ToolのCloudSQLに保存された後、分 析のためにBigQueryに集められる • Cloud Composer
/ Cloud Dataflow等を組み合わせたパイプラインの仕組 みを弊社データプラットフォームチームが提供している BigQueryに集められる
18 データを収集するための仕組み (参考記事) メルペイにおける大規模バッチ処理 メルカリ・メルペイの成長を支える データ基盤と はどんなものか
19 データ分析する環境について • BigQueryのdataViewer権限を持っている人であれば、自由にデータを使っ た分析が行える • クエリで完結するようなシンプルな分析であればBigQueryを使うことが多い • 一方でRやPythonを使って高度な分析を行いたい場合もある BigQueryとNotebookの2つの環境
20 データ分析する環境について • AI Platform Notebooks = Google Cloud Platformのマネージド型の
JupyterLab ノートブック インスタンス • BigQueryへのアクセスが可能 • ローカルマシンでの分析も可能ではあるが、チームの共通の分析環境を設ける ことで、分析作業の属人化を防ぐ • 分析の過程や考えをそのままシェアできるのもGood 高度な分析環境としてのAI Platform Notebooks
21 データを可視化するツール Looker CloudSQL BigQuery
22 Looker
23 まとめ • データ計測: FE/BEでのロギングの仕組み • データ収集: CloudSQLからBigQueryに集めるpipeline • 分析環境:
BigQuery, AI Platform Notebooks • 可視化: Looker, AI Platform Notebook 利用しているツール・仕組み
24 ありがとうございました