+ All Categories
Home > Documents > Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management...

Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management...

Date post: 07-Aug-2020
Category:
Upload: others
View: 3 times
Download: 0 times
Share this document with a friend
88
Ad Serving at Spotify Scale A journey of incremental full stack overhaul Kinshuk Mishra, Director of Engineering [email protected] @_kinshukmishra
Transcript
Page 1: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Ad Serving at Spotify ScaleA journey of incremental full stack overhaul

Kinshuk Mishra, Director of [email protected]@_kinshukmishra

Page 2: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

A lucky mistake

Page 3: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Expected consequences

Page 4: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Sarcastic empathy

Page 5: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Some valuable feedback

Page 6: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

The unintended consequence

Artist engagement for exposed users went up

Page 7: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

The unintended consequence

Promising insights about content promotion use-case

Page 8: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

The unintended consequence

Confirmation that the ad server is a powerful

messaging platform

Page 9: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Why should you care?

Page 10: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Introduction

Ad technology

stack

Architecture Evolution

Page 11: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Introduction

Ad technology

stack

Architecture Evolution

Page 12: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

What I do● Founded ads engineering team at Spotify in 2011

● Build all things ads engineering - team & software

● Major focus areas :

○ Ad delivery (Backend and Web)

○ Multi-platform native ads (Client Platform)

○ Ad performance (ML and Data)

Page 13: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

3 noteworthy things

Page 14: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Full stack refactor

Evolution at scale

Pragmatic choices

Page 15: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

100,000,000+ MAU

Page 16: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

50,000,000+Subscribers

Page 17: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

30,000,000+ Songs

Page 18: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

2,000,000,000+ Playlists

Page 19: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

$5,000,000,000+ Revenue paid to rightsholders

Page 20: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

60 Markets

Page 21: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Platform Ubiquity

Page 22: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Freemium business model

Page 23: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Ad

Page 24: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.
Page 25: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.
Page 26: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.
Page 27: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Introduction

Ad technology

stack

Architecture Evolution

Page 28: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Beauty of Ad Server

Relevancy Pacing Unique View Sequence Optimization

Page 29: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Complexity of Ad tech ecosystem

Page 30: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

In essence it is pretty simple

Client

User Profile database

Ad Server

Campaign Management Portal

Billing/Reporting

Ad campaign database

Data CollectionSystem

Page 31: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Spotify Ads infrastructure in 2011

EdgeServiceDesktop

LogDelivery HDFS

User Profile

Batch

Basic Ad Server

CampaignManagement

Billing/Reporting

Page 32: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Spotify Ads infrastructure in 2017

iOS

EdgeService

Android

Ads SDK

Desktop

Web

Chromecast/Playstation/

FireTV

Ad Aggregation

Service

LogDelivery GCS

User Profile

Targeting Service

DMP

Stream Batch

Ad Server

Decision Delivery Ad Exchanges

CampaignManagement

Optimization

ModelingSelf-Serve Portal

Creative Generation Payments

Billing/Reporting

Page 33: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Multi-platform clients

iOS

EdgeService

Android

Ads SDK

Desktop

Web

Chromecast/Playstation/

FireTV

Ad Aggregation

Service

LogDelivery GCS

User Profile

Targeting Service

DMP

Stream Batch

Ad Server

Decision Delivery Ad Exchanges

CampaignManagement

Optimization

ModelingSelf-Serve Portal

Creative Generation Payments

Billing/Reporting

Page 34: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Data collection

iOS

EdgeService

Android

Ads SDK

Desktop

Web

Chromecast/Playstation/

FireTV

Ad Aggregation

Service

LogDelivery GCS

User Profile

Targeting Service

DMP

Stream Batch

Ad Server

Decision Delivery Ad Exchanges

CampaignManagement

Optimization

ModelingSelf-Serve Portal

Creative Generation Payments

Billing/Reporting

Page 35: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Intelligence

iOS

EdgeService

Android

Ads SDK

Desktop

Web

Chromecast/Playstation/

FireTV

Ad Aggregation

Service

LogDelivery GCS

User Profile

Targeting Service

DMP

Stream Batch

Ad Server

Decision Delivery Ad Exchanges

CampaignManagement

Optimization

ModelingSelf-Serve Portal

Creative Generation Payments

Billing/Reporting

Page 36: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Ad Delivery

iOS

EdgeService

Android

Ads SDK

Desktop

Web

Chromecast/Playstation/

FireTV

Ad Aggregation

Service

LogDelivery GCS

User Profile

Targeting Service

DMP

Stream Batch

Ad Server

Decision Delivery Ad Exchanges

CampaignManagement

Optimization

ModelingSelf-Serve Portal

Creative Generation Payments

Billing/Reporting

Page 37: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Demand fulfillment

iOS

EdgeService

Android

Ads SDK

Desktop

Web

