SlideShare a Scribd company logo
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
simple software solutions to big business problems.
Making Software. Better.
Smoothing the continuous delivery path
A tale of two teams
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
What’s this all about?
2
Continuous
Delivery
Done Well
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
What’s this (Continuous Delivery) all about?
3
“... producing valuable software
in short cycles and ensure that the
software can be reliably released
at any time”-
https://en.wikipedia.org/wiki/Continuous_delivery
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Continuous doughnuts
4
Fast feedback
Risk Reduction
T: 0:00:000 T: 2:00:000
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
There’s no (CD) silver bullet
5
1 (php) monolith
50 deploys / day
1.5 billion page views / month
http://goo.gl/XIB29i
>600 java microservices
>100 deploys / day
~2 billion requests per day
http://goo.gl/ZJBiK6
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Prefer Continuous Improvement over Continuous Delivery
▪ .Net monolith
▪ 26 -> 24 -> 34 releases per year
▪ https://goo.gl/KF9xXw
6
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp 7
People first, practices/process second, products last
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
.Net monolith team - how they roll
8
▪ Private sector
▪ Significant legacy code
▪ High daily traffic (~100 million visits)
▪ ~8 product teams
▪ Weekly deployments:
– Pick release candidate
– Regression test
– Dog food
– Deploy
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Scala microservices team - how they roll
9
▪ .Gov - HMRC Digital
▪ 2 years old (greenfield)
▪ Calendar spikes (Visits peak is ~4 million)
▪ >30 product teams
▪ Multiple deployments per day
– Teams “own” their own services
– “You build it, you run it” -
https://goo.gl/DyfeOf
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Continuous
Delivery
Done Well
Patterns for successful practice
10
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Best practice #1 - Healthy CI - mind & body
11
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Best practice #1 - Healthy CI - mind & body
12
Almost
green!
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Best practice #2 - Testing as an activity, not a phase
13
Product
Owner
Define
Dev
Build
QA
Test
Web Ops
Deploy
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Best practice #2 - Testing as an activity, not a phase
14
Product
Owner
Define
Dev
Build
QA
Test
Web Ops
Deploy
Test
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Best practice #3 - Healthy automated tests
15
Unit Tests
API
UI
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Best practice #3 - (Un)healthy automated tests
16
API
UI
Unit Tests
The “Hour Glass”
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
UI
Best practice #3 - (Un)healthy automated tests
17
API
The “Ice Cream Cone”
Unit
Test
s
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Best practice #3 - Healthy automated tests
18
Unit Tests
API
UI
The “Tear Drop”
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Best practice #4 - Low (manual) cost
deployment (and rollback)
19
VS.
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Best practice #5 - Metrics, monitoring and alerting
20
http://seluxkanaur.deviantart.com/art/Sauron-s-Eye-6-420535318
“Big data”
Social media
User behaviour
Business metrics
Service performance
Service errors
Disk and Network
Monitor
all things!
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Metrics, monitoring and alerting - getting it right
21
Detect
Alert
Respond
Display
Analyse
Time & Pain increasing!
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Metrics, monitoring and alerting - getting it wrong
22
Detect
Respond
Display
Analyse
Time & Pain increasing!
Alert
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Metrics, monitoring and alerting - where and how?
23
Detect
Alert
Respond
Display
Analyse
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Metrics, monitoring and alerting - stories from the trenches
24
Detect
Alert
Respond
Display
Analyse
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Best practice summary
1. Healthy CI (mind and body)
2. Testing as an activty, not a phase
3. Tear drop shape automated tests (focus on behaviour, with loose coupling)
4. Low (manual) cost deployment and rollback
5. Metrics, monitoring and reporting
25
Product
Owner
Define
Dev
Build
QA
Test
Web Ops
Deplo
y
Test
Unit
Tests
API
U
I
Detect
Alert
Respond
Display
Analyse
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Shared Pain
26
Continuous
Delivery
Done Well
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Shared pain #1 - Zero down-time releases
27
https://en.wikipedia.org/wiki/VO2_max
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Shared pain #2 - Manual deployment steps
28
https://en.wikipedia.org/wiki/Tailor https://en.wikipedia.org/wiki/Zara_(retailer)
VS.
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Shared pain summary
1. Zero down time releases
2. Manual deployment steps
29
VS.
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Team specific accelerators
30
Continuous
Delivery
Done Well
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Accelerators - 5 why’s
31
● Create a timeline.
● Gather those involved.
● Walk through the timeline.
● Choose an entry point event:
○ Event
○ Why?
○ Process improvement
● Repeat x5 (ish)
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Accelerators - 5 why’s - example
32
Event Why? Improvement
Error threshold alert
triggered.
Calls to service X were
timing out.
Implement failover / circuit
breaker.
Calls to service X were
timing out.
Queries run by Service X
were taking too long.
Alert on long running
queries.
Queries run by Service X
were taking too long.
Index was missing for a
new field.
...
... ... ...
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Accelerators - automated release notes - the problem #1
33
Much confusion
and pain
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Accelerators - automated release notes - the problem #2
34
Agile Project
Management
Tool
Source control
system
Features
Stories
Defects
Login
Reporting
Payments
API’s
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Accelerators - automated release notes - the solution
35
Agile Project
Management
Tool
Source control
system
Features
Stories
Defects
Login
1. Identify source changes
2. Identify stories/defects
3. Identify areas
4. Group by story/defect
5. For each, summarise areas
and authors
6. Group by:
a. What’s done
b. What’s in progress
Reporting
Payments
API’s
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Team specific accelerators
36
Continuous
Delivery
Done Well
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Accelerators - teams “own” their own microservices
37
▪ “You build it, you run it” - https://goo.gl/DyfeOf
▪ Prefer service over library dependencies
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Accelerators - backward compatible API’s
(principle of least surprise)
38
https://en.wikipedia.org/wiki/VO2_max
Production
Staging
QA
Dev
Everyone
shares
(and cares)
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
Team specific accelerators summary
Monolith:
1. 5 -why’s
2. Automated release note
Microservices:
1. Microservice dependencies, not library dependencies
2. Backward compatible API’s
39
Agile Project
Management
Tool
Source
control
system
Features
Stories
Defects
Login
Reporting
Payments
API’s
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
References and resources
40
▪ Build Quality In (promo code - LP2015 - https://goo.gl/ZRuQKw)
Continuous Delivery
Implementing Lean Software Development
Release It
© Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp
simple software solutions to big business problems.
Making Software. Better.
Thank You
Twitter
@EqualExperts
@lyndsp
LinkedIn
linkedin.com/company/equal-experts
uk.linkedin.com/in/lyndsp
UNITED KINGDOM
+44 203 603 7830
helloUK@equalexperts.com
Equal Experts UK Ltd
30 Brock Street
London NW1 3FG
INDIA
+91 20 6607 7763
helloIndia@equalexperts.com
Equal Experts India Private Ltd
Office No. 4-C
Cerebrum IT Park No. B3
Kumar City, Kalyani Nagar
Pune, 411006
Web
www.equalexperts.com
www.lyndsayp.com
CANADA
+1 403 775 4861
helloCanada@equalexperts.com
Equal Experts Devices Inc
205 - 279 Midpark way S.E.
T2X 1M2
Calgary, Alberta
PORTUGAL
+
helloPortugal@equalexperts.com
Equal Experts Portugal
Rua Tomás da Fonseca
- Torres de Lisboa
Torre G, 5º Andar
1600-209 Lisboa
Thank You

More Related Content

ODP
Lyndsay Prewer - Smoothing the continuous delivery path - a tale of two teams
Agile Lietuva
 
PDF
Leading the Transformation: Stories from the Trenches
DevOps.com
 
PPTX
Get Ready for Changes To Load Testing
SOASTA
 
PDF
7 steps to pragmatic mobile testing
SOASTA
 
PPTX
Building a Performance A-Team
SOASTA
 
PPTX
5 Keys to Your Best Automated Testing Strategy
SOASTA
 
PPTX
The Four Hats of Load and Performance Testing with special guest Mentora
SOASTA
 
PPTX
Velocity 2015 building self healing systems (slide share version)
SOASTA
 
Lyndsay Prewer - Smoothing the continuous delivery path - a tale of two teams
Agile Lietuva
 
Leading the Transformation: Stories from the Trenches
DevOps.com
 
Get Ready for Changes To Load Testing
SOASTA
 
7 steps to pragmatic mobile testing
SOASTA
 
Building a Performance A-Team
SOASTA
 
5 Keys to Your Best Automated Testing Strategy
SOASTA
 
The Four Hats of Load and Performance Testing with special guest Mentora
SOASTA
 
Velocity 2015 building self healing systems (slide share version)
SOASTA
 

What's hot (20)

PPTX
O'Reilly Webcast: How Nordstrom Prepares Its Site for Holidays and Major Events
SOASTA
 
PPTX
Knowing Where to Tap
QASymphony
 
PPTX
Secrets to Realistic Load Testing
SOASTA
 
PPTX
Testing In Production (TiP) Advances with Big Data & the Cloud
SOASTA
 
PPTX
Diving into the World of Test Automation The Approach and the Technologies
QASymphony
 
PDF
Soasta New Features in CloudTest & TouchTest Webinar
Jennifer Finney
 
PDF
Gartner starting and scaling dev ops
Tapabrata Pal
 
PDF
Metrics-driven Continuous Delivery
Andrew Phillips
 
PPTX
Webinar: Load Testing for Your Peak Season
SOASTA
 
PPT
Test Automation In The Hands of "The Business"
Greg Tutunjian
 
PPTX
Moving QA from Reactive to Proactive with qTest
QASymphony
 
PPT
Thriving in the Shark Tank: How Vebalizeit Load Tested with SOASTA
SOASTA
 
PPTX
Soasta | CloudBees webinar 11/12/2015
SOASTA
 
PDF
SOASTA mPulse update webinar
CloudBees
 
PPTX
Impact of agile quantified: 2014 edition - A de-mystery thriller
Larry Maccherone
 
PPT
Agile Load Testing In The Real World
SOASTA
 
PDF
Shift left-devoxx-pl
John Ferguson Smart Limited
 
PPTX
Modern Load Testing: Move Your Load Testing from the Past to the Present
SOASTA
 
PPTX
Final tips holiday readiness 2015 for slide share
SOASTA
 
PPTX
Tis The Season: Load Testing Tips and Checklist for Retail Seasonal Readiness
SOASTA
 
O'Reilly Webcast: How Nordstrom Prepares Its Site for Holidays and Major Events
SOASTA
 
Knowing Where to Tap
QASymphony
 
Secrets to Realistic Load Testing
SOASTA
 
Testing In Production (TiP) Advances with Big Data & the Cloud
SOASTA
 
Diving into the World of Test Automation The Approach and the Technologies
QASymphony
 
Soasta New Features in CloudTest & TouchTest Webinar
Jennifer Finney
 
Gartner starting and scaling dev ops
Tapabrata Pal
 
Metrics-driven Continuous Delivery
Andrew Phillips
 
Webinar: Load Testing for Your Peak Season
SOASTA
 
Test Automation In The Hands of "The Business"
Greg Tutunjian
 
Moving QA from Reactive to Proactive with qTest
QASymphony
 
Thriving in the Shark Tank: How Vebalizeit Load Tested with SOASTA
SOASTA
 
Soasta | CloudBees webinar 11/12/2015
SOASTA
 
SOASTA mPulse update webinar
CloudBees
 
Impact of agile quantified: 2014 edition - A de-mystery thriller
Larry Maccherone
 
Agile Load Testing In The Real World
SOASTA
 
Shift left-devoxx-pl
John Ferguson Smart Limited
 
Modern Load Testing: Move Your Load Testing from the Past to the Present
SOASTA
 
Final tips holiday readiness 2015 for slide share
SOASTA
 
Tis The Season: Load Testing Tips and Checklist for Retail Seasonal Readiness
SOASTA
 
Ad

Viewers also liked (12)

DOC
Έξοδος ΗΒ από ΕΕ
Alexia-Nefeli Dumas
 
PDF
So where are we now? The TDM landscape
FutureTDM
 
DOC
Facebook_a privacy defender or a privacy traitor
Alexia-Nefeli Dumas
 
PPTX
Jamaah
mohammad12fiki
 
PPT
All change! How the new Economics of Cloud will make you think differently ab...
JAXLondon_Conference
 
DOCX
CV_ S Arunkumar -Procurement And Sub Contract
Arunkumar Shirawalmath
 
DOCX
קורות חיים 2016
Alex-Shai Litovchik
 
PDF
Abdullah almohaimeed cv2016
Abdullah Almohaimeed
 
PPTX
ΣΗΜΑΣΙΑ ΤΗΣ ΣΤΟΜΑΤΙΚΗΣ ΥΓΕΙΑΣ
Katerina Koleventi
 
PDF
Sensation and perception
coburgpsych
 
PPT
Operational definitions
phdserena
 
PPTX
Price Discrimination
tutor2u
 
Έξοδος ΗΒ από ΕΕ
Alexia-Nefeli Dumas
 
So where are we now? The TDM landscape
FutureTDM
 
Facebook_a privacy defender or a privacy traitor
Alexia-Nefeli Dumas
 
All change! How the new Economics of Cloud will make you think differently ab...
JAXLondon_Conference
 
CV_ S Arunkumar -Procurement And Sub Contract
Arunkumar Shirawalmath
 
קורות חיים 2016
Alex-Shai Litovchik
 
Abdullah almohaimeed cv2016
Abdullah Almohaimeed
 
ΣΗΜΑΣΙΑ ΤΗΣ ΣΤΟΜΑΤΙΚΗΣ ΥΓΕΙΑΣ
Katerina Koleventi
 
Sensation and perception
coburgpsych
 
Operational definitions
phdserena
 
Price Discrimination
tutor2u
 
Ad

Similar to Smoothing the continuous delivery path – a tale of two teams - Lyndsay Prewer (20)

PDF
Smoothing the Continuous Delivery Path - A Tale of Two Teams
Equal Experts
 
PPTX
Continuous Delivery and Continuous Agile by Andy Singleton - Agile Maine Day...
agilemaine
 
PDF
Fine-Tuning of Agile Development
Thoughtworks
 
PPTX
Make Continuous Delivery work for middle management
Matteo Emili
 
PPTX
Dev ops != Dev+Ops
Shalu Ahuja
 
PDF
Smoothing the continuous delivery path a tale of two architectures - expert...
Equal Experts
 
PPTX
Moving 65,000 Microsofties to DevOps with Visual Studio Team Services
VSTS Community MSFT
 
PPTX
Dev ops is more than CI+CD tools
Sudipta Lahiri
 
PPTX
Agile Gurugram 2017 | DevOps > CI + CD | Sudipta Lahiri
AgileNetwork
 
PDF
Agile A to Z Chapter 4 Feedback Loop Part 2 DevOps
Agile ME
 
PDF
Continuous, continuous, continuous
Michele Orselli
 
PPTX
Continuous Delivery: why ? where to start ? how to scale ?
Jean-Philippe Briend
 
PDF
Preparing for Enterprise Continuous Delivery - 5 Critical Steps
XebiaLabs
 
PPTX
4.9.2013 Continuous Delivery - Extending Agile Development; A Lean Approach
IBM Rational
 
PPTX
How to go from waterfall app dev to secure agile development in 2 weeks
Ulf Mattsson
 
PDF
DevOps - Right Tool for Right Phase
Dalibor Blazevic
 
PPTX
Tester’s considerations when moving towards successful CI/CD
Derk-Jan de Grood
 
PPTX
State of continuous delivery in 2015 - Minsk 15-5-2015
Pavel Chunyayev
 
PPTX
Павел Чуняев - State of Continuous Delivery in 2015
ITSpringBY
 
PPTX
NISI Introductie Continuous Delivery 3.0
Garm Lucassen
 
Smoothing the Continuous Delivery Path - A Tale of Two Teams
Equal Experts
 
Continuous Delivery and Continuous Agile by Andy Singleton - Agile Maine Day...
agilemaine
 
Fine-Tuning of Agile Development
Thoughtworks
 
Make Continuous Delivery work for middle management
Matteo Emili
 
Dev ops != Dev+Ops
Shalu Ahuja
 
Smoothing the continuous delivery path a tale of two architectures - expert...
Equal Experts
 
Moving 65,000 Microsofties to DevOps with Visual Studio Team Services
VSTS Community MSFT
 
Dev ops is more than CI+CD tools
Sudipta Lahiri
 
Agile Gurugram 2017 | DevOps > CI + CD | Sudipta Lahiri
AgileNetwork
 
Agile A to Z Chapter 4 Feedback Loop Part 2 DevOps
Agile ME
 
Continuous, continuous, continuous
Michele Orselli
 
Continuous Delivery: why ? where to start ? how to scale ?
Jean-Philippe Briend
 
Preparing for Enterprise Continuous Delivery - 5 Critical Steps
XebiaLabs
 
4.9.2013 Continuous Delivery - Extending Agile Development; A Lean Approach
IBM Rational
 
How to go from waterfall app dev to secure agile development in 2 weeks
Ulf Mattsson
 
DevOps - Right Tool for Right Phase
Dalibor Blazevic
 
Tester’s considerations when moving towards successful CI/CD
Derk-Jan de Grood
 
State of continuous delivery in 2015 - Minsk 15-5-2015
Pavel Chunyayev
 
Павел Чуняев - State of Continuous Delivery in 2015
ITSpringBY
 
NISI Introductie Continuous Delivery 3.0
Garm Lucassen
 

More from JAXLondon_Conference (20)

PDF
Cassandra and Spark - Tim Berglund
JAXLondon_Conference
 
PDF
The Unit Test is dead. Long live the Unit Test! - Colin Vipurs
JAXLondon_Conference
 
PDF
Stop guessing, start testing – mobile testing done right - Timo Euteneuer
JAXLondon_Conference
 
PDF
Java Generics Past, Present and Future - Richard Warburton, Raoul-Gabriel Urma
JAXLondon_Conference
 
PDF
Java Generics Past, Present and Future - Richard Warburton, Raoul-Gabriel Urma
JAXLondon_Conference
 
PDF
VC from the inside - a techie's perspective - Adrian Colyer
JAXLondon_Conference
 
PDF
Use your type system; write less code - Samir Talwar
JAXLondon_Conference
 
PPTX
Thinking fast and slow with software development - Daniel Bryant
JAXLondon_Conference
 
PPTX
The java memory model and the mutability matrix of pain - Jamie Allen
JAXLondon_Conference
 
PDF
The art of shifting perspectives - Rachel Davies
JAXLondon_Conference
 
PDF
Spring Boot in the Web Tier - Dave Syer
JAXLondon_Conference
 
PDF
Microservices from dream to reality in an hour - Dr. Holly Cummins
JAXLondon_Conference
 
PPT
Love your architecture - Alexander von Zitzewitz
JAXLondon_Conference
 
PPTX
Lambdas puzzler - Peter Lawrey
JAXLondon_Conference
 
PDF
Java vs. Java Script for enterprise web applications - Chris Bailey
JAXLondon_Conference
 
PDF
Java generics past, present and future - Raoul-Gabriel Urma, Richard Warburton
JAXLondon_Conference
 
PDF
Java 8 best practices - Stephen Colebourne
JAXLondon_Conference
 
PPTX
Intuitions for scaling data centric architectures - Benjamin Stopford
JAXLondon_Conference
 
PDF
Hybrid solutions – combining in memory solutions with SSD - Christos Erotocritou
JAXLondon_Conference
 
PPTX
How to defeat feature gluttony - Kasia Mrowca
JAXLondon_Conference
 
Cassandra and Spark - Tim Berglund
JAXLondon_Conference
 
The Unit Test is dead. Long live the Unit Test! - Colin Vipurs
JAXLondon_Conference
 
Stop guessing, start testing – mobile testing done right - Timo Euteneuer
JAXLondon_Conference
 
Java Generics Past, Present and Future - Richard Warburton, Raoul-Gabriel Urma
JAXLondon_Conference
 
Java Generics Past, Present and Future - Richard Warburton, Raoul-Gabriel Urma
JAXLondon_Conference
 
VC from the inside - a techie's perspective - Adrian Colyer
JAXLondon_Conference
 
Use your type system; write less code - Samir Talwar
JAXLondon_Conference
 
Thinking fast and slow with software development - Daniel Bryant
JAXLondon_Conference
 
The java memory model and the mutability matrix of pain - Jamie Allen
JAXLondon_Conference
 
The art of shifting perspectives - Rachel Davies
JAXLondon_Conference
 
Spring Boot in the Web Tier - Dave Syer
JAXLondon_Conference
 
Microservices from dream to reality in an hour - Dr. Holly Cummins
JAXLondon_Conference
 
Love your architecture - Alexander von Zitzewitz
JAXLondon_Conference
 
Lambdas puzzler - Peter Lawrey
JAXLondon_Conference
 
Java vs. Java Script for enterprise web applications - Chris Bailey
JAXLondon_Conference
 
Java generics past, present and future - Raoul-Gabriel Urma, Richard Warburton
JAXLondon_Conference
 
Java 8 best practices - Stephen Colebourne
JAXLondon_Conference
 
Intuitions for scaling data centric architectures - Benjamin Stopford
JAXLondon_Conference
 
Hybrid solutions – combining in memory solutions with SSD - Christos Erotocritou
JAXLondon_Conference
 
How to defeat feature gluttony - Kasia Mrowca
JAXLondon_Conference
 

Recently uploaded (20)

PPTX
Web Testing.pptx528278vshbuqffqhhqiwnwuq
studylike474
 
PDF
49784907924775488180_LRN2959_Data_Pump_23ai.pdf
Abilash868456
 
PDF
Key Features to Look for in Arizona App Development Services
Net-Craft.com
 
PDF
Applitools Platform Pulse: What's New and What's Coming - July 2025
Applitools
 
DOCX
Can You Build Dashboards Using Open Source Visualization Tool.docx
Varsha Nayak
 
PPTX
Presentation about Database and Database Administrator
abhishekchauhan86963
 
PPTX
The-Dawn-of-AI-Reshaping-Our-World.pptxx
parthbhanushali307
 
PPTX
Presentation about variables and constant.pptx
kr2589474
 
PDF
MiniTool Power Data Recovery Crack New Pre Activated Version Latest 2025
imang66g
 
PDF
On Software Engineers' Productivity - Beyond Misleading Metrics
Romén Rodríguez-Gil
 
PPTX
Can You Build Dashboards Using Open Source Visualization Tool.pptx
Varsha Nayak
 
PPTX
Explanation about Structures in C language.pptx
Veeral Rathod
 
PPTX
Contractor Management Platform and Software Solution for Compliance
SHEQ Network Limited
 
PDF
Summary Of Odoo 18.1 to 18.4 : The Way For Odoo 19
CandidRoot Solutions Private Limited
 
PDF
Adobe Illustrator Crack Full Download (Latest Version 2025) Pre-Activated
imang66g
 
PDF
Balancing Resource Capacity and Workloads with OnePlan – Avoid Overloading Te...
OnePlan Solutions
 
PDF
Immersive experiences: what Pharo users do!
ESUG
 
PDF
10 posting ideas for community engagement with AI prompts
Pankaj Taneja
 
PPTX
Odoo Integration Services by Candidroot Solutions
CandidRoot Solutions Private Limited
 
PDF
Using licensed Data Loss Prevention (DLP) as a strategic proactive data secur...
Q-Advise
 
Web Testing.pptx528278vshbuqffqhhqiwnwuq
studylike474
 
49784907924775488180_LRN2959_Data_Pump_23ai.pdf
Abilash868456
 
Key Features to Look for in Arizona App Development Services
Net-Craft.com
 
Applitools Platform Pulse: What's New and What's Coming - July 2025
Applitools
 
Can You Build Dashboards Using Open Source Visualization Tool.docx
Varsha Nayak
 
Presentation about Database and Database Administrator
abhishekchauhan86963
 
The-Dawn-of-AI-Reshaping-Our-World.pptxx
parthbhanushali307
 
Presentation about variables and constant.pptx
kr2589474
 
MiniTool Power Data Recovery Crack New Pre Activated Version Latest 2025
imang66g
 
On Software Engineers' Productivity - Beyond Misleading Metrics
Romén Rodríguez-Gil
 
Can You Build Dashboards Using Open Source Visualization Tool.pptx
Varsha Nayak
 
Explanation about Structures in C language.pptx
Veeral Rathod
 
Contractor Management Platform and Software Solution for Compliance
SHEQ Network Limited
 
Summary Of Odoo 18.1 to 18.4 : The Way For Odoo 19
CandidRoot Solutions Private Limited
 
Adobe Illustrator Crack Full Download (Latest Version 2025) Pre-Activated
imang66g
 
Balancing Resource Capacity and Workloads with OnePlan – Avoid Overloading Te...
OnePlan Solutions
 
Immersive experiences: what Pharo users do!
ESUG
 
10 posting ideas for community engagement with AI prompts
Pankaj Taneja
 
Odoo Integration Services by Candidroot Solutions
CandidRoot Solutions Private Limited
 
Using licensed Data Loss Prevention (DLP) as a strategic proactive data secur...
Q-Advise
 

Smoothing the continuous delivery path – a tale of two teams - Lyndsay Prewer

  • 1. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp simple software solutions to big business problems. Making Software. Better. Smoothing the continuous delivery path A tale of two teams
  • 2. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp What’s this all about? 2 Continuous Delivery Done Well
  • 3. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp What’s this (Continuous Delivery) all about? 3 “... producing valuable software in short cycles and ensure that the software can be reliably released at any time”- https://en.wikipedia.org/wiki/Continuous_delivery
  • 4. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Continuous doughnuts 4 Fast feedback Risk Reduction T: 0:00:000 T: 2:00:000
  • 5. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp There’s no (CD) silver bullet 5 1 (php) monolith 50 deploys / day 1.5 billion page views / month http://goo.gl/XIB29i >600 java microservices >100 deploys / day ~2 billion requests per day http://goo.gl/ZJBiK6
  • 6. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Prefer Continuous Improvement over Continuous Delivery ▪ .Net monolith ▪ 26 -> 24 -> 34 releases per year ▪ https://goo.gl/KF9xXw 6
  • 7. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp 7 People first, practices/process second, products last
  • 8. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp .Net monolith team - how they roll 8 ▪ Private sector ▪ Significant legacy code ▪ High daily traffic (~100 million visits) ▪ ~8 product teams ▪ Weekly deployments: – Pick release candidate – Regression test – Dog food – Deploy
  • 9. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Scala microservices team - how they roll 9 ▪ .Gov - HMRC Digital ▪ 2 years old (greenfield) ▪ Calendar spikes (Visits peak is ~4 million) ▪ >30 product teams ▪ Multiple deployments per day – Teams “own” their own services – “You build it, you run it” - https://goo.gl/DyfeOf
  • 10. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Continuous Delivery Done Well Patterns for successful practice 10
  • 11. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Best practice #1 - Healthy CI - mind & body 11
  • 12. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Best practice #1 - Healthy CI - mind & body 12 Almost green!
  • 13. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Best practice #2 - Testing as an activity, not a phase 13 Product Owner Define Dev Build QA Test Web Ops Deploy
  • 14. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Best practice #2 - Testing as an activity, not a phase 14 Product Owner Define Dev Build QA Test Web Ops Deploy Test
  • 15. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Best practice #3 - Healthy automated tests 15 Unit Tests API UI
  • 16. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Best practice #3 - (Un)healthy automated tests 16 API UI Unit Tests The “Hour Glass”
  • 17. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp UI Best practice #3 - (Un)healthy automated tests 17 API The “Ice Cream Cone” Unit Test s
  • 18. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Best practice #3 - Healthy automated tests 18 Unit Tests API UI The “Tear Drop”
  • 19. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Best practice #4 - Low (manual) cost deployment (and rollback) 19 VS.
  • 20. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Best practice #5 - Metrics, monitoring and alerting 20 http://seluxkanaur.deviantart.com/art/Sauron-s-Eye-6-420535318 “Big data” Social media User behaviour Business metrics Service performance Service errors Disk and Network Monitor all things!
  • 21. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Metrics, monitoring and alerting - getting it right 21 Detect Alert Respond Display Analyse Time & Pain increasing!
  • 22. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Metrics, monitoring and alerting - getting it wrong 22 Detect Respond Display Analyse Time & Pain increasing! Alert
  • 23. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Metrics, monitoring and alerting - where and how? 23 Detect Alert Respond Display Analyse
  • 24. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Metrics, monitoring and alerting - stories from the trenches 24 Detect Alert Respond Display Analyse
  • 25. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Best practice summary 1. Healthy CI (mind and body) 2. Testing as an activty, not a phase 3. Tear drop shape automated tests (focus on behaviour, with loose coupling) 4. Low (manual) cost deployment and rollback 5. Metrics, monitoring and reporting 25 Product Owner Define Dev Build QA Test Web Ops Deplo y Test Unit Tests API U I Detect Alert Respond Display Analyse
  • 26. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Shared Pain 26 Continuous Delivery Done Well
  • 27. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Shared pain #1 - Zero down-time releases 27 https://en.wikipedia.org/wiki/VO2_max
  • 28. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Shared pain #2 - Manual deployment steps 28 https://en.wikipedia.org/wiki/Tailor https://en.wikipedia.org/wiki/Zara_(retailer) VS.
  • 29. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Shared pain summary 1. Zero down time releases 2. Manual deployment steps 29 VS.
  • 30. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Team specific accelerators 30 Continuous Delivery Done Well
  • 31. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Accelerators - 5 why’s 31 ● Create a timeline. ● Gather those involved. ● Walk through the timeline. ● Choose an entry point event: ○ Event ○ Why? ○ Process improvement ● Repeat x5 (ish)
  • 32. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Accelerators - 5 why’s - example 32 Event Why? Improvement Error threshold alert triggered. Calls to service X were timing out. Implement failover / circuit breaker. Calls to service X were timing out. Queries run by Service X were taking too long. Alert on long running queries. Queries run by Service X were taking too long. Index was missing for a new field. ... ... ... ...
  • 33. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Accelerators - automated release notes - the problem #1 33 Much confusion and pain
  • 34. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Accelerators - automated release notes - the problem #2 34 Agile Project Management Tool Source control system Features Stories Defects Login Reporting Payments API’s
  • 35. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Accelerators - automated release notes - the solution 35 Agile Project Management Tool Source control system Features Stories Defects Login 1. Identify source changes 2. Identify stories/defects 3. Identify areas 4. Group by story/defect 5. For each, summarise areas and authors 6. Group by: a. What’s done b. What’s in progress Reporting Payments API’s
  • 36. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Team specific accelerators 36 Continuous Delivery Done Well
  • 37. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Accelerators - teams “own” their own microservices 37 ▪ “You build it, you run it” - https://goo.gl/DyfeOf ▪ Prefer service over library dependencies
  • 38. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Accelerators - backward compatible API’s (principle of least surprise) 38 https://en.wikipedia.org/wiki/VO2_max Production Staging QA Dev Everyone shares (and cares)
  • 39. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp Team specific accelerators summary Monolith: 1. 5 -why’s 2. Automated release note Microservices: 1. Microservice dependencies, not library dependencies 2. Backward compatible API’s 39 Agile Project Management Tool Source control system Features Stories Defects Login Reporting Payments API’s
  • 40. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp References and resources 40 ▪ Build Quality In (promo code - LP2015 - https://goo.gl/ZRuQKw) Continuous Delivery Implementing Lean Software Development Release It
  • 41. © Equal Experts UK Ltd and lyndsayp ltd 2015@EqualExperts @lyndsp simple software solutions to big business problems. Making Software. Better. Thank You Twitter @EqualExperts @lyndsp LinkedIn linkedin.com/company/equal-experts uk.linkedin.com/in/lyndsp UNITED KINGDOM +44 203 603 7830 [email protected] Equal Experts UK Ltd 30 Brock Street London NW1 3FG INDIA +91 20 6607 7763 [email protected] Equal Experts India Private Ltd Office No. 4-C Cerebrum IT Park No. B3 Kumar City, Kalyani Nagar Pune, 411006 Web www.equalexperts.com www.lyndsayp.com CANADA +1 403 775 4861 [email protected] Equal Experts Devices Inc 205 - 279 Midpark way S.E. T2X 1M2 Calgary, Alberta PORTUGAL + [email protected] Equal Experts Portugal Rua Tomás da Fonseca - Torres de Lisboa Torre G, 5º Andar 1600-209 Lisboa Thank You

Editor's Notes

  • #2: Introduce myself (lyndsayp Ltd and EE) Roles Over 30 teams working within a Scala microservices architecture, releasing into Production multiple times per day This session is an experience report of the best practices and pain points of two teams that both practice Continous Delivery. Establish: - what roles are present - how many deliver to web Show of hands - production deployment capability: one or more per year, per quarter, per month, per week, per day
  • #3: Two very different teams Government Scala microservices Private sector .Net Monolith Both teams are doing a great job of getting their doughnuts (of differing sizes and shapes) out to Production. This is an experience report will compare and contrast What best practices help these team go faster, faster What areas of pain slow them down
  • #4: Emphasise: Fast feedback Risk reduction
  • #5: Valuable software in short cycles reliably released at any time Fast feedback - shortest time from concept to cash Risk reduction - smallest value possible
  • #7: Whilst preparing this session, I read a fascinating blog post on how another highly successful company, called targetprocess, has evolved over the last 90 months. The article describes, in gory detail, their journey over the last 7 years, through various agile best practices. Over the last three years they’ve improved their delivery frequency, but still have some way to go. They’ve made lots of improvements in other areas though. The article reminds us that when improving one’s Continuous Delivery, it’s important not to do so at the expense of other practices. The overarching goal has to be Continuous Improvement, not Continuous Delivery.
  • #10: HMRC Digital (Public sector) Gov.uk tax interfaces for citizens and businesses (70% of all gov transactions, > 1 billion transactions online) Traffic varies across the year, with peaks at key tax calendar events 30+ Product Teams Tech Stack Scala Microservices Docker Mongo DB Deployment frequency You build it, you run it - Amazon CTO Werner Vogels
  • #12: CI that works Culture - Mind share
  • #13: CI that works - knowing what to automate - a story about .Net Monolith
  • #14: Cross functional teams Picture of team mix Picture of testing all the time Story about E
  • #15: Cross functional teams Picture of team mix Picture of testing all the time
  • #16: The test automation pyramid API and/or integration tests
  • #17: Picture different test mixes Common automated testing problems
  • #18: Picture different test mixes Common automated testing problems Picture different test mixes, highlighting problems
  • #19: Tear drop shape Behavioural focus
  • #20: Story about E, then .Net Monolith Story about HMRC (rollback)
  • #21: Eye of Sauron, looking at the whole stack (user behaviour, down to disk space) Highlight: What to focus on (behaviour instead of environment) Leading vs. trailing indicators
  • #22: Detect Alert Respond Display Analyse Diagram of right and wrong mix of the above
  • #23: Detect Alert Respond Display Analyse Diagram of right and wrong mix of the above
  • #25: Tell a story Mongo query defect at HMRC Kibana Change in success rate Kibana / splunk
  • #28: Making changes to Running machine Stories and Diagram of Cookie change Database change
  • #29: Story about no more manual scripts / steps
  • #38: Microservice architecture Amazon quote - Build It, Run It, Own it Separation of features and concerns Prefer service dependencies over library dependencies
  • #39: Principle of least surprise Service API's must always be backwardly compatible Story of when we were young, teams wanted to test against fixed versions of other services
  • #41: Promote Build Quality In Excellent chapter in ILSD on VSM’s