オレシカナイトとは

オレシカナイトは、「ABEMA」や「Ameba」をはじめとしたサイバーエージェントグループが運営するメディアにおいて、パブリッシャー独自の視点でアドテクノロジー開発を行うエンジニアの横断組織 「CyberAgent Publisher adTechnology Associations (PTA)」が主催する技術者向け勉強会です。

今回のテーマは「アドテクxプロダクト開発」です。

 

 

小売DXプロダクトを2ヶ月で立ち上げるデータエンジニアリング

概要

株式会社サイバーエージェント AI事業本部 バックエンドエンジニア 中村親里の発表です。

発表スライドは下記をご覧ください。

 

DX本部について

スライド画像

AI事業本部の小売DX部門に所属しており、「テクノロジーの力で、日本の小売を次世代へ」と掲げて日本の小売をDX化していこうと動いている部署です。

アプリ開発に力を入れており、サイバーエージェントと小売の企業様と一緒にパートナーとして提携しながら、お客様に対してより良い体験を提供しようと動いています。

 

スライド画像2

最近だと株式会社ヤマダデンキと提携し、実際ユーザー体験としてよりよりものをどうやって提供していくかを一緒に進めています。

 

2ヶ月でDMPを立ち上げるデータエンジニアリング

スライド画像3

DMP(Data Management Platform)とは簡単にいうと、データを価値のあるもの(使用できる状態)にすることで、データの収集から管理分析をしてそれをさらに使える状態にしてマーケティングに活かすことがDMPの大きな役割だと考えています。

当時の状況は、完成まで2ヶ月と短納期で、ソフトウェアエンジニア(SE)2人で開発することは難しく、各所に散らばったデータ結合のための設計・実装、サービスログの設計・収集のための実装、データ生成過程への介入がデータ基盤の整備ですべきこととしてありました。
そこで、データサイエンティスト(DS)の2人を巻き込んで、最終的には合計4人で一緒に取り組みました。

最終的な理想形を持っているのはデータ基盤を使うDSであるため、理想形とコストバランスを見ながら設計することに注力しました。

 

スライド画像4

実装のハードルを下げるために、誰が実装しても負債にならないことを目指しました。Terraformやdigdagを使ってコード管理(Infrastructure as code)をすることで真似しやすくしたり、S3やRedshift Spectrumを用いることで、問題があったときにはファイルを上書きしたり、バージョン管理によってすぐに戻せる状態にしたことによる安心感は大きかったです。

 

DMP基盤の実装

クエリ自動生成機能を生成しました。ビジネスメンバーが条件を入力してそれを自動的にクエリにできるような機能です。

 

スライド画像5

機能要件から、状態(ステータス)を持つworkerの作成に至りました。途中で落ちないようなステータス設計や、どうエラーハンドリングをするか考えることが面白かったです。

 

スライド画像6

実装は主にScalaを使っており、Akka Streamsで実装しました。かなり複雑なフローの実装になりました。

クエリの自動生成では、演算子の柔軟な設定や、今日から1ヶ月前のような変動日時の入力をどう受け付けるか、AND/OR/NOTも必要な条件として実装していて、どうやって画面から入力を受け付けて、DBに保存し、オブジェクト指向として表現してクエリにするのかと考えることはエンジニアとして楽しい部分でした。

 

実装を間に合わせるために

DSやPMを巻き込んで何をやらないかを何度も議論しました。
何百万ある全商品から検索する機能が必要で、Elasticsearchなどをインフラから導入する時間はなく、DSチームでよく出る商品を1000件ほど出してそのままフロントに渡して検索できるようにしてしまえばある程度うまくいくのではないかなど柔軟な対応を行い、もし検索に引っ掛からなくても対応できるようなバックアッププランも用意できたので間に合わせるために何をやらないかを決められた良いポイントではないかと考えています。

 

スライド画像7

それでも技術的チャレンジはエンジニアとしてやっていくべきことだと考えており、今回説明した複雑めなAkka Streamsやクエリやworkerの生成、バックエンドエンジニアだが画面はReactで実装したり、GraphQLを入れてみたり勉強になりました。

DX本部が目指す未来

スライド画像8

DX本部は「140兆円市場を、再開発する」を掲げています。小売市場は140兆円といわれてますが、DX化してもっと活性化していこうというのが我々のミッションです。

アプリを中心としてクライアントと一緒にやっていき、未来の購買行動における新しいデファクトスタンダードをどんどん作っていこうとみんな熱意を持ってやっています。

 

 

Privacy保護施策への対応

概要

株式会社サイバーエージェント メディア統括本部 バックエンドエンジニア 星博之の発表です。

発表スライドは下記をご覧ください。

Privacy保護

スライド画像2-1

