Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Agile Manchester: What we learned whilst handing control of deployments to developers at Auto Trader

Agile Manchester: What we learned whilst handing control of deployments to developers at Auto Trader

Slightly tweaked version of this presentation for Agile Manchester in May 2016.

Mark Crossfield

May 12, 2016
Tweet

More Decks by Mark Crossfield

Other Decks in Technology

Transcript

  1. LOTS OF PEOPLE have contributed to this over the course

    of years Although I’m telling the story…
  2. 4 MILLION PAGE VIEWS / HOUR At peak users generate

    data taken from Google Analytics
  3. Multi faceted & geographic search over ~480k vehicles Large volume

    of traffic Large number of applications behind the scenes Lack of vehicle sale visibility masks business metrics CORE CHALLENGES
  4. 2 x data centre suites each containing: F5 BIG-IP DNS

    Global Traffic Management F5 Local Traffic Management ~2,400 virtual servers using VMware ~200 HP Blades NetApp Storage INFRASTRUCTURE
  5. Java: Spring Boot / Dropwizard Solr, Oracle, Mongo, MySQL, SQL

    Server, Vertica Jetty / JBoss Apache CentOS / OEL STACK
  6. 2007: Copied .war files 2008: Standardised script built RPMs, Perl

    deployment script, hired team of release engineers, VMware 2009: Redeveloped autotrader.co.uk built own RPM, introduced Cruise / Go CD 2010: Another project builds own RPM, release engineers absorbed 2011: Further projects build own RPM 2013: New CEO DEPLOYMENT HISTORY
  7. ! Config in the hands of developers ! Deployments are

    repeatable ! Deployments are faster ! Less people tied up ! No longer constrained by release slots RECAP
  8. THE DEATH STAR How our pipelines looked before: Dec 2013

    http://markcrossfield.co.uk/go-dependency-force-layout/
  9. THE DEATH STAR How our pipelines looked during: Oct 2014

    http://markcrossfield.co.uk/go-dependency-force-layout/
  10. THE DEATH STAR How our pipelines looked by Dec 2015

    https://flic.kr/p/qngNWb http://markcrossfield.co.uk/go-dependency-force-layout/ I used to bullseye womp rats in my T-16 back home
  11. # Senior Leadership Support # Starting with frequent deployers #

    Piloting with flexible team # Automating existing processes # Building tools and build plugins # Focussed multi skilled team with CI mindset OTHER THINGS WHICH HELPED
  12. Decouple devs from infrastructure using a clean API Make deployments

    easy and visible Make deployments faster Reduce config drift Make infrastructure change visible Flow regular updates through teams’ pipelines Facilitate emergency patches Remove innovation bottlenecks GOALS
  13. Get leadership buy in Dedicate people with the right skills

    and attitude Involve your customers & shout about progress Focus on the MVP Look for shortcuts Reorganise around products Keep It Simple, Stupid CONCLUSIONS
  14. Continuous Delivery
 Reliable Software Releases through Build, Test, and Deployment

    Automation by Jez Humble and David Farley http://www.amazon.co.uk/dp/0321601912 A manifesto for applications running on Heroku, and applicable as a set of best practices for cloud native applications with some great wisdom http://12factor.net/ Berkshelf: Chef Cookbook packaging (part of Chef DK) http://berkshelf.com/ https://www.go.cd/ https://downloads.chef.io/chef-dk/ Scaling Agile @ Spotify http://bit.ly/SquadsAndTribes @mrmanc / http://bit.ly/markatagilemanc