1
Experiences apply BAPO at
Spotify
Jason Yip
Staff Agile Coach
Spotify Advertising R&D
@jchyip
jyip@spotify.com
https://jchyip.medium.com
2
Problem
(mid-to-late 2021)
3
Spotify Advertising
was/is growing
https://www.businesswire.com/news/home/20211027005313/en/
4
Recent acquisition
More complex deliveries Some pre-existing
collaboration issues
Also…
Might be time to
revisit structure...
5
Framing Question
6
How might we approach org design
in a systemic, logical way?
7
Lesson 1:
Structure should follow
strategy.
8
“Unless structure follows
strategy, inefficiency results.”
Alfred D. Chandler Jr.
9
If we’re focused on
solving the right
problem, how might
we design our
structure to make
that easier?
Bad
strategy
Good
strategy
10
Lesson 2:
Architecture and process
should also follow strategy
(BAPO).
11
https://janbosch.com/blog/index.php/2017/11/25/structure-eats-strategy/
BAPO is Jan Bosch’s more fleshed out
expression of “structure follows strategy”
12
Lesson 3:
Every product (capability)
follows a life cycle.
13
https://hbr.org/1965/11/exploit-the-product-life-cycle
Not every product
idea makes it to
growth
Every product
eventually becomes a
commodity
14
Each life cycle stage has different
goals and should have different
KPIs.
15
Category Description KPI
Market
development
(innovation)
● Experimental functionality as part
of trying to identify new future
differentiation
● Number of
experiments
attempted
Growth / early
maturity
(differentiating)
● Unique capabilities that drive
customer interest and buying
behaviour
● Maximise
business value
Late maturity /
decline
(commodity)
● Needed for product to work
● No customer will select the product
because of this functionality
● Minimise total
cost of
ownership
16
Commodity Differentiating Innovation
Product capability categorisation exercise
17
Lesson 3:
Org design is an iterative
process.
18
No existing product
capability maps
… but we do have
architecture diagrams
19
Commodity Differentiating Innovation
Ad serving
console
Order
management
Mobile client
platform
Audiences
Budget allocator
Ad Studio
Native layer
features
Partner API
Format business
logic
Spotify for
Artists
integration
?
Simplified version of my first
strawman categorisation
Google Ad
Manager
integration
20
Commodity
/ hygiene
Differentiating
/ better = $
Innovation / Not
guaranteed to work
Account
management
Audience
management
Payments
Campaign
management
Commodity 3rd
party
measurement
Advanced
forecasting
Advanced
pricing
Decision
optimisation
New client
platforms
Reporting
New formats
After validation with Product Leads…
Customer-specific
measurement?
New targeting
21
Detecting misalignment was
immediately useful.
22
Lesson 4:
“Architecture” is about
dependencies.
23
Services should align to capabilities and
avoid coupling unrelated capabilities.
Product
capability
Architecture
service
Product
capability
Architecture
service
Architecture
service
Product
capability
Architecture
service
Product
capability
24
Dependencies should be 1-way.
Volatile things can depend on stable things.
Stable things should not depend on volatile things.
“Commodity”
service
“Differentiating”
service
“Innovation”
service
25
“Should this service be split?”
“Should we introduce an API?”
26
Lesson 5:
Key processes are different
for each product life cycle
stage.
27
Category KPI Key processes
Market development
(innovation)
● Number of
experiments
attempted
● Running lots of parallel
experiments
● Acquisitions
Growth / early
maturity
(differentiating)
● Maximise
business value
● Iterative-incremental
development
Late maturity / decline
(commodity)
● Minimise total
cost of
ownership
● Outsourcing
● Using 3rd party services
● Internal platform teams
28
Lesson 6:
Different people have
different preferences for
ways of working.
29
“Why are they still trying to
add new features to that
commodity service?”
30
https://wardleypedia.org/mediawiki/index.php/Pioneers_settlers_town_planners
Innovation Differentiation Commodity
31
Lesson 7:
Minimise staffing allocation
to commodity.
32
“Commodity”
teams
“Differentiating”
teams
“Innovation”
teams
Minimise Judgment call on how to balance remaining
allocation between “differentiating” and
“innovation”
33
Commodity / hygiene
Differentiating /
better = $
Innovation / Not
guaranteed to work
Account
management
Audience
management
Payments
Campaign
management
Commodity 3rd
party
measurement
Advanced
forecasting
Advanced pricing
Decision
optimisation
New client
platforms
Reporting
New formats
New targeting
Architecture
services
Product
capabilities
Ad serving
console
Order
management
Mobile client
platform
Audiences
Budget allocator
Ad Studio
Native layer
features
Partner API
Format business
logic
Spotify for Artists
integration
?
Google Ad
Manager
integration
Customer-specific
measurement?
Teams
~X
people
~Y
people
~Z
people
Platform Insights
Operators
Ad Serving
Payments
Activation
Dynamic Ad
Breaks
Ad Engagement Retention
?
34
Lesson 8:
Design teams to minimise
coordination.
35
Distinguish “differentiation” vs “innovation”
stream-aligned teams
36
Epilogue
37
Lesson 3:
Org design is an iterative
process.
38
● People leaving, being hired,
getting sick (pandemic is still on);
● Company strategy and/or
industry changes (how do you
categorise capabilities now?)
39
Lesson 9:
Continuous org design
OVER waterfall org design
01 Structure should follow strategy.
All the
lessons
02
03
04
05
06
07
08
09
Architecture and process should also follow
strategy (BAPO).
Org design is an iterative process.
“Architecture” is about dependencies.
Key processes are different for each
product life cycle stage.
Different people have different preferences
for ways of working.
Minimise staffing allocation to commodity.
Design teams to minimise coordination.
Continuous org design OVER waterfall org
design
41
Questions?
How might this be applied
at Bosch?

[CoPA 2022] Experiences applying BAPO at Spotify.pdf