Chromecast/Playstation/

FireTV

Ad Aggregation

Service

LogDelivery GCS

User Profile

Targeting Service

DMP

Stream Batch

Ad Server

Decision Delivery Ad Exchanges

CampaignManagement

Optimization

ModelingSelf-Serve Portal

Creative Generation Payments

Billing/Reporting

Page 38: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Now you know too

Ad server is a powerful messaging platform

Page 39: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Introduction

Ad technology

stack

Architecture Evolution

Page 40: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Architecture overhaul is hard

● While keeping the business running

● While innovating on new products

● When you should have done it yesterday

Page 41: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Why did Spotify evolve Ads architecture?

Page 42: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Future needs●

● Growth in scale

● Emergence of new client platforms

● Cheap cloud computing

● New products to meet business objectives

● Technical debt

Page 43: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

The 3 stories

Page 44: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Fixing the legacy mess

Story 1

Page 45: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Original ad server designEdge Service

Routerhash(userid)

Ad server ring with partitions

Ad server instance

Memcache

Memcache

Memcache

Memcache

Campaign DB

User DBDesktop

Rendering Ad trigger decisioning

Ads Ranking

Ads Caching

Ad batching & fetch communication

Page 46: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Problems

Page 47: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Stateful service with faulty persistence

Page 48: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Cache as a data store

Page 49: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Service cluster as a hashed ring

Page 50: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Ad decisioning in Client

Page 51: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Batch Client-Server Calls

Page 52: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Fix strategy

Page 53: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Fix strategy tactic

Page 54: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Isolate refactor to one system at a time

Page 55: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

The ad server transition

EdgeService

LogDelivery HDFS

User Profile

Batch

Smart Ad Server

CampaignManagement

Billing/Reporting

Ad Server Proxy

(routing) Basic Ad Server

Gradual transition from basic to smart ad serving

Desktop

Rendering Ad trigger decisioning

Ads Ranking

Ads Caching

Ad batching & fetch communication

Page 56: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

After the ad server transition

Proxy Service

LogDelivery HDFS

User Profile

Batch

CampaignManagement

Billing/Reporting

Smart Ad Server

Desktop

Rendering Ad trigger decisioning

Ads Ranking

Ads Caching

Ad batching & fetch communication

Page 57: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Lean, mean and fast

Story 2

Page 58: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Division of responsibilities

Desktop iOS

Android

Ads SDK

Desktop

Web

Rendering Ad trigger decisioning

Ads Ranking

Ads Caching

Ad batching & fetch communication

Ad decisioning

Ad fetch orchestration

Client context

Ad Trigger & Render

Before After

Page 59: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Problems

Page 60: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Thick Clients

Page 61: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Logic duplication

Page 62: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Tightly coupled monolith

Page 63: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Fix strategy

Page 64: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Reduce State Management

Page 65: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Break monolith into services

Page 66: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Isolate platform independent logic into a lib

Page 67: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Fix tactic

Page 68: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Design your systems to be master of one thing

Page 69: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Remember division of responsibilities?

Desktop iOS

Android

Ads SDK

Desktop

Web

Rendering Ad trigger decisioning

Ads Ranking

Ads Caching

Ad batching & fetch communication

Ad decisioning

Ad fetch orchestration

Client context

Ad Trigger & Render

BAD GOOD

Page 70: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Multiplatform Client design

iOS

Proxy Service

Android

Ads SDK

Desktop

Web

Chromecast/Playstation/

FireTV

Ad Aggregation

Service

LogDelivery GCS

User Profile

Targeting Service

DMP

Stream Batch

Ad Server

Decision Delivery Ad Exchanges

CampaignManagement

ModelingSelf-Serve Service

Creative Generation Payments

Billing/Reporting

Page 71: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Knowledge is power, Unreliable data is your enemy

Story 3

Page 72: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Event Stream Historical

ETL1 ETL2 ETL3

UserEntity1(attribute1, attribute2) UserEntity1(attribute1, attribute3) UserEntity1(attribute1, attribute3’)

Page 73: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.
Page 74: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Problems

Page 75: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Duplicate, undiscoverable and fragmented datasets

Page 76: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Metric inaccuracy

Page 77: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Overloaded Data Infra

Page 78: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Fix strategy

Page 79: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Focus on reliable and timely log delivery

Page 80: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.
Page 81: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Data engineering with SLA

Page 82: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Dataset canonicalization

Page 83: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Some useful lessons learnt from architectural overhaul

Page 84: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Test with minimal impact radius

Page 85: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Mistakes are inevitable

Page 86: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Speed up build decisions

Page 87: Ad Serving at Spotify Scale · Ad Server Decision Delivery Ad Exchanges Campaign Management Optimization Modeling Self-Serve Portal Creative Generation Payments Billing/ Reporting.

Think for tomorrow, Solve for today


Recommended