SlideShare une entreprise Scribd logo
1  sur  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!

Contenu connexe

Tendances

InCycle's DevOps with Azure
InCycle's DevOps with AzureInCycle's DevOps with Azure
InCycle's DevOps with AzureInCycleSoftware
 
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 NativeKlaus Enzenhofer
 
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 DirectiveGene Kim
 
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-2016Puppet
 
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 AllMuly Gottlieb
 
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 DynatraceAndreas Grabner
 
What is DevOps
What is DevOpsWhat is DevOps
What is DevOpsspajus
 
DevOps Enterprise Summit 2016
DevOps Enterprise Summit 2016DevOps Enterprise Summit 2016
DevOps Enterprise Summit 2016Shaw Innes
 
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...New Relic
 
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 DevOpsSpyros Lambrinidis
 
Introduction to devops 2016
Introduction to devops 2016Introduction to devops 2016
Introduction to devops 2016gjdevos
 
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?Compuware
 
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 environmentsAndreas Grabner
 
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 CompaniesGoDataDriven
 
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 — Dailycolleenfry
 
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 DevOpsDynatrace
 
DevOps + Azure
DevOps + AzureDevOps + Azure
DevOps + AzureDataArt
 
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 LoopsAndreas Grabner
 
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! Dynatrace
 

Tendances (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!
 

Similaire à The Anatomy of Continuous Deployment at Scale

Freedom and Responsibility
Freedom and ResponsibilityFreedom and Responsibility
Freedom and ResponsibilityMike Ruangutai
 
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 ...Mike Villiger
 
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 TEST Huddle
 
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 2017Deepak Nadig
 
Tech foundations-slides
Tech foundations-slidesTech foundations-slides
Tech foundations-slidestranquynh93
 
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 EnvironmentKurt Andersen
 
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 DynatraceAmazon Web Services
 
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 productivityIvan Porta
 
SplunkLive! London 2016 Splunk for Devops
SplunkLive! London 2016 Splunk for DevopsSplunkLive! London 2016 Splunk for Devops
SplunkLive! London 2016 Splunk for DevopsSplunk
 
Innovate Better Through Machine data Analytics
Innovate Better Through Machine data AnalyticsInnovate Better Through Machine data Analytics
Innovate Better Through Machine data AnalyticsHal Rottenberg
 
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.0minseok kim
 
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 DevelopmentDynatrace
 
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 successAdam Stephensen
 
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...Perforce
 
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...Siva Rama Krishna Chunduru
 
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 v6Strongback Consulting
 
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 ROIDevOps for Enterprise Systems
 
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 2014Brad Power
 
DevOps for Enterprise Systems - Sanjay Chandru
DevOps for Enterprise Systems - Sanjay ChandruDevOps for Enterprise Systems - Sanjay Chandru
DevOps for Enterprise Systems - Sanjay ChandruNRB
 
Devops a la sauce Microsoft
Devops a la sauce MicrosoftDevops a la sauce Microsoft
Devops a la sauce MicrosoftMicrosoft
 

Similaire à 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
 

Dernier

SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 

Dernier (20)

SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 

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)