SlideShare a Scribd company logo
1 of 63
Download to read offline
Increasing agility through DevOps
Jon Milsom - Co-founder & CTO
@jonmilsom
Leeds DevOps
15th November 2016
An online platform for amateur and semi-pro sports teams
Last time_
August 2014_
“agility”
“agility”
“ability of a system to rapidly respond to change by adapting
its initial stable configuration”
Wikipedia - Business agility
https://en.wikipedia.org/wiki/Business_agility
Examples
Things you can do if you have good agility
● Release software frequently and with confidence
● Develop new features without being bogged down by technical debt
● Onboard team members and bring them up to speed quickly
● Move systems between data centres / clouds
Configuration management
Configuration management
Containerised development environment
Aggregated logging (via Ansible)
Configuration management
Before Time After Time
Get a new server
into prod
Runbook hours Ansible minutes
Setup local dev
environment
- days Vagrant & Ansible minutes
Create test server
for new software
version
Runbook
Individual log files
hours Ansible
Aggregated logging
minutes
Configuration management - Example
PHP Versions 5.3. to 7.0
Configuration management - Example
Communication
Communication
Communication
“Business”
Marketing
Sales
Support
“Technology”
Development
Operations
Security
Communication
“Business”
I need it yesterday, for free
What are you working on?
We can’t do our job unless you deliver
this
“Technology”
Not possible
Last weeks last emergency project
:(
Jared Dunn, Silicon Valley
http://www.theyoungfolks.com/wp-content/uploads/2014/05/episode-05-05-1024.jpg
Communication
How to write a good bug report
Why security is important
Communication
Self service for other departments
Requires trust & process
Communication
Summary:
● Be transparent - increase visibility with other departments
● Communicate openly - good or bad
● Trust - remove unnecessary bottlenecks (self service where possible)
Communication
Summary:
● Be transparent - increase visibility with other departments
● Communicate openly - good or bad
● Trust - remove unnecessary bottlenecks (self service where possible)
“growing up”
Managing technical debt & fixing bugs
Managing technical debt & fixing bugs
Measure / assess
Managing technical debt & fixing bugs
Prioritise
Managing technical debt & fixing bugs
Commit
Managing technical debt & fixing bugs
Going forward, every sprint:
a. Fix bugs & regressions quickly
b. Refactor (retrospectively) poor decisions
c. Increase test coverage
Embrace open source & PaaS
Embrace open source & PaaS
Embrace open source & PaaS
RDS
The Database
The Database - why is this hard?
● Live transactional data
○ Always changing (writes), must be atomic & consistent i.e. NOT immutable!
● Size of data set
○ Hard (slow) to move around
● Changes to schema / indexes performed manually etc
○ Seen as high risk, hard to maintain across environments
The Database - problems we had/have
● Made changes in production, not replicated to other environments
○ Application now out of sync with database schema or indexes
● Accidently deleted data from production which was required for tests
○ Now tests fail & difficult to re-assemble required state of dataset
● Deployed schema changes with application changes & could not revert
○ Data set polluted based on application code, hard to reverse engineer
This might lead you to fear change...
“We don’t like change”
You can increase agility / deployability
The Database
https://skeltonthatcher.com/blog/database-deployability-1-minimize-changes-in-production/
Database Deployability
The Database
https://skeltonthatcher.com/blog/database-deployability-1-minimize-changes-in-production/
Problem: Changes originate in production
The Database
https://skeltonthatcher.com/blog/database-deployability-1-minimize-changes-in-production/
Solution: Isolate flow of production data
The Database - so far
1. Codified and version controlled changes to schema / indexes
2. Decouple tests from database contents (work in progress)
3. Deploy (backwards compatible) schema changes before code
Project:
“Blue Sheep”
Blue Sheep
Blue Sheep
English (UK) =>
English (USA)
English (CA)
French (CA)
French (FR)
X (Y)
Blue Sheep
High risk
Blue Sheep
Complex / Big
Blue Sheep
How?
Blue Sheep
1. “Responsive” feature toggle
Release the code without changing the UX
Users saw minimal change - we reduced risk
Blue Sheep
2. Re-built template by template
Continually delivered small chunks of work each sprint
Caught regressions & errors quickly
Blue Sheep - Tech results
● Refactored majority of public facing pages to use Laravel
● Implemented platform wide translations engine
● Converted frontend to be responsive
● Refactored CSS to use ITCSS / BEM principals
Blue Sheep - Business results
● Pages per session up 51%
● Session duration up 97%
● Bounce rate down 37%
● Marketing team now able to send out location specific campaigns
We were on TV :)
We were on TV :(
Ego vs team
Your ego has its place
Often ego win = team fail
We want the team to win...
Personal examples
Me Team
Aim to work with (or hire) people
who are better than you / have
other skills
No longer “the best” Skillset increased & augmented
Everyone learns
Had a pull request rejected Feel like a n00b! Standards have increased
Trust people to make big
decisions
Scary to delegate Shared domain knowledge
Trusted & empowered
“Leave your ego at the door”
#egoless technology teams
https://www.allaboutjazz.com/an-evening-with-a-legend-quincy-jones-quincy-jones-by-solomon-leflore.php
The Future
Codify entire infrastructure (currently just individual servers)
Continue to invest in reduction of tech debt
Remove noise from error logs
Consolidate monitoring & analytics
Increase quality and quantity of automated testing
Parallelise CI
@PitcheroTech / @jonmilsom
Questions?
We are hiring! pitchero.com/careers

More Related Content

What's hot

20120329 installing wordpress_3_3_1_locally
20120329 installing wordpress_3_3_1_locally20120329 installing wordpress_3_3_1_locally
20120329 installing wordpress_3_3_1_locally
DERlab
 
ExpressionEngine - Simple Steps to Performance and Security (EECI 2014)
ExpressionEngine - Simple Steps to Performance and Security (EECI 2014)ExpressionEngine - Simple Steps to Performance and Security (EECI 2014)
ExpressionEngine - Simple Steps to Performance and Security (EECI 2014)
Nexcess.net LLC
 

What's hot (20)

Improving Drupal Performances
Improving Drupal PerformancesImproving Drupal Performances
Improving Drupal Performances
 
Hhvm and wordpress
Hhvm and wordpressHhvm and wordpress
Hhvm and wordpress
 
High Performance WordPress II
High Performance WordPress IIHigh Performance WordPress II
High Performance WordPress II
 
Scalability vs. Performance
Scalability vs. PerformanceScalability vs. Performance
Scalability vs. Performance
 
Building Creative Product Extensions with Experience Manager
Building Creative Product Extensions with Experience ManagerBuilding Creative Product Extensions with Experience Manager
Building Creative Product Extensions with Experience Manager
 
20120329 installing wordpress_3_3_1_locally
20120329 installing wordpress_3_3_1_locally20120329 installing wordpress_3_3_1_locally
20120329 installing wordpress_3_3_1_locally
 
High Availability Perl DBI + MySQL
High Availability Perl DBI + MySQLHigh Availability Perl DBI + MySQL
High Availability Perl DBI + MySQL
 
Breaking the Speed Limit: Faster Websites Win
Breaking the Speed Limit: Faster Websites WinBreaking the Speed Limit: Faster Websites Win
Breaking the Speed Limit: Faster Websites Win
 
Scaling wix with microservices and multi cloud - 2015
Scaling wix with microservices and multi cloud - 2015Scaling wix with microservices and multi cloud - 2015
Scaling wix with microservices and multi cloud - 2015
 
Updating WordPress Themes, Plugins, and Core Safely
Updating WordPress Themes, Plugins, and Core SafelyUpdating WordPress Themes, Plugins, and Core Safely
Updating WordPress Themes, Plugins, and Core Safely
 
An Ops Primer to Productionalizing Datameer
An Ops Primer to Productionalizing DatameerAn Ops Primer to Productionalizing Datameer
An Ops Primer to Productionalizing Datameer
 
ExpressionEngine - Simple Steps to Performance and Security (EECI 2014)
ExpressionEngine - Simple Steps to Performance and Security (EECI 2014)ExpressionEngine - Simple Steps to Performance and Security (EECI 2014)
ExpressionEngine - Simple Steps to Performance and Security (EECI 2014)
 
Make Life Suck Less (Building Scalable Systems)
Make Life Suck Less (Building Scalable Systems)Make Life Suck Less (Building Scalable Systems)
Make Life Suck Less (Building Scalable Systems)
 
Optimus XPages: An Explosion of Techniques and Best Practices
Optimus XPages: An Explosion of Techniques and Best PracticesOptimus XPages: An Explosion of Techniques and Best Practices
Optimus XPages: An Explosion of Techniques and Best Practices
 
A simple workflow system using state machines
A simple workflow system using state machinesA simple workflow system using state machines
A simple workflow system using state machines
 
Ask the XPages Experts
Ask the XPages ExpertsAsk the XPages Experts
Ask the XPages Experts
 
What They Didn't Tell You in CSM Clas
What They Didn't Tell You in CSM ClasWhat They Didn't Tell You in CSM Clas
What They Didn't Tell You in CSM Clas
 
Adm07 The Health Check Extravaganza for IBM Social and Collaboration Environm...
Adm07 The Health Check Extravaganza for IBM Social and Collaboration Environm...Adm07 The Health Check Extravaganza for IBM Social and Collaboration Environm...
Adm07 The Health Check Extravaganza for IBM Social and Collaboration Environm...
 
Kanban på sats 110916
Kanban på sats 110916Kanban på sats 110916
Kanban på sats 110916
 
Optimus XPages Part 2: The Deep Dive
Optimus XPages Part 2: The Deep DiveOptimus XPages Part 2: The Deep Dive
Optimus XPages Part 2: The Deep Dive
 

Similar to Pitchero - Increasing agility through DevOps - Leeds DevOps November 2016

DevOps/Flow workshop for agile india 2015
DevOps/Flow workshop for agile india 2015DevOps/Flow workshop for agile india 2015
DevOps/Flow workshop for agile india 2015
Yuval Yeret
 
Best Practices and Lessons Learned on Our IBM Rational Insight Deployment
Best Practices and Lessons Learned on Our IBM Rational Insight DeploymentBest Practices and Lessons Learned on Our IBM Rational Insight Deployment
Best Practices and Lessons Learned on Our IBM Rational Insight Deployment
Marc Nehme
 
Pay pal paypal continuous performance as a self-service with fully-automated...
Pay pal  paypal continuous performance as a self-service with fully-automated...Pay pal  paypal continuous performance as a self-service with fully-automated...
Pay pal paypal continuous performance as a self-service with fully-automated...
Dynatrace
 

Similar to Pitchero - Increasing agility through DevOps - Leeds DevOps November 2016 (20)

Using IBM Rational Change as an Enterprise-Wide Error Management Solution – ...
 Using IBM Rational Change as an Enterprise-Wide Error Management Solution – ... Using IBM Rational Change as an Enterprise-Wide Error Management Solution – ...
Using IBM Rational Change as an Enterprise-Wide Error Management Solution – ...
 
Continuous Delivery: The Dirty Details
Continuous Delivery: The Dirty DetailsContinuous Delivery: The Dirty Details
Continuous Delivery: The Dirty Details
 
DOES14: Scott Prugh, CSG - DevOps and Lean in Legacy Environments
DOES14: Scott Prugh, CSG - DevOps and Lean in Legacy EnvironmentsDOES14: Scott Prugh, CSG - DevOps and Lean in Legacy Environments
DOES14: Scott Prugh, CSG - DevOps and Lean in Legacy Environments
 
[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...
[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...
[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...
 
DevOps Fest 2020. immutable infrastructure as code. True story.
DevOps Fest 2020. immutable infrastructure as code. True story.DevOps Fest 2020. immutable infrastructure as code. True story.
DevOps Fest 2020. immutable infrastructure as code. True story.
 
DevOps/Flow workshop for agile india 2015
DevOps/Flow workshop for agile india 2015DevOps/Flow workshop for agile india 2015
DevOps/Flow workshop for agile india 2015
 
Availability in a cloud native world v1.6 (Feb 2019)
Availability in a cloud native world v1.6 (Feb 2019)Availability in a cloud native world v1.6 (Feb 2019)
Availability in a cloud native world v1.6 (Feb 2019)
 
Best Practices and Lessons Learned on Our IBM Rational Insight Deployment
Best Practices and Lessons Learned on Our IBM Rational Insight DeploymentBest Practices and Lessons Learned on Our IBM Rational Insight Deployment
Best Practices and Lessons Learned on Our IBM Rational Insight Deployment
 
North east user group tour
North east user group tourNorth east user group tour
North east user group tour
 
Keeping Your DevOps Transformation From Crushing Your Ops Capacity
Keeping Your DevOps Transformation From Crushing Your Ops Capacity Keeping Your DevOps Transformation From Crushing Your Ops Capacity
Keeping Your DevOps Transformation From Crushing Your Ops Capacity
 
Webinar - Devops platform for the evolving enterprise
Webinar - Devops platform for the evolving enterpriseWebinar - Devops platform for the evolving enterprise
Webinar - Devops platform for the evolving enterprise
 
DevOps @ Scania - Trust and some code - NFI Testforum 2015
DevOps @ Scania - Trust and some code - NFI Testforum 2015DevOps @ Scania - Trust and some code - NFI Testforum 2015
DevOps @ Scania - Trust and some code - NFI Testforum 2015
 
DevOps and AWS
DevOps and AWSDevOps and AWS
DevOps and AWS
 
Pay pal paypal continuous performance as a self-service with fully-automated...
Pay pal  paypal continuous performance as a self-service with fully-automated...Pay pal  paypal continuous performance as a self-service with fully-automated...
Pay pal paypal continuous performance as a self-service with fully-automated...
 
Challenges and best practices of database continuous delivery
Challenges and best practices of database continuous deliveryChallenges and best practices of database continuous delivery
Challenges and best practices of database continuous delivery
 
Using SaltStack to DevOps the enterprise
Using SaltStack to DevOps the enterpriseUsing SaltStack to DevOps the enterprise
Using SaltStack to DevOps the enterprise
 
Continuous Deployment
Continuous DeploymentContinuous Deployment
Continuous Deployment
 
Winning People to DevOps
Winning People to DevOpsWinning People to DevOps
Winning People to DevOps
 
DevOps in Practice: When does "Practice" Become "Doing"?
DevOps in Practice: When does "Practice" Become "Doing"?DevOps in Practice: When does "Practice" Become "Doing"?
DevOps in Practice: When does "Practice" Become "Doing"?
 
SAP en la nube a 1 solo click.
SAP en la nube a 1 solo click.SAP en la nube a 1 solo click.
SAP en la nube a 1 solo click.
 

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Recently uploaded (20)

FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 

Pitchero - Increasing agility through DevOps - Leeds DevOps November 2016