SlideShare ist ein Scribd-Unternehmen logo
1 von 16
The Anatomy of Continuous Deployment
At Scale
John Viner (Development Manager)
CTO Summit 2016
Who is Envato?
We run a two-sided Marketplace for creative assets
that has paid out $450 million to our “Authors” in the
last 10 years
7 million registered users
10 million items for sale
The Business
25,000 requests a minute
160m Page Views a Month
1 sale a second at Peak
120,000 lines of code (Ruby on Rails)
25,000 tests
75 contributors, 10 years old
The Tech
Continuous Deployment vs Continuous Delivery
“Continuous Delivery is a software development
discipline where you build software in such a way
that the software can be released to production at
any time.”
“Continuous Deployment is a software development
practice in which every code change is deployed to
production, automatically.”
Foundational Engineering Capabilities
Visible Operational
Monitoring
Feature Toggle Tooling
Rollback Capability
Automated Build and Deploy Toolset
Comprehensive Automated Test Suite
Quality Code
Continuous Deployment
Foundational Organisational Behaviours
MTTR Focus
No QA / Approval Gates
Access to Production
Blameless Post Incident Reviews
Developers on First Line Support
Pairing and/or Peer Review
Continuous Deployment
The Lifecycle of a Change at Envato
Pull Request (PR) for all changes - Github
Developer Merges PR with at least 1 review
Automated Tests executed (no perf tests) - Buildkite
Automated Deploy executed on passed test - Samson + CodeDeploy
Rolling Deploy of Application with Zero Downtime
Schema Migrations with Zero Downtime
The Thumbs Up
Communication
The Numbers for June 2016
~ 40 developers
3000 total builds (2.5 builds p/dev/day)
500 Pull Requests Closed
400 deployments (20 p/day, 0.5 p/dev/day, peak 25 per day)
4.5 hour cycle time (from first commit to deploy - working hours)
8000 deployments in the last 2 Years
Pull Request Size - 37 lines changed , 3 files changed
Scaling the Team
Myths Dispelled
Continuous Deployment is only for:
• Small Teams
• Small Scale
• Low Commercial Impact of Outage
The Benefits for Envato
1. Reduced Risk.
• Small Changes are Easier to Identify and Rollback (or forward)
2. Increases Speed to Market
• Small Batch Efficiency - Faster Throughput
3. Increases Developer Happiness
• Code in Production makes for happy devs
• Supporting Production increases empathy with customer
How to Get Started
• Start on a Small System
• Encourage a Culture of Developer Ownership
• Invest in Test Automation
• Automate Your Build and Deployment Pipeline
• Invest in Feature Toggles
• Measure Your Cycle Time
• Optimise for Mean Time to Recovery (not Failure)
Thank you!

Weitere ähnliche Inhalte

Was ist angesagt?

Introduction to Puppet Enterprise 03-31-2016
Introduction to Puppet Enterprise 03-31-2016Introduction to Puppet Enterprise 03-31-2016
Introduction to Puppet Enterprise 03-31-2016
Puppet
 
Delivering New Features to Over 30,000 Customers — Daily
Delivering New Features to Over 30,000 Customers — DailyDelivering New Features to Over 30,000 Customers — Daily
Delivering New Features to Over 30,000 Customers — Daily
colleenfry
 
Sprinting for Success: Digital Transformation through Agile and DevOps
Sprinting for Success: Digital Transformation through Agile and DevOpsSprinting for Success: Digital Transformation through Agile and DevOps
Sprinting for Success: Digital Transformation through Agile and DevOps
Dynatrace
 

Was ist angesagt? (20)

InCycle's DevOps with Azure
InCycle's DevOps with AzureInCycle's DevOps with Azure
InCycle's DevOps with Azure
 
