Click here to load reader
Upload
naoyuki-yamada
View
2.580
Download
4
Embed Size (px)
Citation preview
株式会社サイバーエージェント アドテクスタジオの技術と開発2014年3月8日 データサイエンティストアカデミー 株式会社サイバーエージェント 山田 直行
�1
目次• 自己紹介
• アドテクスタジオの技術と開発
• DSP/DMPプロダクトの技術と開発
�2
自己紹介• 山田直行(やまだ なおゆき)
• 株式会社サイバーエージェント アドテク本部データプラットフォームユニット チーフエンジニア
• DSPプロダクトの技術責任者
• 2011年6月 サイバーエージェント入社。CyberAgentAmerica Inc, 株式会社AMoAdでスマートフォンのアプリやアドネットワーク関連のプロダクトの開発・運用に携わり、2013年11月から現在の部署
• インフラ寄りのサーバーエンジニア(オペレーションエンジニア/DevOpsエンジニア)として、技術面でのサービス運用全般を担当
�3
アドテクスタジオの技術と開発
�4
アドテクスタジオの技術と開発プロダクトと体制• 「サイバーエージェント」「CAリワード」「AMoAd」「CA ADvance」などの
グループ会社横断でプロダクト開発・運用を行う部署。2013年10月に立ち上げ
• 全スタッフ込みで200名程度(エンジニアは6割ぐらい)
• 渋谷マークシティ ウェスト23Fが拠点
• アドネットワーク部門データプラットフォーム部門スマホメディア部門代理店テクノロジー部門その他、インフラチーム、デバッグチーム、人事・総務など
• 1チームあたり5名~15名で、インターネット広告関連のさまざまな分野においてテクノロジーと売上の両方でトップを目指す
�5
アドテクスタジオの技術と開発チームと職場• チームによって雰囲気は異なる。いわゆるサイバーエージェント風に派手なところ
もあるし、牧歌的なチームもある
• エンジニアのメンバーは多様性があり、新卒/中途はもちろん前職の業種やこれまでのキャリア、スキルセットなども人によってまちまち
• どのメンバーがどのチームで最高の働き方とパフォーマンスを発揮できるのかはマッチングと文化の作り方によるところが大きい。そこをうまく引き出すためにマネージャ職と人事がかなりのリソースを割いて取り組んでいる
• また、強化分野・プロダクトに一気に人材を寄せることがあり、職場内異動は比較的多め(自分の希望でも移れる)。ただし転勤は基本的に無し
• 「人事」「経営」 がサイバーエージェントのコアバリュー
�6
アドテクスタジオの技術と開発ビジネスとの関わり• インターネット広告事業は(一般的にいって)広告主とメディアをつなぐビジネス
で、つくったプロダクト(商品)を他の会社に販売/利用してもらうことで利益になる
• 日本最大規模のインターネット広告関連の営業メンバー・サポートメンバーがおり、スマホ向けゲーム/メディアも多数自社プロダクトを持つことから、あらゆる顧客に直接的な接点を持つ部署が社内にあるのが他社と比べての大きな強み
• こうした特徴から、B2B的な側面を強くもち、リーンスタートアップなウェブサービスと比べると手堅いかたちでの開発/運用をしている。リリース時に要求されるクオリティも比較的高めといえる
• ただし、本質的に利益を生む源泉はユーザーエクスペリエンスの改善(人々が商品・サービスにリーチするマーケティングを提供する手段になる)であり、最終的には広告に触れるユーザーを意識することが重要
�7
アドテクスタジオの技術と開発技術スタックと開発手法• 「Java」「Scala」「PHP」が主要な開発言語
• RubyやPythonも部分的にはかなり使われている
• サーバーインフラは、データセンターでの物理サーバーを使うプロダクトと、AWSを使うプロダクトの両方がある。ビジネス要件とスケジュールを考慮し使い分け
• GitHub(github.com)とPull Requestをベースにしたソースコード管理
• 自動テストとビルドにJenkins, サーバー設定にChef, デプロイにCapistranoやFabric, 監視にZabbixが多く使われている
• データ関連インフラとしては、現在はHadoopとAmazon Redshiftが実績あり。その他のツールやライブラリは広く試行中
�8
DSP/DMPプロダクトの技術と開発 DSP: Demand Side Platform (広告主サイドの広告配信システム) DMP: Data Management Platform (データ分析/管理システム)
�9
DSP/DMPプロダクトの技術と開発DSPについて SSP = Supply Side Platform(メディア側)
DSP = Demand Side Platform(広告主側) RTB = Real Time Bidding(リアルタイム広告入札)
�10
DSP/DMPプロダクトの技術と開発Real Time Biddingと広告配信• 他社との競売で1インプレッション(≒ページビュー)単位で広告を買い付けする手法
どの広告を、いくらで入札するかを、その都度瞬間的に決める
• なぜReal Time Biddingをするのか?→究極のOne to Oneマーケティングを実現するため ひとりひとり、かつそのときのコンテキストに応じたマーケティングをする
• 技術的なハードルは高い50ミリ秒以内でのレスポンス - 実際には20~30ミリ秒程度で返すことを目指す数万リクエスト/秒を受けながら処理する - 限界までチューニング
• 株式取引に近い世界(もともと金融業界がRTBのルーツ)
• Bidding(入札)を決めるために、データをどう扱うかが決定的に重要になる→ DMP(Data Management Platform)とのタッグ
�11
DSP/DMPプロダクトの技術と開発DMPについて• DMPにはさまざまなバリエーションがあるが、私たちが取り組むDMPは広告主が
自社のデータを自社の案件のために使う「プライベートDMP」を基本とする
• 広告主自らが保有するデータとDSPで広告配信したときの結果を組み合わせて、もっとも広告効果(クリック率・コンバージョン率・ROIなど)を最適化する広告配信を実現するためのデータセットを分析し、配信サーバー(DSP)へ提供するのが役割
• ユーザーごとに広告を出し分ける”オーディエンスターゲティング”のほか、広告主やメディアの分類に応じて配信する”プレイスメントターゲティング”、”コンテンツターゲティング”など、「ターゲティング配信」のバリエーションは幅広い
• 昨今流行の「ビッグデータ」まっただ中という感じ(プライバシーへの配慮問題や、業界動向も含め)。広告配信とセットになったDMPは他社にもライバルが多数おり、データと技術が直接的にビジネスの勝敗に影響する稀有な分野といえる
�12
DSP/DMPプロダクトの技術と開発技術スタックと開発手法• インフラはAWSを基本としながら、Direct Connectを使ってデータセンターとの
ハイブリッド(予定)
• Apache - Tomcat(Java)による広告配信 フレームワークを使わず、Servletでコードやパラメータを極限までチューニング データベースはMySQLとRedisを併用
• Fluentd - S3 - Redshift による集計・レポート作成
• Fluentd - ElasticSearch - Kibanaでデータの可視化と分析
• 管理画面はRuby on Railsで開発
• Scalaでバッチを書き、RedshiftをDWHとしてDMP機能を開発
�13
DSP/DMPプロダクトの技術と開発GameLogic & GameAudience• スマートフォンネイティブゲームに特化したプライベートDMP 「GameAudience」
を提供開始 ~定着率・ギルド参加などゲームユーザー行動を分析、セグメント化し、マーケティング効率を向上~ | 株式会社サイバーエージェント http://www.cyberagent.co.jp/news/press/detail/id=8492?season=2014&category=ad
• スマートフォンゲーム提供企業向けDSP「GameLogic」を提供開始 ~スマートフォンネイティブゲーム特化型DMPと連携し、広告効率の最大化を実現~ | 株式会社サイバーエージェント http://www.cyberagent.co.jp/news/press/detail/id=8507?season=2014&category=ad
• 広告商品の1つの方向性として、スマートフォンゲーム分野に特化したデータの分析や配信のロジックを組んでいる
�14
We’re Hiring!!• 専門職としてのデータサイエンティストと技術的な議論をすることができ、実際の
データの収集から運用まで行える”手を動かせるデータ系のエンジニア”
• 中長期的には、専門性を深めていけるキャリア志向の人大規模データをメンテナンスするインフラエンジニアデータベースのアーキテクト 広告運用をデータを通して改善できるコンサルタントなどなど
• 逆に徹底的にジェネラリスト(フルスタックエンジニア)な人も新プロダクト立ち上げ系のチームで重宝される
• そんな方々を養成・発掘したいというのがこのアカデミーの目的の1つです
�15