海外ではGDPR・CCPA/CRPA、日本でも改正個人保護法が施行など各種Privacy保護法や、テックベンダもITP, iOS14.5 ATT, Privacy Sandboxなど法律・テクノロジーの両面でプライバシー保護の動きが高まってきており、我々も対応が必要になっている状況です。

テックベンダの施策としてWebkit(Safari)では、ThirdPartyCookieがFull Blockingされていたり、CNAME Cloakingの制限であったり、PCM(Private Click Measurement) のようにThirdPartyCookieがブロックされた上でのConversion計測が行える仕組みのような補助機能ができているが、PCMに関していうとFirst-Party adsが主な対象になっているのでThirdPartyのアドネットワークがパブリッシャー各社と連携するのは厳しいと考えています。

ATT(App Tracking Transparency) というIDFAを含めたトラッキング許可のダイアログや、iOS15(2021/09) iCloud + Private RelayではIPアドレスが匿名のIPアドレスに置き換わっているがbetaのようなものでまだほとんど影響は出ていないと思います。

Android12(2021/10)では、マニフェストファイルにPermissionの宣言が必要になっているなど、テックベンダーでの制限が厳しくなっています。

 

Privacy Sandbox

スライド画像2-2

Privacy Sandboxは、ChroniumのPrivacy保護プロジェクトなので主に影響を受けるのはChromeブラウザです。最終的には今のクロスサイトトラッキングの主流になっているサードパーティCookieを廃止していくものになっています。

2022/07にChromeのサードパーティCookie廃止の延期が発表されました。

こちらの記事の執筆時点で、2024年後半から2ヶ月かけて段階的に廃止というふうに1年ほど延期された形になります。
理由としてはテストの拡大とのことで、以下のタイムラインを見ていただくとわかりやすいかと思います。

https://privacysandbox.com/intl/ja_jp/open-web/

2023/Q3〜2024/Q2までを「一般提供」という期間に設定されており、
この期間はPrivacySandboxの各種機能の一般公開とサードパーティCookieが混在するということになると思われますので、この期間でブラッシュアップを行い、影響を最小限にできるかが重要になってくるかと思います。

 

スライド画像2-3

Privacy Sandboxの概要は、クロスサイトトラッキングで実現していた機能の置き換え、サードパーティCookieの停止、回避策への対策の3つの大きな軸があります。

それぞれに対する施策として、1つ目のクロスサイトトラッキングで実現していた機能の置き換えでは、Trust Token API、Attribution Reporting API(Conversion Measurement API), Aggregated Reporting API、FLoC、TURTLEDOVE、FLEDGEなどがあります。
2つ目のサードパーティCookieの停止では、SameSite属性、SameParty Cookie Attributeなどがあります。
3つ目の回避策への対策では、FingerPrinting、Cache inspection、Navigation tracking、Network Level trackingなどがあります。

 

UA文字列の削減 User-Agent Client Hints(UA-CH)

スライド画像2-4

Privacy問題(PassiveFingerPrinting Informationが多い)など、リクエストヘッダにUA文字列が乗ってきてしまったり、User-Agent文字列は虚偽の情報が多く含まれているため、UA-CHという文字列に置き換えていく必要があります。

 

スライド画像2-5

7フェーズに分けて段階的に削減されますが、ReverseOriginTrialにオプトインすれば全ての段階が終わるまで影響を受けないです。全ての段階の完了は2023/05の想定で、ブラウザのメジャーバージョンやプラットフォーム名、モバイル判定は全ての段階完了後もUser-Agent文字列だけで取得可能です。

フェーズ3のReverse Origin Trial(デプリケーショントライアル)はできれば登録しておいた方が良く、登録しておくとフェーズ7の全ての対応が完了するまで影響を受けないという形になっています。

スライド画像2-6

 

スライド画像2-7

UA-CHは、リクエストヘッダやJavaScript APIで取得することが可能です。
リクエストヘッダでの取得では、httpsが必須で、デフォルトで取得できる項目とオプトインすることで取得できる項目があります。オプトイン方法は、レスポンスヘッダのAccept-CHやmetaタグがあります。
広告の場合は基本的にCross-Originだと思います。Origin側のレスポンスヘッダのPermission-Policyを使ったdelegateが必要なため、配信メディア側の対応が必要になってくると思います。
JavaScript APIでの取得では、 高エントロピー情報はPrimiseを介するものになっており、ユーザーに許可を求めることが想定されます。PrivacyBudgetで制限される可能性があり、導入によってはメディアに影響が出る可能性があります。

 

スライド画像2-8

広告の場合は、自社メディアにはPermissions-Policyの設定でdelegateできそうだが、顧客のサイトの場合は全ての顧客に設定してもらうのは難易度が高く、結局JavaScriptで取得することになると思っています。