From 0 to DevOps: Lessons Learned Moving from On-Prem to Cloud Native
From 0 to DevOps: Lessons Learned Moving from On-Prem to Cloud NativeFrom 0 to DevOps: Lessons Learned Moving from On-Prem to Cloud Native
From 0 to DevOps: Lessons Learned Moving from On-Prem to Cloud Native
 
DOES SFO 2016 - Ray Krueger - Speed as a Prime Directive
DOES SFO 2016 - Ray Krueger - Speed as a Prime DirectiveDOES SFO 2016 - Ray Krueger - Speed as a Prime Directive
DOES SFO 2016 - Ray Krueger - Speed as a Prime Directive
 
Introduction to Puppet Enterprise 03-31-2016
Introduction to Puppet Enterprise 03-31-2016Introduction to Puppet Enterprise 03-31-2016
Introduction to Puppet Enterprise 03-31-2016
 
Legacy On Premise Apps Got You Down? No Problem - DevOps for All
Legacy On Premise Apps Got You Down? No Problem - DevOps for AllLegacy On Premise Apps Got You Down? No Problem - DevOps for All
Legacy On Premise Apps Got You Down? No Problem - DevOps for All
 
DevOps Transformation at Dynatrace and with Dynatrace
DevOps Transformation at Dynatrace and with DynatraceDevOps Transformation at Dynatrace and with Dynatrace
DevOps Transformation at Dynatrace and with Dynatrace
 
What is DevOps
What is DevOpsWhat is DevOps
What is DevOps
 
DevOps Enterprise Summit 2016
DevOps Enterprise Summit 2016DevOps Enterprise Summit 2016
DevOps Enterprise Summit 2016
 
The Wix Way: Mastering Scale & Complexity to Deliver a Bug-less Product, Futu...
The Wix Way: Mastering Scale & Complexity to Deliver a Bug-less Product, Futu...The Wix Way: Mastering Scale & Complexity to Deliver a Bug-less Product, Futu...
The Wix Way: Mastering Scale & Complexity to Deliver a Bug-less Product, Futu...
 
Super Charge your Product Development via the Use of DevOps
Super Charge your Product Development via the Use of DevOpsSuper Charge your Product Development via the Use of DevOps
Super Charge your Product Development via the Use of DevOps
 
Introduction to devops 2016
Introduction to devops 2016Introduction to devops 2016
Introduction to devops 2016
 
Don’t Settle for Old-school SCM: Fail Faster? How about Don’t Fail at All?
Don’t Settle for Old-school SCM: Fail Faster? How about Don’t Fail at All?Don’t Settle for Old-school SCM: Fail Faster? How about Don’t Fail at All?
Don’t Settle for Old-school SCM: Fail Faster? How about Don’t Fail at All?
 
AWS Summit - Trends in Advanced Monitoring for AWS environments
AWS Summit - Trends in Advanced Monitoring for AWS environmentsAWS Summit - Trends in Advanced Monitoring for AWS environments
AWS Summit - Trends in Advanced Monitoring for AWS environments
 
The 7 Habits of Effective Data Driven Companies
The 7 Habits of Effective Data Driven CompaniesThe 7 Habits of Effective Data Driven Companies
The 7 Habits of Effective Data Driven Companies
 
Delivering New Features to Over 30,000 Customers — Daily
Delivering New Features to Over 30,000 Customers — DailyDelivering New Features to Over 30,000 Customers — Daily
Delivering New Features to Over 30,000 Customers — Daily
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
 
Sprinting for Success: Digital Transformation through Agile and DevOps
Sprinting for Success: Digital Transformation through Agile and DevOpsSprinting for Success: Digital Transformation through Agile and DevOps
Sprinting for Success: Digital Transformation through Agile and DevOps
 
DevOps + Azure
DevOps + AzureDevOps + Azure
DevOps + Azure
 
DevOps Pipelines and Metrics Driven Feedback Loops
DevOps Pipelines and Metrics Driven Feedback LoopsDevOps Pipelines and Metrics Driven Feedback Loops
DevOps Pipelines and Metrics Driven Feedback Loops
 
