Slide 1

Slide 1 text

問い合わせ調査との付き合い方 ikaruga / Atsushi Katsuura 2024/03/27 第22回 Customer系エンジニア座談会 1

Slide 2

Slide 2 text

誰 ikaruga / Atsushi Katsuura GMOペパボ株式会社 EC事業部 CREチーム 渋谷からきました。会社でのあだ名は「かっさん」 。 普段はRubyやPHPを読み書きしたりゲーセンに通ったり日本酒と クラフトジンを漁ったりしています。 Resolv::DNS.new.getresources( 'me.ikaruga.org', Resolv::DNS::Resource::IN::TXT ).map(&:data) => ["GITHUB=ikaruga777", "TWITTER=@UVB_76", "WORK=GMO Pepabo Inc.", "[email protected]"] 2

Slide 3

Slide 3 text

3

Slide 4

Slide 4 text

カラーミーショップ 2005年2月にリリースされたECサイト構築サービス 今年で19周年! 多種多様な機能があり、柔軟なカスタマイズができることが特徴 関わっているエンジニアは事業部だいたい25人+会社横断のSRE3,4人 4

Slide 5

Slide 5 text

カラーミーショップの機能たち 購入者様向けマルチテナントのショップページ、カートページ(販売ページ) ショップオーナー様向け管理画面 ショップオーナー様向け公開API カスタマーサポートチーム向け管理画面 アプリストア(ショップオーナー様向け外部連携アプリのマーケット) ショップオーナー様向けメールサーバー etc.... →色々な立場の人がそれぞれの画面を利用している 5

Slide 6

Slide 6 text

EC事業部 CREチーム is カスタマーサポートと連携し、技術でショップオーナーの不安を払しょ くするチーム 事業部エンジニアの6人で活動中(EM1人を含む) カスタマーサポートチームなどからくる問い合わせ、技術調査依頼の解決 問い合わせを減らすための施策の検討、実施 他にも活動は多岐にわたる 毎月の売上の締め処理 たまにEoL対応 6

Slide 7

Slide 7 text

EC事業部 CREチーム is カスタマーサポートと連携し、技術でショップオーナーの不安を払しょ くするチーム 事業部エンジニアの6人で活動中(EM1人を含む) カスタマーサポートチームなどからくる問い合わせ、技術調査依頼の解決 問い合わせを減らすための施策の検討、実施 他にも活動は多岐にわたる 毎月の売上の締め処理 たまにEoL対応 7

Slide 8

Slide 8 text

マルチタスクになりがち!! 8

Slide 9

Slide 9 text

問い合わせ、技術調査依頼の運用 GitHub Enterprise Serverのプロジェクト上で、問い合わせごとにIssueで管理 実績 この半年で回答した問い合わせは約360件 月平均60件ほど 日直、週番制度を導入し、問い合わせの調査の担当者を決めていた 9

Slide 10

Slide 10 text

抱えていた課題 問い合わせを減らすための施策の検討、実施が進まない 問い合わせ調査の難易度が高かった場合に担当者が初手に詰まってしまう 10

Slide 11

Slide 11 text

進まない施策 問い合わせ調査のタスクに気を取られがち 周期的に問い合わせの調査担当を切り替えてなんとか捌けていたが... 日直にするとその日に解決できなかった調査の引き継ぎが面倒に 週番にすると個人の施策の開発スピードは2週に一度になってしまう 引き継ぎ漏れた問い合わせの調査進捗が出ていないことが気になってしまいどっちつか ずの状態になってしまう 複数人で施策を進めたいのに、担当が切り替わってしまいコラボレーションが進まない CREでも施策は素早くリリースして検証サイクルを回したい 11

Slide 12

Slide 12 text

問い合わせの調査対応の課題 知識(ドメイン,技術問わず)が求められる課題も多い サービスの機能が膨大で、初手の切り分け方法から調べないといけないことが多々ある 「どこの(リポジトリ|テーブル|ログ)をみると良い?」 「この機能初めてみたけど」 言語もリポジトリによって多種多様 PHP, Ruby (Ruby on Rails), JavaScript, TypeScript, Go etc... ここ一年で調査や修正のためにCloneした「事業部」のリポジトリは53 ikaruga個人の話 12

Slide 13

Slide 13 text

幸運 幸いにも社歴が長いドメイン知識豊富なEMがチームに存在している メインの機能を構成しているPHP, Rubyについては有識者がバランスよくいる 13

Slide 14

Slide 14 text

そこで 全員毎日1時間同期的に調査を行う時間を設けることにした 毎日同じ時間に集まる 新規に来た問い合わせを全員で確認 ドメイン知識や状況確認、できることを共有しながら確認して「初手」を決める 初手が決まったIssueについてはメンバー各々で調査、解決を目指す 緊急性の高くない問い合わせ内容であればこの時間以外には 「できる限り見ない」 施策に集中する時間を確保 初動や状況確認を全員の集合知を利用して「わからないことがわからない」状態を減らすの が狙い 14

Slide 15

Slide 15 text

もちろん調整は必要 依頼をいただくカスタマーサポートチームには事前に相談した 複数ユーザーに影響の疑いがあれば、エスカレしてもらって事業部エンジニアみん なで対応する 単体でも契約や売上に影響がある場合は、CREで優先順位で決めて対応する 15

Slide 16

Slide 16 text

積まれている件数をバジェットにする さばききれずに増え過ぎている状態が続いたら次週の計画で調査にかける時間を増やす 16

Slide 17

Slide 17 text

効果 手に取る課題についてわからないことがわからない、という状態が減った 不確実性を減らせている 週の担当を決めなくて良くなった 人の調整意外と面倒なので考えることが減った 開発の計画も立てやすくなった 施策に対して複数人で取り組む時間を増やすことができた 17

Slide 18

Slide 18 text

まとめ 問い合わせ調査と施策の両立を目指すために、全員で同期的に調査を行う時間を設けたら結 構いい感じになりました 懇親会で話したいこと 難易度高い調査依頼の切り上げ方 List-Unsubscribeヘッダーをどのメールまで適用させるか おすすめの日本酒とクラフトジン 18

Slide 19

Slide 19 text

おまけ 19

Slide 20

Slide 20 text

初手の切り分け方法を増やす 自分は「手札を増やす」と呼んでいる コード ghq を使ったリポジトリ管理 https://github.com/x-motemen/ghq DBレコード tbls を使ったDBのドキュメンテーション https://github.com/k1LoW/tbls ナレッジベースの整備 ログ BigQuery 最近会社横断の技術部でOpenTelemetry導入を推進してくれていている 過去ログ GHESのIssue, Slack 20