SlideShare a Scribd company logo
Evolving Architecture and
Organization Together
Lessons from Google and eBay
Randy Shoup
@randyshoup
linkedin.com/in/randyshoup
Scalable Software
Development
Organization
TechnologyCulture
Process
Scalable Software
Development
Small
Teams
MicroservicesDevOps
Continuous
Delivery
Scalable Software
Development
Small
Teams
MicroservicesDevOps
Continuous
Delivery
Conway’s Law
• Organization determines architecture
o Design of a system will be a reflection of the communication paths within the
organization
• We can engineer the system we want by engineering the
organization
Small
“Service” Teams
• Amazon “2 Pizza” Teams
o No team should be larger than can be fed by 2 large pizzas
o Typically 4-6 people
• Aligned to Business Domains
o Clear, well-defined area of responsibility
o Single service or set of related services
o Minimal, well-defined “interface”
@randyshoup linkedin.com/in/randyshoup
Full-Stack
Teams
• All disciplines required for the team’s function
o Design
o Development
o Quality and Performance
o Maintenance
o Operations
• Depend on other teams for supporting services, libraries,
and tools
@randyshoup linkedin.com/in/randyshoup
“DevOps is a reorg”
-- Adrian Cockcroft, Netflix
Scalable Software
Development
Small
Teams
MicroservicesDevOps
Continuous
Delivery
“Tell us how you did
things at Google and
eBay.”
“Sure, I’ll tell you, but
you have to promise
not to do them!
[… yet]”
Architecture Evolution
• eBay
• 5th generation today
• Monolithic Perl  Monolithic C++  Java  microservices
• Twitter
• 3rd generation today
• Monolithic Rails  JS / Rails / Scala  microservices
• Amazon
• Nth generation today
• Monolithic Perl / C++  Java / Scala  microservices
No one starts with microservices
…
Past a certain scale, everyone
ends up with microservices
Getting to rearchitect a system
is a sign of success, not failure.
If you don’t end up regretting
your early technology
decisions, you probably over-
engineered.
Microservices
• Single-purpose
• Simple, well-defined interface
• Modular and independent
A
C D E
B
Microservices
• Single-purpose
• Simple, well-defined interface
• Modular and independent
• Isolated persistence (!)
A
C D E
B
Microservices
Each unit is simple
Independent scaling and
performance
Independent testing and
deployment
Can optimally tune performance
(caching, replication, etc.)
Pros
Many cooperating units
Many small repos
Requires more sophisticated tooling
and dependency management
Network latencies
Cons
Why
Rearchitect?
• Velocity
o Teams step on each others’ toes, and can no longer develop independently
o Difficult for new engineers to be productive
• Scaling
o Vertical scaling of the monolith no longer works
o Parts of the system need to scale independently of others
Why
Rearchitect?
• Deployment
o Parts of the system need to deploy independently of others
o Monolithic release is too slow, too complicated, too risky
“The only thing a Big Bang
migration guarantees is a big
*Bang*.”
-- Martin Fowler
Carving up the
Monolith
• Look for (or create) a “seam” in the
monolith
o This is often the hardest part (!)
• Wall it off behind an interface
• Write automated tests around the
interface
• Replace implementation with an
independent component
•  Rinse and Repeat
Scalable Software
Development
Small
Teams
MicroservicesDevOps
Continuous
Delivery
You Build It, You Run It.
-- Werner Vogels
Ownership
• End-to-end Ownership
o Team owns service from design to deployment to retirement
• Responsible for
o Features
o Quality
o Performance
o Operations
o Maintenance
Cross-Functional
Collaboration
• Open communication
o Individuals encouraged to work directly with each other
o Prefer informal cooperation over formal channels
• Best decisions made through partnership
o Agreement on goals and priorities makes it easier to agree on tactics
o Given common context, well-meaning people will generally agree
o “Disagree and Commit”
None of us is as smart as all of
us.
-- Japanese proverb,
as quoted by Bob Taylor
Scalable Software
Development
Small
Teams
MicroservicesDevOps
Continuous
Delivery
Continuous
Integration
• Small incremental changes
o Faster feedback loop
o Easy to understand, code-review, test, roll back
• Larger changes are much riskier
o Risk of code change is nonlinear in the size of the change
o Ex. Initial memcache service submission
• Main code branch always shippable
o Increased rate of change while reducing risk of change
Continuous
Delivery
• More solid systems
o Release smaller units of work
o Faster to repair, easier to diagnose
o Small change to roll back or roll forward
• Enables experimentation
o Small experiments and rapid iteration are cheap
• Enabled by
o PaaS, containers, cloud
Scalable Software
Development
Small
Teams
MicroservicesDevOps
Continuous
Delivery
¡Muchas Gracias!
• @randyshoup
• linkedin.com/in/randyshoup