Metrics-Driven Devops: Delivering High Quality Software Faster!
Metrics-Driven Devops: Delivering High Quality Software Faster! Metrics-Driven Devops: Delivering High Quality Software Faster!
Metrics-Driven Devops: Delivering High Quality Software Faster!
 

Ähnlich wie The Anatomy of Continuous Deployment at Scale

Tech foundations-slides
Tech foundations-slidesTech foundations-slides
Tech foundations-slides
tranquynh93
 

Ähnlich wie The Anatomy of Continuous Deployment at Scale (20)

Freedom and Responsibility
Freedom and ResponsibilityFreedom and Responsibility
Freedom and Responsibility
 
Performance Metrics Driven CI/CD - Introduction to Continuous Innovation and ...
Performance Metrics Driven CI/CD - Introduction to Continuous Innovation and ...Performance Metrics Driven CI/CD - Introduction to Continuous Innovation and ...
Performance Metrics Driven CI/CD - Introduction to Continuous Innovation and ...
 
Keys to continuous testing for faster delivery euro star webinar
Keys to continuous testing for faster delivery euro star webinar Keys to continuous testing for faster delivery euro star webinar
Keys to continuous testing for faster delivery euro star webinar
 
Designing API Platforms that Developers Love - New York Life Build Blue May 2017
Designing API Platforms that Developers Love - New York Life Build Blue May 2017Designing API Platforms that Developers Love - New York Life Build Blue May 2017
Designing API Platforms that Developers Love - New York Life Build Blue May 2017
 
Tech foundations-slides
Tech foundations-slidesTech foundations-slides
Tech foundations-slides
 
Facilitating DevOps Execution in an All Digital Environment
Facilitating DevOps Execution in an All Digital EnvironmentFacilitating DevOps Execution in an All Digital Environment
Facilitating DevOps Execution in an All Digital Environment
 
How Verizon Innovates Through AI-Driven DevOps with Dynatrace
How Verizon Innovates Through AI-Driven DevOps with DynatraceHow Verizon Innovates Through AI-Driven DevOps with Dynatrace
How Verizon Innovates Through AI-Driven DevOps with Dynatrace
 
How Azure DevOps can boost your organization's productivity
How Azure DevOps can boost your organization's productivityHow Azure DevOps can boost your organization's productivity
How Azure DevOps can boost your organization's productivity
 
SplunkLive! London 2016 Splunk for Devops
SplunkLive! London 2016 Splunk for DevopsSplunkLive! London 2016 Splunk for Devops
SplunkLive! London 2016 Splunk for Devops
 
Innovate Better Through Machine data Analytics
Innovate Better Through Machine data AnalyticsInnovate Better Through Machine data Analytics
Innovate Better Through Machine data Analytics
 
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0
 
Continuous Performance Testing and Monitoring in Agile Development
Continuous Performance Testing and Monitoring in Agile DevelopmentContinuous Performance Testing and Monitoring in Agile Development
Continuous Performance Testing and Monitoring in Agile Development
 
Agile & DevOps - It's all about project success
Agile & DevOps - It's all about project successAgile & DevOps - It's all about project success
Agile & DevOps - It's all about project success
 
Keys to Continuous Delivery Success - Mark Warren, Product Director, Perforc...
Keys to Continuous  Delivery Success - Mark Warren, Product Director, Perforc...Keys to Continuous  Delivery Success - Mark Warren, Product Director, Perforc...
Keys to Continuous Delivery Success - Mark Warren, Product Director, Perforc...
 
DevOps For Everyone: Bringing DevOps Success to Every App and Every Role in y...
DevOps For Everyone: Bringing DevOps Success to Every App and Every Role in y...DevOps For Everyone: Bringing DevOps Success to Every App and Every Role in y...
DevOps For Everyone: Bringing DevOps Success to Every App and Every Role in y...
 