OpenRTBでは、UA文字列をParseしている場合はUAやOSバージョン,モデルなどに影響がありそうです。弊社では、これらの情報を使っている機械学習の予測や学習への影響が出てくると想定しています。

さいごに

今後、法律的にもテクノロジー的にもPrivacy保護の動きが高まることが想定され、Tracking制限がされます。
よりユーザーのPrivacyが尊重され、広告主の方達にも安心して使っていただけるような広告プロダクトを模索していければと考えています。

 

 

Empowermentされた開発組織

概要

株式会社AbemaTV ビジネスデベロップメント本部 開発局局長 福永亘の発表です。

発表スライドは下記をご覧ください。

Empowermentされた組織とは

スライド画像3-1

なぜアマゾン、アップル、グーグル、ネットフリックス、テスラなどの企業は、イノベーションを起こし続けているのかについて言及しているEMPOWEREDという本が2021年の6月に発売されています。

Empowermentとは、「人々に夢や希望を与え、勇気づけ、人が本来持っているすばらしい、生きる力を湧き出させること」ということがwikipediaに書かれており、開発組織に必要なことだと思います。

技術者の組織であるということは、テクノロジードリブンで良いプロダクトを作っていくことで、技術力そのものでプロダクトを加速していく状況を作っていく必要があると考えています。

 

スライド画像3-0

要件定義の段階でエンジニア一人ひとりがアイデアを出し合って、プロダクトに反映される状態がEmpowermentされた開発組織だと考えており、それがテクノロジープロダクトの可能性をどんどん広げて行きます。

なぜ今Empowermentなのか

スライド画像3-3

オープン化やクラウド化によって、アプリケーションに特化した専門性が必要になってきたと考えており、汎用性な専門性よりプロダクトに特化した専門性にシフトしています。
プロダクトそのものを成長させないと自分の活躍の場が作りづらくなっており、エンジニア一人ひとりがプロダクトの規模を伸ばしていくことが重要になっていると思います。

 

スライド画像3-4

Empowermentされた組織なのか見極める指標としては、Empowermentされた開発組織は、アウトカムに責任を持っている状態、顧客そのものに奉仕している、ゴールがプロダクトの成功などが特徴としてあります。機能開発組織は、アウトプットに責任を持っていて、事業に奉仕している状態、ゴールが納期と品質などの特徴があります。つまりEmpowermentされた組織は、アウトプットよりもアウトカムに責任を持っている組織であると考えています。

Ameba BD本部の取組

スライド画像3-5

BD本部ではチームがEmpowermentすることが重要なフェーズになっており、ビジョンとロードマップ、チームトポロジー、エバンジェリズム、コーチングなどの取り組みを行なっています。

 

スライド画像3-6

ビジョンとロードマップでは、中長期で目指す状態の定義とビジョンとロードマップの周知を毎週しています。

チームトポロジーでは、過去のチーム構成ではビジネスとエンジニアの間にリーダーがいて、リーダーだけが話し合っているような状態で、エンジニアからの意見がなかなか出てこなかったが、職能横断型のプロジェクトチームに変更し、よりテクノロジーからの意見がチームに反映される状態ができたと思っています。

エバンジェリズムとは、プロダクトのことを語るということで、制作活動中に得た学びや開発の苦悩やリスク、誰がどんな貢献をしているのか、面白いデータがあったなどを適切な人たちに伝えていくことで、より一体となってプロダクトを作っていく体制ができると考えています。

 

スライド画像3-8

コーチングでは、成長支援としてTTT、FactlogicalThursday、MarketFridayの大きく3つ取り組んでいます。
技術のインプットの時間としてテーマを決めて議論したり、プロダクトがどんな成果を出していて今後どんな成果が出るのかのデータ分析、ドメイン知識を全員で集めて勉強するなどの取り組みによってプロダクトに向き合える開発組織を目指しています。

まとめ

伝えたかったことは、組織をEmpowermentしようということで、Empowermentされた組織というのは、アウトプットよりアウトカムを重視しています。

そのためにチームで取り組んでいるのは、ビジョンとロードマップをしっかり共有していくこと、チームのトポロジーをビジネスと一体にするということと、やっていることを外部に伝えていくエバンジェリズム、向けたい方向に成長させていくためのコーチングという4つの方法でした。

 

次回予告

そんなオレシカナイトの17回目が8/31(水) 19:00 に開催されます!!(※時間が変更される可能性があります。コンパスよりご確認ください)

次回のテーマは「アドテク×若手」です。

どんな話が聞けるか楽しみですね!

以下のURLからぜひエントリーください!

connpass:https://cyberagent.connpass.com/event/256174

 

Profile:

株式会社サイバーエージェント

西原慎也

 

▼PTA

Twitter:https://twitter.com/PTA_CyberAgent