More Related Content

What's hot (20)

PPTX
One Terrible Day at Google, and How It Made Us Better
Randy Shoup
 
PPTX
A CTO's Guide to Scaling Organizations
Randy Shoup
 
PPTX
Minimal Viable Architecture - Silicon Slopes 2020
Randy Shoup
 
PPTX
DOES15 - Randy Shoup - Ten (Hard-Won) Lessons of the DevOps Transition
Gene Kim
 
PPTX
Minimum Viable Architecture -- Good Enough is Good Enough in a Startup
Randy Shoup
 
PPTX
Managing Data at Scale - Microservices and Events
Randy Shoup
 
PPTX
An Agile Approach to Machine Learning
Randy Shoup
 
PPTX
Being Elastic -- Evolving Programming for the Cloud
Randy Shoup
 
PPTX
The Importance of Culture: Building and Sustaining Effective Engineering Org...
Randy Shoup
 
PPTX
DevOpsDays Silicon Valley 2014 - The Game of Operations
Randy Shoup
 
PPTX
From the Monolith to Microservices - CraftConf 2015
Randy Shoup
 
PDF
Api fundamentals
AgileDenver
 
PPT
Best Practices for Large-Scale Websites -- Lessons from eBay
Randy Shoup
 
PDF
Art of the Possible - Serverless Conference NYC 2017
John Willis
 
PPTX
Software devops engineer in test (SDET)
Sriram Angajala
 
PPTX
2016 Mastering SAP Tech - 2 Speed IT and lessons from an Agile Waterfall eCom...
Eneko Jon Bilbao
 
PPTX
DOES SFO 2016 - Ray Krueger - Speed as a Prime Directive
Gene Kim
 
PDF
You build it - Cyber Chicago Keynote
John Willis
 
PDF
Devops Kaizen - DevopsDays Dallas 2017
John Willis
 
PDF
DevOps Ground Zero
Chris Jackson
 
One Terrible Day at Google, and How It Made Us Better
Randy Shoup
 
A CTO's Guide to Scaling Organizations
Randy Shoup
 
Minimal Viable Architecture - Silicon Slopes 2020
Randy Shoup
 
DOES15 - Randy Shoup - Ten (Hard-Won) Lessons of the DevOps Transition
Gene Kim
 
Minimum Viable Architecture -- Good Enough is Good Enough in a Startup
Randy Shoup
 
Managing Data at Scale - Microservices and Events
Randy Shoup
 
An Agile Approach to Machine Learning
Randy Shoup
 
Being Elastic -- Evolving Programming for the Cloud
Randy Shoup
 
The Importance of Culture: Building and Sustaining Effective Engineering Org...
Randy Shoup
 
DevOpsDays Silicon Valley 2014 - The Game of Operations
Randy Shoup
 
From the Monolith to Microservices - CraftConf 2015
Randy Shoup
 
Api fundamentals
AgileDenver
 
Best Practices for Large-Scale Websites -- Lessons from eBay
Randy Shoup
 
Art of the Possible - Serverless Conference NYC 2017
John Willis
 
Software devops engineer in test (SDET)
Sriram Angajala
 
2016 Mastering SAP Tech - 2 Speed IT and lessons from an Agile Waterfall eCom...
Eneko Jon Bilbao
 
DOES SFO 2016 - Ray Krueger - Speed as a Prime Directive
Gene Kim
 
You build it - Cyber Chicago Keynote
John Willis
 
Devops Kaizen - DevopsDays Dallas 2017
John Willis
 
DevOps Ground Zero
Chris Jackson
 

Similar to Evolving Architecture and Organization - Lessons from Google and eBay (20)

PPTX
Think Big - Build Small
Iraklis Alexopoulos
 
PDF
Accelerate Delivery: Business Case for Agile DevOps, CI/CD and Microservices
Rick Hightower
 
PPTX
Accelerate DevOps/Microservices and Kubernetes
Rick Hightower
 
PPTX
Defining Microservices
Matt McLarty
 
PDF
20141210 - Microservice Container
Jamie (Taka) Wang
 