IBM Collaborative Lifecycle Management Solution for DevOps v6
IBM Collaborative Lifecycle Management Solution for DevOps v6IBM Collaborative Lifecycle Management Solution for DevOps v6
IBM Collaborative Lifecycle Management Solution for DevOps v6
 
Quantifying DevOps Adoption Empirically for Demonstrable ROI
Quantifying DevOps Adoption Empirically for Demonstrable ROIQuantifying DevOps Adoption Empirically for Demonstrable ROI
Quantifying DevOps Adoption Empirically for Demonstrable ROI
 
Andy singleton continuous delivery-fcb - nov 2014
Andy singleton   continuous delivery-fcb - nov 2014Andy singleton   continuous delivery-fcb - nov 2014
Andy singleton continuous delivery-fcb - nov 2014
 
DevOps for Enterprise Systems - Sanjay Chandru
DevOps for Enterprise Systems - Sanjay ChandruDevOps for Enterprise Systems - Sanjay Chandru
DevOps for Enterprise Systems - Sanjay Chandru
 
Devops a la sauce Microsoft
Devops a la sauce MicrosoftDevops a la sauce Microsoft
Devops a la sauce Microsoft
 

Kürzlich hochgeladen

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Kürzlich hochgeladen (20)

Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 

The Anatomy of Continuous Deployment at Scale

  • 1. The Anatomy of Continuous Deployment At Scale John Viner (Development Manager) CTO Summit 2016
  • 3. We run a two-sided Marketplace for creative assets that has paid out $450 million to our “Authors” in the last 10 years 7 million registered users 10 million items for sale The Business
  • 4. 25,000 requests a minute 160m Page Views a Month 1 sale a second at Peak 120,000 lines of code (Ruby on Rails) 25,000 tests 75 contributors, 10 years old The Tech
  • 5. Continuous Deployment vs Continuous Delivery “Continuous Delivery is a software development discipline where you build software in such a way that the software can be released to production at any time.” “Continuous Deployment is a software development practice in which every code change is deployed to production, automatically.”
  • 6. Foundational Engineering Capabilities Visible Operational Monitoring Feature Toggle Tooling Rollback Capability Automated Build and Deploy Toolset Comprehensive Automated Test Suite Quality Code Continuous Deployment
  • 7. Foundational Organisational Behaviours MTTR Focus No QA / Approval Gates Access to Production Blameless Post Incident Reviews Developers on First Line Support Pairing and/or Peer Review Continuous Deployment
  • 8. The Lifecycle of a Change at Envato Pull Request (PR) for all changes - Github Developer Merges PR with at least 1 review Automated Tests executed (no perf tests) - Buildkite Automated Deploy executed on passed test - Samson + CodeDeploy Rolling Deploy of Application with Zero Downtime Schema Migrations with Zero Downtime
  • 11. The Numbers for June 2016 ~ 40 developers 3000 total builds (2.5 builds p/dev/day) 500 Pull Requests Closed 400 deployments (20 p/day, 0.5 p/dev/day, peak 25 per day) 4.5 hour cycle time (from first commit to deploy - working hours) 8000 deployments in the last 2 Years Pull Request Size - 37 lines changed , 3 files changed
  • 13. Myths Dispelled Continuous Deployment is only for: • Small Teams • Small Scale • Low Commercial Impact of Outage
  • 14. The Benefits for Envato 1. Reduced Risk. • Small Changes are Easier to Identify and Rollback (or forward) 2. Increases Speed to Market • Small Batch Efficiency - Faster Throughput 3. Increases Developer Happiness • Code in Production makes for happy devs • Supporting Production increases empathy with customer
  • 15. How to Get Started • Start on a Small System • Encourage a Culture of Developer Ownership • Invest in Test Automation • Automate Your Build and Deployment Pipeline • Invest in Feature Toggles • Measure Your Cycle Time • Optimise for Mean Time to Recovery (not Failure)