SlideShare une entreprise Scribd logo
1  sur  23
Télécharger pour lire hors ligne
Smoothing the continuous delivery path   a tale of two architectures - expert talk
simple software solutions to big business problems.
Making Software. Better.
@EqualExperts
Smoothing the Continuous Delivery path
A tale of two architectures
© Equal Experts UK Ltd 2020
@EqualExperts
Continuous Delivery in donuts
3
Fast Feedback
Risk Reduction
Satisfied
customer
© Equal Experts UK Ltd 2020
@EqualExperts
There is no (CD) silver bullet
4
● >30 deploys / day
● >2 billion page views / month
● 1 (javascript) monorepo
https://bit.ly/2BKuq5S
● >1000 deploys / day
● ~2 billion requests per day
● >600 java microservices
https://bit.ly/2Uq5My8
© Equal Experts UK Ltd 2020
@EqualExperts
There is no (CD) silver bullet
5
● Weekly deployments
● ~100M visits / day
● 2 monoliths (C#, C++)
● Multiple deploys / day
● Recent peak of ~1000 RPS
● ~1000 microservices (Scala)
C++ C#
Private Sector Org. UK Government Org.
© Equal Experts UK Ltd 2020
@EqualExperts
Practices for Smoothing the Continuous Delivery path
6
Practices for
Microservices
Practices
For Monoliths
Universal
Practices
*M 𝝁
© Equal Experts UK Ltd 2020
@EqualExperts 7
Practice #0 - Start with the best people you can hire
*
© Equal Experts UK Ltd 2020
@EqualExperts
● What’s the smallest thing we
can release to Production?
● How do we evolve Production
behaviour
● Is this code change safe to go to
Production today?
8
Practice #1 - Think about Production, all the time
*
© Equal Experts UK Ltd 2020
@EqualExperts 9
▪ Work board right to left
▪ What was deployed yesterday?
▪ What will be deployed today?
Practice #1 - Think about Production, all the time
- Example: Production focused Standups
*
© Equal Experts UK Ltd 2020
@EqualExperts
Practice #2 - Make ‘ilities’ continuous activities, not phases
10
Product
Owner
Define
Dev
Build
QA
Explore
Web Ops
Deploy
Quality, Security, Operability, ...
*
© Equal Experts UK Ltd 2020
@EqualExperts 11
Practice #3 - Learn from Production incidents
M
http://www.airliners.net/photo/uk-air-force/british-aerospace-hawk-t1-astra/949077
© Equal Experts UK Ltd 2020
@EqualExperts
Practice #3 - Learn from Production incidents - 5 why’s
- Run Blameless Post Mortems
12
M
“Adaptability and learning.
- We learn through honest,
blameless reflection on lessons
and surprises.
- We believe that traditional root
cause analysis makes learning
from mistakes difficult.
http://sec.edgar-online.com/etsy-inc/s-1a-securities-registration-statement/2015/04/14/section20.aspx
© Equal Experts UK Ltd 2020
@EqualExperts
Practice #3 - Learn from Production incidents
- Run Blameless Post Mortems
13
M
https://extfiles.etsy.com/DebriefingFacilitationGuide.pdf Structure and Preparation
● Familiarize Yourself With the Timeline
in Advance
● Unearth More Objective and Subjective
Data
● Talking to the People Who Would
Usually Be Blamed Is Really Important
● Come up With Some Initial Questions
© Equal Experts UK Ltd 2020
@EqualExperts
Practice #4 - Automate release notes
14
M
https://commons.wikimedia.org/wiki/File:Spot_the_difference.png
© Equal Experts UK Ltd 2020
@EqualExperts
Practice #4 - Automate release notes
15
M
© Equal Experts UK Ltd 2020
@EqualExperts
Practice #4 - Automate release notes
16
Source control
system
Login Reporting
Payments
API’s
Agile Project
Management Tool
Features
Stories
Tasks
Defects
Story 123
State, areas, authors
...
Defect 789
State, areas, authors
...
Untracked work
Areas, authors
...
Release note
generator
Production
Version
Candidate
Version
M
© Equal Experts UK Ltd 2020
@EqualExperts
Practice #5 - Teams own their own microservices
17
𝝁
Legacy and Third Party Systems
~1000 microservices
Xm BusinessesXXm Individuals
x130 Transaction types
Back-ends
Front-ends / APIs
© Equal Experts UK Ltd 2020
@EqualExperts
Practice #5 - Teams own their own microservices
18
𝝁
Legacy and Third Party Systems
Xm BusinessesXXm Individuals
x130 Transaction types
Cat
Services
Dog
Services
Tiger
Services
Team Tools
Service
Operation
Platform
Security
Auditing
Build &
Deploy
Infra-
structure
Telemetry
60 service teams
7 platform teams
© Equal Experts UK Ltd 2020
@EqualExperts
Practice #5 - Teams own their own microservices
19
“You build it, you run it” -
Werner Vogels
Amazon CTO
https://goo.gl/DyfeOf
𝝁
https://www.flickr.com/photos/jobook/4751509167/
© Equal Experts UK Ltd 2020
@EqualExperts
Practice #6 - Play nicely with others (services, APIs, libraries)
20
𝝁
http://www.asterix-obelix.nl/images/albums/characters/c-fighting.gif
© Equal Experts UK Ltd 2020
@EqualExperts 21
Production
Staging
QA
Dev
Sharing
through
caring
𝝁Practice #6 - Play nicely with others (services, APIs, libraries)
© Equal Experts UK Ltd 2020
@EqualExperts
Practices for Smoothing the Continuous Delivery path
22
0. Start with the best people
you can hire
1. Think about Production,
all the time
2. Make ‘ilities continuous
activities, not phases
3. Learn from Production
incidents
4. Automate release notes
5. Teams own their own
microservices
6. Play nicely with others
(services, APIs, etc)
*
M 𝝁
Smoothing the continuous delivery path   a tale of two architectures - expert talk

Contenu connexe

Similaire à Smoothing the continuous delivery path a tale of two architectures - expert talk

An Innovative Big-Data Web Scraping Tech Company
An Innovative Big-Data Web Scraping Tech CompanyAn Innovative Big-Data Web Scraping Tech Company
An Innovative Big-Data Web Scraping Tech CompanyRoger Giuffre
 
Business Utility Application
Business Utility ApplicationBusiness Utility Application
Business Utility ApplicationIRJET Journal
 
Jazz for Service Management
Jazz for Service ManagementJazz for Service Management
Jazz for Service ManagementIBM Danmark
 
How Cisco is Leveraging MuleSoft to Drive Continuous Innovation​ at Enterpris...
How Cisco is Leveraging MuleSoft to Drive Continuous Innovation​ at Enterpris...How Cisco is Leveraging MuleSoft to Drive Continuous Innovation​ at Enterpris...
How Cisco is Leveraging MuleSoft to Drive Continuous Innovation​ at Enterpris...MuleSoft
 
IRJET- Tour and Travels
IRJET- Tour and TravelsIRJET- Tour and Travels
IRJET- Tour and TravelsIRJET Journal
 
Atmosphere Conference 2015: DevOps and the Need for Speed
Atmosphere Conference 2015: DevOps and the Need for SpeedAtmosphere Conference 2015: DevOps and the Need for Speed
Atmosphere Conference 2015: DevOps and the Need for SpeedPROIDEA
 
Lessons from the Trenches: Building an API-Centric Architecture
Lessons from the Trenches: Building an API-Centric ArchitectureLessons from the Trenches: Building an API-Centric Architecture
Lessons from the Trenches: Building an API-Centric ArchitectureWSO2
 
Emvigo Data Visualization - E Commerce Deck
Emvigo Data Visualization - E Commerce DeckEmvigo Data Visualization - E Commerce Deck
Emvigo Data Visualization - E Commerce DeckEmvigo Technologies
 
from shadow IT to empowered IT-asanka 2014 08-gartner catalyst
from shadow IT to empowered IT-asanka 2014 08-gartner catalystfrom shadow IT to empowered IT-asanka 2014 08-gartner catalyst
from shadow IT to empowered IT-asanka 2014 08-gartner catalystWSO2
 
From Shadow IT to Empowered IT: Unshackling Your Developers’ Creativity!
From Shadow IT to Empowered IT: Unshackling Your Developers’ Creativity!From Shadow IT to Empowered IT: Unshackling Your Developers’ Creativity!
From Shadow IT to Empowered IT: Unshackling Your Developers’ Creativity!WSO2
 
The Impact of IoT on Product Design
The Impact of IoT on Product DesignThe Impact of IoT on Product Design
The Impact of IoT on Product DesignAras
 
7 Steps Big Data Journey for Enterprises
7 Steps Big Data Journey for Enterprises7 Steps Big Data Journey for Enterprises
7 Steps Big Data Journey for EnterprisesRaju Shreewastava
 
MongoDB.Live 2020 - Advanced Schema Design Patterns
MongoDB.Live 2020  - Advanced Schema Design PatternsMongoDB.Live 2020  - Advanced Schema Design Patterns
MongoDB.Live 2020 - Advanced Schema Design PatternsDaniel Coupal
 
Monolith vs Microservices with Golang at practice - Ivan Kutuzov
Monolith vs Microservices with Golang at practice  -  Ivan Kutuzov Monolith vs Microservices with Golang at practice  -  Ivan Kutuzov
Monolith vs Microservices with Golang at practice - Ivan Kutuzov Kuberton
 
Digital Transformation with 2 Speed IT & Agile Scrum
Digital Transformation with 2 Speed IT & Agile ScrumDigital Transformation with 2 Speed IT & Agile Scrum
Digital Transformation with 2 Speed IT & Agile Scrumtoamitkumar
 
IRJET- Multi Design - Pattern React Application with Django Backend
IRJET- Multi Design - Pattern React Application with Django BackendIRJET- Multi Design - Pattern React Application with Django Backend
IRJET- Multi Design - Pattern React Application with Django BackendIRJET Journal
 

Similaire à Smoothing the continuous delivery path a tale of two architectures - expert talk (20)

An Innovative Big-Data Web Scraping Tech Company
An Innovative Big-Data Web Scraping Tech CompanyAn Innovative Big-Data Web Scraping Tech Company
An Innovative Big-Data Web Scraping Tech Company
 
Business Utility Application
Business Utility ApplicationBusiness Utility Application
Business Utility Application
 
Jazz for Service Management
Jazz for Service ManagementJazz for Service Management
Jazz for Service Management
 
How Cisco is Leveraging MuleSoft to Drive Continuous Innovation​ at Enterpris...
How Cisco is Leveraging MuleSoft to Drive Continuous Innovation​ at Enterpris...How Cisco is Leveraging MuleSoft to Drive Continuous Innovation​ at Enterpris...
How Cisco is Leveraging MuleSoft to Drive Continuous Innovation​ at Enterpris...
 
Shafi_QA Architect
Shafi_QA ArchitectShafi_QA Architect
Shafi_QA Architect
 
IRJET- Tour and Travels
IRJET- Tour and TravelsIRJET- Tour and Travels
IRJET- Tour and Travels
 
Atmosphere Conference 2015: DevOps and the Need for Speed
Atmosphere Conference 2015: DevOps and the Need for SpeedAtmosphere Conference 2015: DevOps and the Need for Speed
Atmosphere Conference 2015: DevOps and the Need for Speed
 
Lessons from the Trenches: Building an API-Centric Architecture
Lessons from the Trenches: Building an API-Centric ArchitectureLessons from the Trenches: Building an API-Centric Architecture
Lessons from the Trenches: Building an API-Centric Architecture
 
Aniket CV
Aniket CVAniket CV
Aniket CV
 
Emvigo Data Visualization - E Commerce Deck
Emvigo Data Visualization - E Commerce DeckEmvigo Data Visualization - E Commerce Deck
Emvigo Data Visualization - E Commerce Deck
 
from shadow IT to empowered IT-asanka 2014 08-gartner catalyst
from shadow IT to empowered IT-asanka 2014 08-gartner catalystfrom shadow IT to empowered IT-asanka 2014 08-gartner catalyst
from shadow IT to empowered IT-asanka 2014 08-gartner catalyst
 
From Shadow IT to Empowered IT: Unshackling Your Developers’ Creativity!
From Shadow IT to Empowered IT: Unshackling Your Developers’ Creativity!From Shadow IT to Empowered IT: Unshackling Your Developers’ Creativity!
From Shadow IT to Empowered IT: Unshackling Your Developers’ Creativity!
 
Somnath Resume
Somnath ResumeSomnath Resume
Somnath Resume
 
The Impact of IoT on Product Design
The Impact of IoT on Product DesignThe Impact of IoT on Product Design
The Impact of IoT on Product Design
 
7 Steps Big Data Journey for Enterprises
7 Steps Big Data Journey for Enterprises7 Steps Big Data Journey for Enterprises
7 Steps Big Data Journey for Enterprises
 
MoneySafe-FinalReport
MoneySafe-FinalReportMoneySafe-FinalReport
MoneySafe-FinalReport
 
MongoDB.Live 2020 - Advanced Schema Design Patterns
MongoDB.Live 2020  - Advanced Schema Design PatternsMongoDB.Live 2020  - Advanced Schema Design Patterns
MongoDB.Live 2020 - Advanced Schema Design Patterns
 
Monolith vs Microservices with Golang at practice - Ivan Kutuzov
Monolith vs Microservices with Golang at practice  -  Ivan Kutuzov Monolith vs Microservices with Golang at practice  -  Ivan Kutuzov
Monolith vs Microservices with Golang at practice - Ivan Kutuzov
 
Digital Transformation with 2 Speed IT & Agile Scrum
Digital Transformation with 2 Speed IT & Agile ScrumDigital Transformation with 2 Speed IT & Agile Scrum
Digital Transformation with 2 Speed IT & Agile Scrum
 
IRJET- Multi Design - Pattern React Application with Django Backend
IRJET- Multi Design - Pattern React Application with Django BackendIRJET- Multi Design - Pattern React Application with Django Backend
IRJET- Multi Design - Pattern React Application with Django Backend
 

Plus de Equal Experts

TRUST Framework Talk 2023-03-10.pptx
TRUST Framework Talk 2023-03-10.pptxTRUST Framework Talk 2023-03-10.pptx
TRUST Framework Talk 2023-03-10.pptxEqual Experts
 
Will it matter if your child cannot code?
Will it matter if your child cannot code?Will it matter if your child cannot code?
Will it matter if your child cannot code?Equal Experts
 
Platform Security IRL: Busting Buzzwords & Building Better
Platform Security IRL:  Busting Buzzwords & Building BetterPlatform Security IRL:  Busting Buzzwords & Building Better
Platform Security IRL: Busting Buzzwords & Building BetterEqual Experts
 
Software development practices & Infrastructure as Code - how well do they wo...
Software development practices & Infrastructure as Code - how well do they wo...Software development practices & Infrastructure as Code - how well do they wo...
Software development practices & Infrastructure as Code - how well do they wo...Equal Experts
 
A Whole Team Approach to Quality in Continuous Delivery - Lisa Crispin
A Whole Team Approach to Quality in Continuous Delivery - Lisa CrispinA Whole Team Approach to Quality in Continuous Delivery - Lisa Crispin
A Whole Team Approach to Quality in Continuous Delivery - Lisa CrispinEqual Experts
 
Secure Continuous Delivery
Secure Continuous DeliverySecure Continuous Delivery
Secure Continuous DeliveryEqual Experts
 
Embracing collaborative chaos (April 2020) by Lyndsay Prewer
Embracing collaborative chaos (April 2020) by Lyndsay PrewerEmbracing collaborative chaos (April 2020) by Lyndsay Prewer
Embracing collaborative chaos (April 2020) by Lyndsay PrewerEqual Experts
 
Design Systems: Designing out Waste, Designing in Consistency
Design Systems: Designing out Waste, Designing in ConsistencyDesign Systems: Designing out Waste, Designing in Consistency
Design Systems: Designing out Waste, Designing in ConsistencyEqual Experts
 
Growing Together - software development in the Developing world
Growing Together - software development in the Developing worldGrowing Together - software development in the Developing world
Growing Together - software development in the Developing worldEqual Experts
 
Infrastructure - a journey from datacentres to cloud
Infrastructure - a journey from datacentres to cloudInfrastructure - a journey from datacentres to cloud
Infrastructure - a journey from datacentres to cloudEqual Experts
 
Data Science In Action: Prenatal Screening for Down Syndrome
Data Science In Action: Prenatal Screening for Down SyndromeData Science In Action: Prenatal Screening for Down Syndrome
Data Science In Action: Prenatal Screening for Down SyndromeEqual Experts
 
The essentials of the IT industry or What I wish I was taught about at Univer...
The essentials of the IT industry or What I wish I was taught about at Univer...The essentials of the IT industry or What I wish I was taught about at Univer...
The essentials of the IT industry or What I wish I was taught about at Univer...Equal Experts
 
Secrets of an agile transformation
Secrets of an agile transformationSecrets of an agile transformation
Secrets of an agile transformationEqual Experts
 
Obstacles of Digital Transformation Evolution
Obstacles of Digital Transformation EvolutionObstacles of Digital Transformation Evolution
Obstacles of Digital Transformation EvolutionEqual Experts
 
Avoiding the security brick
Avoiding the security brickAvoiding the security brick
Avoiding the security brickEqual Experts
 
Embracing collaborative chaos
Embracing collaborative chaosEmbracing collaborative chaos
Embracing collaborative chaosEqual Experts
 
Organising for Continuous Delivery
Organising for Continuous DeliveryOrganising for Continuous Delivery
Organising for Continuous DeliveryEqual Experts
 
Cracking passwords via common topologies
Cracking passwords via common topologiesCracking passwords via common topologies
Cracking passwords via common topologiesEqual Experts
 
Inception Phases - Handling Complexity
Inception Phases - Handling ComplexityInception Phases - Handling Complexity
Inception Phases - Handling ComplexityEqual Experts
 

Plus de Equal Experts (20)

TRUST Framework Talk 2023-03-10.pptx
TRUST Framework Talk 2023-03-10.pptxTRUST Framework Talk 2023-03-10.pptx
TRUST Framework Talk 2023-03-10.pptx
 
Will it matter if your child cannot code?
Will it matter if your child cannot code?Will it matter if your child cannot code?
Will it matter if your child cannot code?
 
Platform Security IRL: Busting Buzzwords & Building Better
Platform Security IRL:  Busting Buzzwords & Building BetterPlatform Security IRL:  Busting Buzzwords & Building Better
Platform Security IRL: Busting Buzzwords & Building Better
 
Software development practices & Infrastructure as Code - how well do they wo...
Software development practices & Infrastructure as Code - how well do they wo...Software development practices & Infrastructure as Code - how well do they wo...
Software development practices & Infrastructure as Code - how well do they wo...
 
A Whole Team Approach to Quality in Continuous Delivery - Lisa Crispin
A Whole Team Approach to Quality in Continuous Delivery - Lisa CrispinA Whole Team Approach to Quality in Continuous Delivery - Lisa Crispin
A Whole Team Approach to Quality in Continuous Delivery - Lisa Crispin
 
Secure Continuous Delivery
Secure Continuous DeliverySecure Continuous Delivery
Secure Continuous Delivery
 
Embracing collaborative chaos (April 2020) by Lyndsay Prewer
Embracing collaborative chaos (April 2020) by Lyndsay PrewerEmbracing collaborative chaos (April 2020) by Lyndsay Prewer
Embracing collaborative chaos (April 2020) by Lyndsay Prewer
 
Design Systems: Designing out Waste, Designing in Consistency
Design Systems: Designing out Waste, Designing in ConsistencyDesign Systems: Designing out Waste, Designing in Consistency
Design Systems: Designing out Waste, Designing in Consistency
 
Growing Together - software development in the Developing world
Growing Together - software development in the Developing worldGrowing Together - software development in the Developing world
Growing Together - software development in the Developing world
 
Infrastructure - a journey from datacentres to cloud
Infrastructure - a journey from datacentres to cloudInfrastructure - a journey from datacentres to cloud
Infrastructure - a journey from datacentres to cloud
 
Data Science In Action: Prenatal Screening for Down Syndrome
Data Science In Action: Prenatal Screening for Down SyndromeData Science In Action: Prenatal Screening for Down Syndrome
Data Science In Action: Prenatal Screening for Down Syndrome
 
The essentials of the IT industry or What I wish I was taught about at Univer...
The essentials of the IT industry or What I wish I was taught about at Univer...The essentials of the IT industry or What I wish I was taught about at Univer...
The essentials of the IT industry or What I wish I was taught about at Univer...
 
Secrets of an agile transformation
Secrets of an agile transformationSecrets of an agile transformation
Secrets of an agile transformation
 
Obstacles of Digital Transformation Evolution
Obstacles of Digital Transformation EvolutionObstacles of Digital Transformation Evolution
Obstacles of Digital Transformation Evolution
 
Avoiding the security brick
Avoiding the security brickAvoiding the security brick
Avoiding the security brick
 
Embracing collaborative chaos
Embracing collaborative chaosEmbracing collaborative chaos
Embracing collaborative chaos
 
Continuous Security
Continuous SecurityContinuous Security
Continuous Security
 
Organising for Continuous Delivery
Organising for Continuous DeliveryOrganising for Continuous Delivery
Organising for Continuous Delivery
 
Cracking passwords via common topologies
Cracking passwords via common topologiesCracking passwords via common topologies
Cracking passwords via common topologies
 
Inception Phases - Handling Complexity
Inception Phases - Handling ComplexityInception Phases - Handling Complexity
Inception Phases - Handling Complexity
 

Dernier

Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.YounusS2
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7DianaGray10
 
NIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopNIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopBachir Benyammi
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Adtran
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IES VE
 
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online CollaborationCOMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online Collaborationbruanjhuli
 
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024D Cloud Solutions
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXTarek Kalaji
 
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintMahmoud Rabie
 
Computer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsComputer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsSeth Reyes
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationIES VE
 
AI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity WebinarAI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity WebinarPrecisely
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxMatsuo Lab
 
20230202 - Introduction to tis-py
20230202 - Introduction to tis-py20230202 - Introduction to tis-py
20230202 - Introduction to tis-pyJamie (Taka) Wang
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding TeamAdam Moalla
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPathCommunity
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdfPedro Manuel
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Commit University
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1DianaGray10
 

Dernier (20)

Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7
 
NIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopNIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 Workshop
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
 
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online CollaborationCOMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
 
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBX
 
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership Blueprint
 
Computer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsComputer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and Hazards
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
 
AI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity WebinarAI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity Webinar
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptx
 
20230202 - Introduction to tis-py
20230202 - Introduction to tis-py20230202 - Introduction to tis-py
20230202 - Introduction to tis-py
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation Developers
 
20150722 - AGV
20150722 - AGV20150722 - AGV
20150722 - AGV
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdf
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1
 

Smoothing the continuous delivery path a tale of two architectures - expert talk

  • 2. simple software solutions to big business problems. Making Software. Better. @EqualExperts Smoothing the Continuous Delivery path A tale of two architectures
  • 3. © Equal Experts UK Ltd 2020 @EqualExperts Continuous Delivery in donuts 3 Fast Feedback Risk Reduction Satisfied customer
  • 4. © Equal Experts UK Ltd 2020 @EqualExperts There is no (CD) silver bullet 4 ● >30 deploys / day ● >2 billion page views / month ● 1 (javascript) monorepo https://bit.ly/2BKuq5S ● >1000 deploys / day ● ~2 billion requests per day ● >600 java microservices https://bit.ly/2Uq5My8
  • 5. © Equal Experts UK Ltd 2020 @EqualExperts There is no (CD) silver bullet 5 ● Weekly deployments ● ~100M visits / day ● 2 monoliths (C#, C++) ● Multiple deploys / day ● Recent peak of ~1000 RPS ● ~1000 microservices (Scala) C++ C# Private Sector Org. UK Government Org.
  • 6. © Equal Experts UK Ltd 2020 @EqualExperts Practices for Smoothing the Continuous Delivery path 6 Practices for Microservices Practices For Monoliths Universal Practices *M 𝝁
  • 7. © Equal Experts UK Ltd 2020 @EqualExperts 7 Practice #0 - Start with the best people you can hire *
  • 8. © Equal Experts UK Ltd 2020 @EqualExperts ● What’s the smallest thing we can release to Production? ● How do we evolve Production behaviour ● Is this code change safe to go to Production today? 8 Practice #1 - Think about Production, all the time *
  • 9. © Equal Experts UK Ltd 2020 @EqualExperts 9 ▪ Work board right to left ▪ What was deployed yesterday? ▪ What will be deployed today? Practice #1 - Think about Production, all the time - Example: Production focused Standups *
  • 10. © Equal Experts UK Ltd 2020 @EqualExperts Practice #2 - Make ‘ilities’ continuous activities, not phases 10 Product Owner Define Dev Build QA Explore Web Ops Deploy Quality, Security, Operability, ... *
  • 11. © Equal Experts UK Ltd 2020 @EqualExperts 11 Practice #3 - Learn from Production incidents M http://www.airliners.net/photo/uk-air-force/british-aerospace-hawk-t1-astra/949077
  • 12. © Equal Experts UK Ltd 2020 @EqualExperts Practice #3 - Learn from Production incidents - 5 why’s - Run Blameless Post Mortems 12 M “Adaptability and learning. - We learn through honest, blameless reflection on lessons and surprises. - We believe that traditional root cause analysis makes learning from mistakes difficult. http://sec.edgar-online.com/etsy-inc/s-1a-securities-registration-statement/2015/04/14/section20.aspx
  • 13. © Equal Experts UK Ltd 2020 @EqualExperts Practice #3 - Learn from Production incidents - Run Blameless Post Mortems 13 M https://extfiles.etsy.com/DebriefingFacilitationGuide.pdf Structure and Preparation ● Familiarize Yourself With the Timeline in Advance ● Unearth More Objective and Subjective Data ● Talking to the People Who Would Usually Be Blamed Is Really Important ● Come up With Some Initial Questions
  • 14. © Equal Experts UK Ltd 2020 @EqualExperts Practice #4 - Automate release notes 14 M https://commons.wikimedia.org/wiki/File:Spot_the_difference.png
  • 15. © Equal Experts UK Ltd 2020 @EqualExperts Practice #4 - Automate release notes 15 M
  • 16. © Equal Experts UK Ltd 2020 @EqualExperts Practice #4 - Automate release notes 16 Source control system Login Reporting Payments API’s Agile Project Management Tool Features Stories Tasks Defects Story 123 State, areas, authors ... Defect 789 State, areas, authors ... Untracked work Areas, authors ... Release note generator Production Version Candidate Version M
  • 17. © Equal Experts UK Ltd 2020 @EqualExperts Practice #5 - Teams own their own microservices 17 𝝁 Legacy and Third Party Systems ~1000 microservices Xm BusinessesXXm Individuals x130 Transaction types Back-ends Front-ends / APIs
  • 18. © Equal Experts UK Ltd 2020 @EqualExperts Practice #5 - Teams own their own microservices 18 𝝁 Legacy and Third Party Systems Xm BusinessesXXm Individuals x130 Transaction types Cat Services Dog Services Tiger Services Team Tools Service Operation Platform Security Auditing Build & Deploy Infra- structure Telemetry 60 service teams 7 platform teams
  • 19. © Equal Experts UK Ltd 2020 @EqualExperts Practice #5 - Teams own their own microservices 19 “You build it, you run it” - Werner Vogels Amazon CTO https://goo.gl/DyfeOf 𝝁 https://www.flickr.com/photos/jobook/4751509167/
  • 20. © Equal Experts UK Ltd 2020 @EqualExperts Practice #6 - Play nicely with others (services, APIs, libraries) 20 𝝁 http://www.asterix-obelix.nl/images/albums/characters/c-fighting.gif
  • 21. © Equal Experts UK Ltd 2020 @EqualExperts 21 Production Staging QA Dev Sharing through caring 𝝁Practice #6 - Play nicely with others (services, APIs, libraries)
  • 22. © Equal Experts UK Ltd 2020 @EqualExperts Practices for Smoothing the Continuous Delivery path 22 0. Start with the best people you can hire 1. Think about Production, all the time 2. Make ‘ilities continuous activities, not phases 3. Learn from Production incidents 4. Automate release notes 5. Teams own their own microservices 6. Play nicely with others (services, APIs, etc) * M 𝝁