SlideShare a Scribd company logo
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 :(
Pitchero - Increasing agility through DevOps - Leeds DevOps November 2016
Pitchero - Increasing agility through DevOps - Leeds DevOps November 2016
Pitchero - Increasing agility through DevOps - Leeds DevOps November 2016
Pitchero - Increasing agility through DevOps - Leeds DevOps November 2016
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
Pitchero - Increasing agility through DevOps - Leeds DevOps November 2016
“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

PDF
Startup DevOps - Jon Milsom Pitchero - Leeds DevOps - August 2014
PPTX
Optimizing performance
PPTX
Profiling and Tuning a Web Application - The Dirty Details
PPTX
Stress Test Drupal on Amazon EC2 vs. RackSpace cloud
PPT
Make Drupal Run Fast - increase page load speed
PDF
Imagine 2014: The Devil is in the Details How to Optimize Magento Hosting to ...
PDF
DrupalCamp LA 2014 - A Perfect Launch, Every Time
PPTX
Top 10 Application Problems
Startup DevOps - Jon Milsom Pitchero - Leeds DevOps - August 2014
Optimizing performance
Profiling and Tuning a Web Application - The Dirty Details
Stress Test Drupal on Amazon EC2 vs. RackSpace cloud
Make Drupal Run Fast - increase page load speed
Imagine 2014: The Devil is in the Details How to Optimize Magento Hosting to ...
DrupalCamp LA 2014 - A Perfect Launch, Every Time
Top 10 Application Problems

What's hot (20)

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

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

PDF
Using IBM Rational Change as an Enterprise-Wide Error Management Solution – ...
PDF
Continuous Delivery: The Dirty Details
PDF
DOES14: Scott Prugh, CSG - DevOps and Lean in Legacy Environments
PDF
[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...
PDF
DevOps Fest 2020. immutable infrastructure as code. True story.
PDF
DevOps/Flow workshop for agile india 2015
PDF
Availability in a cloud native world v1.6 (Feb 2019)
PDF
Best Practices and Lessons Learned on Our IBM Rational Insight Deployment
PPTX
North east user group tour
PDF
Keeping Your DevOps Transformation From Crushing Your Ops Capacity
PPTX
Webinar - Devops platform for the evolving enterprise
PPTX
DevOps @ Scania - Trust and some code - NFI Testforum 2015
PDF
DevOps and AWS
PPTX
Challenges and best practices of database continuous delivery
PDF
Using SaltStack to DevOps the enterprise
PPT
Continuous Deployment
PDF
Winning People to DevOps
PDF
DevOps in Practice: When does "Practice" Become "Doing"?
PDF
SAP en la nube a 1 solo click.
PPTX
Agile & DevOps - It's all about project success
Using IBM Rational Change as an Enterprise-Wide Error Management Solution – ...
Continuous Delivery: The Dirty Details
DOES14: Scott Prugh, CSG - DevOps and Lean in Legacy Environments
[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...
DevOps Fest 2020. immutable infrastructure as code. True story.
DevOps/Flow workshop for agile india 2015
Availability in a cloud native world v1.6 (Feb 2019)
Best Practices and Lessons Learned on Our IBM Rational Insight Deployment
North east user group tour
Keeping Your DevOps Transformation From Crushing Your Ops Capacity
Webinar - Devops platform for the evolving enterprise
DevOps @ Scania - Trust and some code - NFI Testforum 2015
DevOps and AWS
Challenges and best practices of database continuous delivery
Using SaltStack to DevOps the enterprise
Continuous Deployment
Winning People to DevOps
DevOps in Practice: When does "Practice" Become "Doing"?
SAP en la nube a 1 solo click.
Agile & DevOps - It's all about project success
Ad

Recently uploaded (20)

PDF
Approach and Philosophy of On baking technology
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
cuic standard and advanced reporting.pdf
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PPTX
Big Data Technologies - Introduction.pptx
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Machine learning based COVID-19 study performance prediction
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPTX
sap open course for s4hana steps from ECC to s4
Approach and Philosophy of On baking technology
Network Security Unit 5.pdf for BCA BBA.
MIND Revenue Release Quarter 2 2025 Press Release
Unlocking AI with Model Context Protocol (MCP)
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Reach Out and Touch Someone: Haptics and Empathic Computing
The Rise and Fall of 3GPP – Time for a Sabbatical?
cuic standard and advanced reporting.pdf
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Mobile App Security Testing_ A Comprehensive Guide.pdf
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Big Data Technologies - Introduction.pptx
Digital-Transformation-Roadmap-for-Companies.pptx
Machine learning based COVID-19 study performance prediction
The AUB Centre for AI in Media Proposal.docx
Chapter 3 Spatial Domain Image Processing.pdf
sap open course for s4hana steps from ECC to s4

Pitchero - Increasing agility through DevOps - Leeds DevOps November 2016