SmartNews TechNight vol5 SmartNews Ads大図解

19,638 views

Published on

SmartNews Adsは独立した複数のサブシステムから構成されています。 エンジニアの幸福とビジネスのスピードを両立する、そんなシステムをどういう思想で作ったのかお話させていただきます!!

Published in: Technology

SmartNews TechNight vol5 SmartNews Ads大図解

  1. 1. 大図解 SmartNews Director of SmartNews Ads 渡部 拓也
  2. 2. 自己紹介 : 渡部 拓也 (わたべ たくや) 広告開発責任者 SmartNews プレスリリースより抜粋
  3. 3. Agenda ✦SmartNews Adsのご紹介 ✦広告開発の考え方 ✦SmartNews Adsのシステムのご紹介 ✦開発フィロソフィー
  4. 4. Agenda ✦SmartNews Adsのご紹介 ✦広告開発の考え方 ✦SmartNews Adsのシステムのご紹介 ✦開発フィロソフィー
  5. 5. SmartNews Ads Premium Video Ads Premium Display Ads Standard Ads
  6. 6. リリースから約1年
  7. 7. SmartNews Adsで出来るようになった チャンネル 地域 Look alike 性別キャリア OS時間 キーワード ターゲティング 実は裏側ではこれ以外にも 色々なことをやっています
  8. 8. Agenda ✦SmartNews Adsのご紹介 ✦広告開発の考え方 ✦SmartNews Adsのシステムのご紹介 ✦開発フィロソフィー
  9. 9. 広告開発で追いかける指標 インプレッション CTR 単価 (CVR) ✕ ✕
  10. 10. 広告開発で追いかける指標 インプレッション CTR 単価 (CVR) ✕ ✕ 100万 10% 50円
  11. 11. 広告開発で追いかける指標 インプレッション CTR 単価 (CVR) ✕ ✕ 100万 10% 50円 = 500万円
  12. 12. 広告開発で追いかける指標 インプレッション CTR 単価 (CVR) ✕ ✕ 100万 10% 50円 × 2 = 1,000万円
  13. 13. 広告 = 技術で事業に貢献できる領域
  14. 14. 広告 = 技術で事業に貢献できる領域 ✦技術的な問題を解くことで直接事業に貢献できる ✓ エンジニアとして非常にやりがいのある領域 ✦解くべき技術的な問題自体は難しい ✓ ハイスピード & スケーラブルなシステム ✓ 多目的最適化 ✓ 行動予測
  15. 15. 広告 = 技術で事業に貢献できる領域 ✦技術的な問題を解くことで直接事業に貢献できる ✓ エンジニアとして非常にやりがいのある領域 ✦解くべき技術的な問題自体は難しい ✓ ハイスピード & スケーラブルなシステム ✓ 多目的最適化 ✓ 行動予測 今日のお話
  16. 16. Agenda ✦SmartNews Adsのご紹介 ✦広告開発の考え方 ✦SmartNews Adsのシステムのご紹介 ✦開発フィロソフィー
  17. 17. 配信の仕組み UserLogs AdLogs ターゲティングデータ 特徴量抽出 ロギング SmartNews Ads
 Inventory アロケーション 配信 オークション フィルタリング
  18. 18. 配信の仕組み DMP UserLogs AdLogs ターゲティングデータ 特徴量抽出 App/SDK ロギング SmartNews Ads
 Inventory AdFrontend 配信サーバ アロケーション 配信 オークション フィルタリング 最適化
  19. 19. 配信の仕組み DMP UserLogs AdLogs ターゲティングデータ 特徴量抽出 App/SDK ロギング SmartNews Ads
 Inventory AdFrontend 配信サーバ アロケーション 配信 オークション フィルタリング 最適化 Targeting Dataの生成 CTR/CVR
 予測データの生成 入稿 & Reporting ビジネスロジックの集約 オークション 配信最適化配信基盤 レイアウト制御
 
 ロギング
  20. 20. システム構成 No システム 概要 1 運用型広告配信サーバ 配信基盤、フィルタリング 2 運用型広告最適化 オークション、広告アロケーション 3 純広告配信サーバ スムージング配信 4 ログ&集計システム ログの集計 & 配信レポート作成 5 Ad Frontend 広告の入稿 & 配信レポート 6 DMP ターゲティングデータの作成 & 各種データ予測 7 トラッキングシステム 広告の効果測定 8 画像変換サーバ リアルタイムの画像変換処理 9 アプリ情報サーバ アプリのレビュースコア等の情報提供 10 アプリ & SDK 広告のレイアウト & 成果送信
  21. 21. システム構成 - 詳細 - Standard Ad Server Filtering Auction Allocation Optimizer Logging Logging Ad Request Ad Response imp,vimp, click, metrics Response S D K Layout Premium Ad Server Filtering Smoothing Logging Loggingimp,vimp, click, metrics Response Ad Request Ad Response Amazon S3 Gender Estimation Location Slot Pref Channel Pref CVR Prediction CTR Prediction Keyword Search Lookalike DynamoDB Fetch Fetch Amazon EMR Kinesis DMP Amazon Redshift AB Test Log System SAT External Vendors Dynamic Creative Server image App-Info Server Amazon ElastiCache Fetch, Update, Pub/Sub Campaigns Report background fetch Ad Frontend Pub/Sub Metrics A P I se-search app info
  22. 22. システム構成 - 詳細 - Standard Ad Server Filtering Auction Allocation Optimizer Logging Logging Ad Request Ad Response imp,vimp, click, metrics Response S D K Layout Premium Ad Server Filtering Smoothing Logging Loggingimp,vimp, click, metrics Response Ad Request Ad Response Amazon S3 Gender Estimation Location Slot Pref Channel Pref CVR Prediction CTR Prediction Keyword Search Lookalike DynamoDB Fetch Fetch Amazon EMR Kinesis DMP Amazon Redshift AB Test Log System SAT External Vendors Dynamic Creative Server image App-Info Server Amazon ElastiCache Fetch, Update, Pub/Sub Campaigns Report background fetch Ad Frontend Pub/Sub Metrics A P I se-search app info 1) 運用型広告配信サーバ 2) 運用型広告最適化 3) 純広告配信サーバ 4)ログ&集計システム 5)Ad Frontend 6)DMP 7)トラッキングシステム 8) 純広告配信サーバ 9)アプリ情報サーバ 10)アプリ & SDK
  23. 23. どういう基準で分割?
  24. 24. Agenda ✦SmartNews Adsのご紹介 ✦広告開発の考え方 ✦SmartNews Adsのシステムのご紹介 ✦開発フィロソフィー
  25. 25. どういう基準で分割?
  26. 26. ✓ 自然言語で ✓ 非エンジニアに 説明できる最小の単位
  27. 27. 自然言語?
  28. 28. システム分割のポリシー ✦普通の言葉で非エンジニアに説明できる最小の単位 ✓ 大きすぎず小さすぎない範囲 ✓ 論理的な説明がしづらい -> 小さすぎる ✓ 複数機能を説明してしまう -> 大きすぎる
  29. 29. Not Micro Service ✦Micro Service? ✓ システム間通信 ✓ APIによる連携 ✦システム構成の複雑化による開発スピード低下の懸念 ✓ 分散システムによる開発オーバーヘッド ✓ キャパシティプランニングの難易度向上 ✦APIって ✓ 結局はシステムの内部をさらけだすことになる事が多い ✓ それに縛られると結局はDynamicなシステム変更が行えなく なることがある
  30. 30. なぜこうしたのか?
  31. 31. 最高速度で 最高到達点へ 最初に決めたこと 最高速度で 最高到達点へ http://www.flickr.com/photos/mattt_org/2831690932 "Electrocardiogram" by mattt.org is licensed under CC BY 2.0 / Added some texts to original
  32. 32. 最高速度で最高到達点へ ✦我々はStartUP ✦成長速度が何よりも大事 • 成長し続けることが至上命題 • 市場の成長を超える成長速度が必要 • 市場において一定期間までに有力なプレイヤーにならなければ市場 に置いて行かれる
  33. 33. そのための打ち手
  34. 34. そのための打ち手 システムの分割 ✕ 属人性の許容
  35. 35. アンチパターン? ✦全員がエース ✦一人でも欠けたらどうせ上手く行かない、という 割り切り
  36. 36. 属人性の許容 & 一人一殺 システムA システムB システムC システムD システムE ✦1人が1∼2個のシステムを担当 ✦各システムは完全に独立 & 独自進化
  37. 37. システムA システムB システムC システムD システムE
  38. 38. システムA システムB システムC システムD システムE ?
  39. 39. システムA システムB システムC システムD システムE
  40. 40. 各システムの独自進 化を支える考え方
  41. 41. 調和よりもイノベーション ✦権限の委譲と信頼 ✓ そこからしかイノベーションは生まれない ✓ 信頼に足るエンジニアを採用しています
  42. 42. 計画よりイテレーション ✦Done is better than Perfect ✓ テストは簡単に実施可能(ABテスト基盤) ✓ 高速イテレーションによるパフォーマンスチューニング ✓ テストのための協調不要(各システムが独自に進化)
  43. 43. http://www.flickr.com/photos/mattt_org/2831690932 "Electrocardiogram" by mattt.org is licensed under CC BY 2.0 / Added some texts to original 現時点での最高到達点
  44. 44. 以降のセッションもご期待ください 指標 システムの責務 セッション 配信サーバ インプレッション 拡大 スケーラブル & ハイスピード 2 配信最適化システム CTR & CVR向上 多目的最適化 3 DMP CTR & CVR向上 予測精度向上 4

×