Slide 1

Slide 1 text

問い合わせ対応当番を自動化 で業務効率化している話 〜noteの事例〜 2022.04.22 YUMEMI.自動化 feat. note tech meetup / 福井 烈

Slide 2

Slide 2 text

自己紹介 略歴 2006年:日本インサイトテクノロジー (SIer) 2010年:ジークレスト 2013年:ガンホー・オンライン・エンターテイメント 2014年:八面六臂 2015年:note 2021年:noteのエンジニアリングマネージャーに就任 ジークレスト、ガンホー・オンライン・エンターテイメント などを経て2015年にnoteに入社。サービス黎明期か らnoteの開発に携わり、Nuxt移行、データ基盤、会計 などを担当。現在はエンジニアリングマネージャーとし て、主に組織開発、採用、広報などを行う。青森から フルリモート勤務している3児の父。 #フォートナイト
 #Notion
 #大豆ミート
 #HHKB
 #マネジメント
 
 福井 烈 / @fukuiretu

Slide 3

Slide 3 text

アジェンダ 1. 問い合わせ対応当番とは 2. 自動化アーキテクチャ全体像 3. 各プロセス詳細 4. まとめ

Slide 4

Slide 4 text

問い合わせ対応当番とは

Slide 5

Slide 5 text

問い合わせ対応当番とは 󰠣カスタマーサポート 󰬌ディレクター 󰱢エンジニア当番隊 (@help_me_dev) 🧔営業 @help_me_dev ユーザから課金できないと 問い合わせがきてます @help_me_dev 管理ツールが動きません @help_me_dev 〇〇の数値の見方が わかりません ・エンジニアへの問い合わせの 1次受け ・1-2日レベルで完了する不具合対応 を担う

Slide 6

Slide 6 text

詳しく知りたい方は | 問い合わせ対応当番とは https://note.jp/n/nedb40032d36f

Slide 7

Slide 7 text

エンジニア当番隊 | 問い合わせ対応当番とは ● 構成 ○ 全6クラン ○ 1クランあたり5〜6名を割り振り ○ 普段のチームを跨いでごった煮 ● 周期 ○ 日替わりでローテ ○ 当番を迎える度にリーダーをランダムで選出

Slide 8

Slide 8 text

エンジニア当番隊 | 問い合わせ対応当番とは ● 構成 ○ 全6クラン ○ 1クランあたり5〜6名を割り振り ○ 普段のチームを跨いでごった煮 ● 周期 ○ 日替わりでローテ ○ 当番を迎える度にリーダーをランダムで選出 自動化対象

Slide 9

Slide 9 text

自動化アーキテクチャ全体像

Slide 10

Slide 10 text

自動化アーキテクチャ全体像 当番リスト ①今日の当番対象を 抽出する ②当番対象のユーザリ ストを引き渡す ③当番に関する情報を Slackに通知する ※ベースを作ったのは私ではありません󰢛

Slide 11

Slide 11 text

各プロセス詳細

Slide 12

Slide 12 text

自動化アーキテクチャ全体像 当番リスト ①今日の当番対象を 抽出する ②当番対象のユーザリ ストを引き渡す ③当番に関する情報を Slackに通知する

Slide 13

Slide 13 text

GoogleAppScript(GAS)の責務 | 各プロセス詳細 1. 日時でスケジューラーを起動 2. 休日判定 3. スプレッドシート取得 4. 今日の当番を取得 5. 当番のユーザリストを取得 6. Zapierで用意したWebhookにユーザ情報をPOST

Slide 14

Slide 14 text

自動化アーキテクチャ全体像 当番リスト ①今日の当番対象を 抽出する ②当番対象のユーザリ ストを引き渡す ③当番に関する情報を Slackに通知する

Slide 15

Slide 15 text

Zapierの責務 | 各プロセス詳細 1. WebhookでGASからのリクエストを受け取る 2. 受け取ったユーザリスト(当番)をストレージに保管 3. 受け取ったユーザリスト(当番)からリーダーを抽選 4. リーダー(抽選されたユーザ)の IDをストレージに保管 5. クラン当番用のSlackグループメンション(@help_me_dev)にユーザリスト(当番) を追加する 6. Slackに通知する

Slide 16

Slide 16 text

おまけ

Slide 17

Slide 17 text

リーダーの再抽選コマンド| おまけ ● Slack上で /clan_leader_lottery <簡単に理由を> を実行 ● 用意した経緯 ○ お休みやリリース間近の状況でリーダーに当たってしまっ た場合に交代の心理的ハードルを下げるため

Slide 18

Slide 18 text

リーダーの再抽選コマンドアーキテクチャ全体像 ③現リーダーを除いた ユーザからランダム選 出しSlack通知 ①コマンド実行 ②Webhook実行 ストレージに保管したユー ザーリストと リーダーのIDが役立つ

Slide 19

Slide 19 text

まとめ

Slide 20

Slide 20 text

まとめ ● 頑張ればGAS or Zapierいずれかで完結できるが、それぞれの得意なことは得意 な方に任せた方が良い ○ 休日の制御 → GAS ○ グローバルな状態保持 → Zapier ○ ローコードでの実現 → Zapier ● 心理的障壁が発生し得るやりとりもシステムを介することでハードル を下げる ● GAS, Zapierはブラックボックスになりがちなのでドキュメントもセットで用意するの が吉

Slide 21

Slide 21 text

noteではたらく社員を知る エンジニア
 PM
 デザイナー
 インタビューまとめ
 note社ではたらくメンバーが書いた記事や、社員 / プロジェクトインタビューをまとめています。