PPTX
Architecting for speed: How agile innovators accelerate growth through micros...
Jesper Nordström
 
PPTX
Architecting for speed - how agile innovators accelerate growth through micro...
3gamma
 
PDF
Microservices Architecture
Srinivasan Nanduri
 
PDF
Building Microservices Software practics
muhammed84essa
 
PDF
Understanding Microservices
M A Hossain Tonu
 
PPTX
building microservices
Cisco DevNet
 
PDF
Microservices: Architecture to Support Agile
Eberhard Wolff
 
PPTX
DeveloperWeek 2020: Cloud-Native and Microservices Accelerate Process Improve...
Shahir Daya
 
PPTX
Accelerate Delivery: Business case for Agile DevOps, CI/CD and Microservices
Rick Hightower
 
PPTX
An introduction to Microservices
Cisco DevNet
 
PDF
TDC2020 - The microservice architecture: enabling rapid, reliable, frequent a...
Chris Richardson
 
PPTX
Microservices why?
Sascha Düpre
 
PDF
Architecting for Scale
Pooyan Jamshidi
 
PPTX
The Agile Roots of Microservices
Matt McLarty
 
PPTX
Continuous delivery by sergey seletsky
Sergey Seletsky
 
Think Big - Build Small
Iraklis Alexopoulos
 
Accelerate Delivery: Business Case for Agile DevOps, CI/CD and Microservices
Rick Hightower
 
Accelerate DevOps/Microservices and Kubernetes
Rick Hightower
 
Defining Microservices
Matt McLarty
 
20141210 - Microservice Container
Jamie (Taka) Wang
 
Architecting for speed: How agile innovators accelerate growth through micros...
Jesper Nordström
 
Architecting for speed - how agile innovators accelerate growth through micro...
3gamma
 
Microservices Architecture
Srinivasan Nanduri
 
Building Microservices Software practics
muhammed84essa
 
Understanding Microservices
M A Hossain Tonu
 
building microservices
Cisco DevNet
 
Microservices: Architecture to Support Agile
Eberhard Wolff
 
DeveloperWeek 2020: Cloud-Native and Microservices Accelerate Process Improve...
Shahir Daya
 
Accelerate Delivery: Business case for Agile DevOps, CI/CD and Microservices
Rick Hightower
 
An introduction to Microservices
Cisco DevNet
 
TDC2020 - The microservice architecture: enabling rapid, reliable, frequent a...
Chris Richardson
 
Microservices why?
Sascha Düpre
 
Architecting for Scale
Pooyan Jamshidi
 
The Agile Roots of Microservices
Matt McLarty
 
Continuous delivery by sergey seletsky
Sergey Seletsky
 
Ad

More from Randy Shoup (13)

PDF
Large Scale Architecture -- The Unreasonable Effectiveness of Simplicity
Randy Shoup
 
PPTX
Anatomy of Three Incidents -- Commonalities and Lessons
Randy Shoup
 
PPTX
Moving Fast at Scale
Randy Shoup
 
PPTX
Breaking Codes, Designing Jets, and Building Teams
Randy Shoup
 
PPTX
Scaling Your Architecture with Services and Events
Randy Shoup
 
PPTX
DevOps - It's About How We Work
Randy Shoup
 
PPTX
Ten Lessons of the DevOps Transition
Randy Shoup
 
PPTX
Managing Data in Microservices
Randy Shoup
 
PPTX
Effective Microservices In a Data-centric World
Randy Shoup
 
PPTX
Concurrency at Scale: Evolution to Micro-Services
Randy Shoup
 
PPTX
Why Enterprises Are Embracing the Cloud
Randy Shoup
 
PPTX
QCon New York 2014 - Scalable, Reliable Analytics Infrastructure at KIXEYE
Randy Shoup
 
PPTX
QCon Tokyo 2014 - Virtuous Cycles of Velocity: What I Learned About Going Fas...
Randy Shoup
 
Large Scale Architecture -- The Unreasonable Effectiveness of Simplicity
Randy Shoup
 
Anatomy of Three Incidents -- Commonalities and Lessons
Randy Shoup
 
Moving Fast at Scale
Randy Shoup
 
Breaking Codes, Designing Jets, and Building Teams
Randy Shoup
 
Scaling Your Architecture with Services and Events
Randy Shoup
 
DevOps - It's About How We Work
Randy Shoup
 
Ten Lessons of the DevOps Transition
Randy Shoup
 
