AbemaTV, Inc. All Rights Reserved
野口 直寛 (Noguchi Tadahiro)
2018年新卒入社
入社以来 ABEMA にて Web エンジニア
Web チームテックリード
Web Performance Engineering チームリーダー
Client SRE チームメンバー
テックリードとしてチームの技術戦略を考えながら,パフォーマンス,リ
ライアビリティ,DevOps生産性向上に取り組んでいます
2
Profile
@nodaguti
Slide 3
Slide 3 text
AbemaTV, Inc. All Rights Reserved 3
CA BASE NEXT 登壇 (2021/05)
ABEMA Web ブラウザ版をより高速で高信頼にするために
WEB+DB PRESS Vol.124 記事執筆 (2021/08)
データドリブンなパフォーマンス改善
一過性で終わらせない文化の作り方
自己紹介
Slide 4
Slide 4 text
AbemaTV, Inc. All Rights Reserved 4
1. Web パフォーマンスに取り組むわけ
2. 専任チームで実現したこと
3. 最近の活動と成果
4. 今後の展望
INDEX
Slide 5
Slide 5 text
AbemaTV, Inc. All Rights Reserved
Web パフォーマンスに取り組むわけ
5
Slide 6
Slide 6 text
AbemaTV, Inc. All Rights Reserved
Web パフォーマンスに取り組むわけ
6
1. Web アプリケーションの特性を活かし,サービス体験をよくするため
2. 検索エンジンからの評価を高め,サービス流入を増やすため
3. よい体験をユーザーに届け,サービス利用を促進するため
Slide 7
Slide 7 text
AbemaTV, Inc. All Rights Reserved
Web パフォーマンスに取り組むわけ
7
1. Web アプリケーションの特性を活かし,サービス体験をよくするため
2. 検索エンジンからの評価を高め,サービス流入を増やすため
3. よい体験をユーザーに届け,サービス利用を促進するため
Slide 8
Slide 8 text
AbemaTV, Inc. All Rights Reserved
サービス体験の向上
8
● Web アプリはインストール不要
○ ブラウザで URL にアクセスするだけでサービスを使い始められる
ストアを開く
アプリを
インストール
サービスを開く
URL を開く サービスを開く
スマートフォン
アプリ
Web
アプリ
Slide 9
Slide 9 text
AbemaTV, Inc. All Rights Reserved
サービス体験の向上
9
● Web アプリはインストール不要
○ ブラウザで URL にアクセスするだけでサービスを使い始められる
● サービス選好度が高くない未リーチ層・ライト層への「入り口」
○ 例:アプリを入れるほどではないけど Twitter で流れてきた動画をちょっと見
てみたい
● 「手軽さ」「体験のよさ」が鍵となる
○ 高速に動作する体験で次の来訪へ繋げる
Slide 10
Slide 10 text
AbemaTV, Inc. All Rights Reserved
サービス体験の向上
10
● ABEMA はリニアとオンデマンド配信の
ハイブリッド型サービス
● 特にニュース・緊急速報など速報性が
求められるコンテンツでは,視聴を素早く
始められることが重要
Slide 11
Slide 11 text
AbemaTV, Inc. All Rights Reserved
Web パフォーマンスに取り組むわけ
11
1. Web アプリケーションの特性を活かし,サービス体験をよくするため
2. 検索エンジンからの評価を高め,サービス流入を増やすため
3. よい体験をユーザーに届け,サービス利用を促進するため
Slide 12
Slide 12 text
AbemaTV, Inc. All Rights Reserved 12
サービス流入の増加
Credit: https://developers.google.com/search/blog/2020/11/timing-for-page-experience
Core Web Vitals がページのランクづけ要素として使われている
パフォーマンスが検索からのサービス流入に影響する
Slide 13
Slide 13 text
AbemaTV, Inc. All Rights Reserved
Web パフォーマンスに取り組むわけ
13
1. Web アプリケーションの特性を活かし,サービス体験をよくするため
2. 検索エンジンからの評価を高め,サービス流入を増やすため
3. よい体験をユーザーに届け,サービス利用を促進するため
Slide 14
Slide 14 text
AbemaTV, Inc. All Rights Reserved 14
サービス利用の促進
パフォーマンス
エンゲージメント
コンバージョン
矢印は正の接続 : 根本の増減と先の増減が連動する
Slide 15
Slide 15 text
AbemaTV, Inc. All Rights Reserved
● 世界中のさまざまな Web サービスで統計的に実証
○ Walmart.com
■ ロード速度が1秒速くなるとコンバージョンレートが 2%高くなった
○ オバマ元大統領の寄付サイト
■ ページ速度を60%向上させたら寄付額が 14%上昇した
○ BBC
■ 読み込みが1秒遅くなるごとに10%のユーザーが離脱した
○ 他の事例:
● ABEMA でも同様の傾向が観測されている
15
サービス利用の促進
Slide 16
Slide 16 text
AbemaTV, Inc. All Rights Reserved 16
読み込み時間と直帰率の関係 起動開始時間と5分視聴化率の関係
サービス利用の促進
どちらもパフォーマンスが悪くなると数値が悪化している
直帰率
直帰率・セッション数
読み込み時間
直帰セッション数
セッション数
Slide 17
Slide 17 text
AbemaTV, Inc. All Rights Reserved
専任チームで実現したこと
17
Slide 18
Slide 18 text
AbemaTV, Inc. All Rights Reserved
パフォーマンス改善の難しさ
18
● まとまったリソースが必要
○ 継続的な計測・モニタリングの仕組み
○ 改善結果を統計的に評価するための仕組み
○ ビルド・配信などシステムの深いところまで手を入れる改善
● 継続的なリソースが必要
○ Tammy Everts 氏 “パフォーマンスは終着点ではなく旅のようなもの”
○ 何もしないと機能追加に伴って悪化していってしまう
Slide 19
Slide 19 text
AbemaTV, Inc. All Rights Reserved
専任チームの立ち上げ
19
● 専任チームを立ち上げることでリソース問題を解決
● 兼務で2~3名
● プロダクト開発チームとは別にミッション・目標を設定して動いている
Web チーム
プロダクトの開発
Web Performance Engineering チーム
パフォーマンス改善
Slide 20
Slide 20 text
AbemaTV, Inc. All Rights Reserved
チームのミッション
20
Web チーム Web Performance Engineering チーム
1. パフォーマンスを意識した
開発を可能にする支援
2. 工数の必要なパフォーマンス改善の実装
AbemaTV, Inc. All Rights Reserved
チームの目標設定
22
● 中期 (1~2年)・半期・四半期の目標を OKR (Objectives and Key Results)
で管理
○ 個人のコミットポイントを合わせてチームの OKR としている
○ 毎週の Check-in MTG で状況を確認
Slide 23
Slide 23 text
AbemaTV, Inc. All Rights Reserved 23
Core Web Vitals の基準値 PageSpeed Insights を使った競合分析
改善の目標値
Slide 24
Slide 24 text
AbemaTV, Inc. All Rights Reserved
スポット参戦
24
● パフォーマンス改善にスポットで着手したいメンバーが出てきたとき
○ インターン・内定者バイト,メンバーの専門性向上,etc.
○ やりたいこととチームの OKR とをすり合わせて,最適なタスクを
アレンジ
○ 毎週の Check-in MTG に参加してもらって状況共有・アドバイス
Slide 25
Slide 25 text
AbemaTV, Inc. All Rights Reserved
最近の活動と成果
25
Slide 26
Slide 26 text
AbemaTV, Inc. All Rights Reserved
成果
26
● Synthetic Monitoring
○ ツール開発
○ SaaS 導入
● Real User Monitoring
○ SaaS 導入
● Largest Contentful Paint
○ Critical CSS
○ Differential Bundle Serving
○ Granular Chunks
● Cumulative Layout Shift
○ エピソードページ
○ ジャンルページ
○ etc.
● Web リニューアル時のパフォーマンス改善
改善実装
基盤整備
Slide 27
Slide 27 text
AbemaTV, Inc. All Rights Reserved
成果
27
● Synthetic Monitoring
○ ツール開発
○ SaaS 導入
● Real User Monitoring
○ SaaS 導入
● Largest Contentful Paint
○ Critical CSS
○ Differential Bundle Serving
○ Granular Chunks
● Cumulative Layout Shift
○ エピソードページ
○ ジャンルページ
○ etc.
● Web リニューアル時のパフォーマンス改善
改善実装
基盤整備
Slide 28
Slide 28 text
AbemaTV, Inc. All Rights Reserved
基盤整備
28
Synthetic Monitoring
Real User Monitoring
アラート
アラート対応フロー
Runbook
Slide 29
Slide 29 text
AbemaTV, Inc. All Rights Reserved
画像
29
NewRelic
(Real User Monitoring)
基盤整備
Catchpoint
(Synthetic Monitoring)
Slide 30
Slide 30 text
AbemaTV, Inc. All Rights Reserved 30
Critical CSS
Above-the-fold の描画に必要な CSS だけを事前に抽
出しておき,HTML に埋め込んで配信
Penthouse
Backend
Server
API Mock
Server
Critical
CSS
Slide 31
Slide 31 text
AbemaTV, Inc. All Rights Reserved 31
Critical CSS
● First Contentful Paint, Largest Contentful Paint ともに 300~500ms 改善
● Cumulative Layout Shift には影響なし
Slide 32
Slide 32 text
AbemaTV, Inc. All Rights Reserved
Web リニューアル時のパフォーマンス改善
32
Slide 33
Slide 33 text
AbemaTV, Inc. All Rights Reserved
Web リニューアル時のパフォーマンス改善
33
● βテスト時にユーザーから「以前より動きが重くなって使いづらい」というフィード
バック
● 社内 QA では設定した閾値を上回っていなかったが,実環境でどうなっているの
か調査へ
● LCP, FID, CLS どれも悪化していた
Slide 34
Slide 34 text
AbemaTV, Inc. All Rights Reserved
Web リニューアル時のパフォーマンス改善
34
Web Performance Engineering の協力のもと、リニューアル担当チームで改善
Slide 35
Slide 35 text
AbemaTV, Inc. All Rights Reserved
今後の展望
35
Slide 36
Slide 36 text
AbemaTV, Inc. All Rights Reserved
今後の展望
36
チームの最終的なゴール
チームが解散すること
Slide 37
Slide 37 text
AbemaTV, Inc. All Rights Reserved
なぜ解散がゴールなのか?
37
● パフォーマンスがリリースに不可欠なサービス品質として,当たり前に開発サイク
ルに組み込まれている状態を作りたい
● パフォーマンスだけに特別なリソースを確保する状態が続くのは,本来あまり嬉し
いことではない
○ 解決しなければならない非事業課題はパフォーマンスだけではない
Slide 38
Slide 38 text
AbemaTV, Inc. All Rights Reserved
解散するために
38
● パフォーマンスが常にモニタリングされて把握・改善・維持されている状態
○ 基盤作り
● Web サービス全体のパフォーマンスが目標値を満たしている状態
○ 既存ページのパフォーマンス改善
Slide 39
Slide 39 text
AbemaTV, Inc. All Rights Reserved
おわりに
39
● Web パフォーマンスに取り組むわけ
○ サービス品質を高めることがビジネスインパクトにつながる
● 専任チームで実現したこと
○ 固定リソースの確保で基盤作りと改善を進める
● 最近の活動と成果
● 今後の展望
○ チームの解散が最終目標