Managing Data in Microservices
Randy Shoup
 
Effective Microservices In a Data-centric World
Randy Shoup
 
Concurrency at Scale: Evolution to Micro-Services
Randy Shoup
 
Why Enterprises Are Embracing the Cloud
Randy Shoup
 
QCon New York 2014 - Scalable, Reliable Analytics Infrastructure at KIXEYE
Randy Shoup
 
QCon Tokyo 2014 - Virtuous Cycles of Velocity: What I Learned About Going Fas...
Randy Shoup
 
Ad

Recently uploaded (20)

PDF
유니티에서 Burst Compiler+ThreadedJobs+SIMD 적용사례
Seongdae Kim
 
PDF
MiniTool Power Data Recovery 8.8 With Crack New Latest 2025
bashirkhan333g
 
PPTX
Finding Your License Details in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
PPTX
Empowering Asian Contributions: The Rise of Regional User Groups in Open Sour...
Shane Coughlan
 
PPTX
Coefficient of Variance in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
PDF
IDM Crack with Internet Download Manager 6.42 Build 43 with Patch Latest 2025
bashirkhan333g
 
PDF
Automate Cybersecurity Tasks with Python
VICTOR MAESTRE RAMIREZ
 
PDF
4K Video Downloader Plus Pro Crack for MacOS New Download 2025
bashirkhan333g
 
PDF
Technical-Careers-Roadmap-in-Software-Market.pdf
Hussein Ali
 
PPTX
Comprehensive Risk Assessment Module for Smarter Risk Management
EHA Soft Solutions
 
PPTX
Agentic Automation Journey Session 1/5: Context Grounding and Autopilot for E...
klpathrudu
 
PDF
Build It, Buy It, or Already Got It? Make Smarter Martech Decisions
bbedford2
 
PDF
Empower Your Tech Vision- Why Businesses Prefer to Hire Remote Developers fro...
logixshapers59
 
PPTX
ChiSquare Procedure in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
PPTX
OpenChain @ OSS NA - In From the Cold: Open Source as Part of Mainstream Soft...
Shane Coughlan
 
PDF
Top Agile Project Management Tools for Teams in 2025
Orangescrum
 
PPTX
Customise Your Correlation Table in IBM SPSS Statistics.pptx
Version 1 Analytics
 
PDF
SciPy 2025 - Packaging a Scientific Python Project
Henry Schreiner
 
PPTX
Home Care Tools: Benefits, features and more
Third Rock Techkno
 
PDF
Wondershare PDFelement Pro Crack for MacOS New Version Latest 2025
bashirkhan333g
 
유니티에서 Burst Compiler+ThreadedJobs+SIMD 적용사례
Seongdae Kim
 
MiniTool Power Data Recovery 8.8 With Crack New Latest 2025
bashirkhan333g
 
Finding Your License Details in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
Empowering Asian Contributions: The Rise of Regional User Groups in Open Sour...
Shane Coughlan
 
Coefficient of Variance in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
IDM Crack with Internet Download Manager 6.42 Build 43 with Patch Latest 2025
bashirkhan333g
 
Automate Cybersecurity Tasks with Python
VICTOR MAESTRE RAMIREZ
 
4K Video Downloader Plus Pro Crack for MacOS New Download 2025
bashirkhan333g
 
Technical-Careers-Roadmap-in-Software-Market.pdf
Hussein Ali
 
Comprehensive Risk Assessment Module for Smarter Risk Management
EHA Soft Solutions
 
Agentic Automation Journey Session 1/5: Context Grounding and Autopilot for E...
klpathrudu
 
Build It, Buy It, or Already Got It? Make Smarter Martech Decisions
bbedford2
 
Empower Your Tech Vision- Why Businesses Prefer to Hire Remote Developers fro...
logixshapers59
 
ChiSquare Procedure in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
OpenChain @ OSS NA - In From the Cold: Open Source as Part of Mainstream Soft...
Shane Coughlan
 
Top Agile Project Management Tools for Teams in 2025
Orangescrum
 
Customise Your Correlation Table in IBM SPSS Statistics.pptx
Version 1 Analytics
 
SciPy 2025 - Packaging a Scientific Python Project
Henry Schreiner
 
Home Care Tools: Benefits, features and more
Third Rock Techkno
 
Wondershare PDFelement Pro Crack for MacOS New Version Latest 2025
bashirkhan333g
 

Evolving Architecture and Organization - Lessons from Google and eBay