SlideShare a Scribd company logo
1 of 15
TODAY BETTER THAN
YESTERDAY
A personal journey to implement Continuous Integration / Continuous Delivery at
autoTRADER.ca
DevOps MeetupVancouver
http://www.meetup.com/DevOps-Vancouver-BC-Canada/events/230821476/
DEVOPS AND ME
 Development Manager for SHOES.COM
 Was autoTRADER.ca Development Manager for 3 years
 Read Phoenix Project book in 2012
 Left autoTRADER.ca in November 2015
A PERSONAL STORY
 Not smooth, many bumps along the way
 Numerous setbacks
 Not a blueprint of near ideal / perfect state
 Weeks where I wonder if it was all worth it
CONTEXT - SPRING 2012
 Read Phoenix Project – recommended by my boss
 Manual deploy - one contractor knows
 Difficult employee transferred to my department
 Union environment
 9pm production deploys, many go past midnight
 Why did site crash? Oops, forgot X,Y, Z
 Timespan between deploys wildly inconsistent
BEGINWITHTHE END IN MIND
 What does management care about that continuous integration
/ continuous delivery provide?
 1 deploy every 3-6 weeks …
 Vs 1 deploy every 2 weeks
 Vs 8 deploys a day
DEVOPS MUST BE INTHE BLOOD
 A mindset, not a set of tools
 Personnel changes
 Process changes
BUMPS ALONGTHEWAY
 Lead dev quit with prejudice
 Resisting change
 Demanding that change done in big bang fashion
 Perfect surgery techniques used – patient dead
 Doing this while also attempting to adopt full agile
 My own shortcomings as manager
TOOLS AND PRACTICES
 Git
 Git-flow(ish)
 Teamcity 8 as continuous integration tool
 Octopus 1 as continuous delivery tool
 Config management
RESULT
 Consistent deploys every 2 weeks
 Deploys start at 3pm, everyone leaves almost always before
6pm
 Rollback process much easier
 Much quicker in finding out whether it’s a code change or db
change that ‘broke the system’
 CI / CD in place
IF I COULD DO IT OVER AGAIN
 More emphasis on culture, personnel
 Decoupling deployments from releases
 Feature toggle
 Dark launches
 More emphasis on automated testing, dedicated CI
environment
 Know when to push, when to take a breather (do no worse)
@SHOES.COM
 Decoupling deployments from releases
 Octopus 3 significant improve over Octopus 1
 Full git-flow branching implementation
 Git-flow is not end state, only intermediary
 Semantic versioning
 In progress
 deploy multiple components of a system in 1 click
Q & A
 Reach me
 http://ericlau.net
 SHOES.COM recruitment
 https://www.youtube.com/watch?v=UJjm0-2GqOU

More Related Content

What's hot

It's Not Continuous Delivery If You Can't Deploy Right Now
It's Not Continuous Delivery If You Can't Deploy Right NowIt's Not Continuous Delivery If You Can't Deploy Right Now
It's Not Continuous Delivery If You Can't Deploy Right NowKen Mugrage
 
The 7 Deadly Sins Of Almost Being Agile
The 7 Deadly Sins Of Almost Being AgileThe 7 Deadly Sins Of Almost Being Agile
The 7 Deadly Sins Of Almost Being Agilelazygolfer
 
Lean Kanban France2014 : Les limites c'est pas automatique
Lean Kanban France2014 : Les limites c'est pas automatiqueLean Kanban France2014 : Les limites c'est pas automatique
Lean Kanban France2014 : Les limites c'est pas automatiqueSamuel RETIERE
 
From Scrum to Scrumban
From Scrum to ScrumbanFrom Scrum to Scrumban
From Scrum to ScrumbanJohn Peltier
 
DevOps a peek into high performing organizations
DevOps a peek into high performing organizationsDevOps a peek into high performing organizations
DevOps a peek into high performing organizationsRam0603
 
Atlassian - The Latest & Greatest April 2014
Atlassian - The Latest & Greatest April 2014Atlassian - The Latest & Greatest April 2014
Atlassian - The Latest & Greatest April 2014Sven Peters
 
Failing @ Scaling: Don’t panic, and carry a towel!
Failing @ Scaling: Don’t panic, and carry a towel!Failing @ Scaling: Don’t panic, and carry a towel!
Failing @ Scaling: Don’t panic, and carry a towel!Em Campbell-Pretty
 
ScrumBan [R]Evolution - Are #NoEstimate and #NoSprints your next steps
ScrumBan [R]Evolution - Are #NoEstimate and #NoSprints your next stepsScrumBan [R]Evolution - Are #NoEstimate and #NoSprints your next steps
ScrumBan [R]Evolution - Are #NoEstimate and #NoSprints your next stepsSebastian Radics
 
Agile Fundamentals and Best Practices (with Trello)
Agile Fundamentals and Best Practices (with Trello)Agile Fundamentals and Best Practices (with Trello)
Agile Fundamentals and Best Practices (with Trello)Filippo Zanella
 
Modern approaches to product development: the challenge of distributed teams
Modern approaches to product development: the challenge of distributed teamsModern approaches to product development: the challenge of distributed teams
Modern approaches to product development: the challenge of distributed teamsCarlo Beschi
 
Feedback Loops in Practice
Feedback Loops in PracticeFeedback Loops in Practice
Feedback Loops in PracticeMarcus Denker
 
Nguyen Vu Hung: Beyond Agile - Practices and Mindset - Agile Tour Vietnam (Ha...
Nguyen Vu Hung: Beyond Agile - Practices and Mindset - Agile Tour Vietnam (Ha...Nguyen Vu Hung: Beyond Agile - Practices and Mindset - Agile Tour Vietnam (Ha...
Nguyen Vu Hung: Beyond Agile - Practices and Mindset - Agile Tour Vietnam (Ha...Vu Hung Nguyen
 
Oscon 2013 -Your OSS Project Is now served
Oscon 2013 -Your OSS Project Is now servedOscon 2013 -Your OSS Project Is now served
Oscon 2013 -Your OSS Project Is now servedUri Cohen
 
DevOps Picc12 Management Talk
DevOps Picc12 Management TalkDevOps Picc12 Management Talk
DevOps Picc12 Management TalkMichael Rembetsy
 
Does my scrum look big in this
Does my scrum look big in thisDoes my scrum look big in this
Does my scrum look big in thisIasa UK
 
7 tips for more effective morning SCRUM
7 tips for more effective morning SCRUM7 tips for more effective morning SCRUM
7 tips for more effective morning SCRUMAndrea Tino
 

What's hot (20)

It's Not Continuous Delivery If You Can't Deploy Right Now
It's Not Continuous Delivery If You Can't Deploy Right NowIt's Not Continuous Delivery If You Can't Deploy Right Now
It's Not Continuous Delivery If You Can't Deploy Right Now
 
Kanban in Action
Kanban in ActionKanban in Action
Kanban in Action
 
The 7 Deadly Sins Of Almost Being Agile
The 7 Deadly Sins Of Almost Being AgileThe 7 Deadly Sins Of Almost Being Agile
The 7 Deadly Sins Of Almost Being Agile
 
Lean Kanban France2014 : Les limites c'est pas automatique
Lean Kanban France2014 : Les limites c'est pas automatiqueLean Kanban France2014 : Les limites c'est pas automatique
Lean Kanban France2014 : Les limites c'est pas automatique
 
Beyond Agile Software
Beyond Agile SoftwareBeyond Agile Software
Beyond Agile Software
 
From Scrum to Scrumban
From Scrum to ScrumbanFrom Scrum to Scrumban
From Scrum to Scrumban
 
DevOps a peek into high performing organizations
DevOps a peek into high performing organizationsDevOps a peek into high performing organizations
DevOps a peek into high performing organizations
 
Lean vs scrum
Lean vs scrumLean vs scrum
Lean vs scrum
 
Atlassian - The Latest & Greatest April 2014
Atlassian - The Latest & Greatest April 2014Atlassian - The Latest & Greatest April 2014
Atlassian - The Latest & Greatest April 2014
 
Failing @ Scaling: Don’t panic, and carry a towel!
Failing @ Scaling: Don’t panic, and carry a towel!Failing @ Scaling: Don’t panic, and carry a towel!
Failing @ Scaling: Don’t panic, and carry a towel!
 
ScrumBan [R]Evolution - Are #NoEstimate and #NoSprints your next steps
ScrumBan [R]Evolution - Are #NoEstimate and #NoSprints your next stepsScrumBan [R]Evolution - Are #NoEstimate and #NoSprints your next steps
ScrumBan [R]Evolution - Are #NoEstimate and #NoSprints your next steps
 
Agile Fundamentals and Best Practices (with Trello)
Agile Fundamentals and Best Practices (with Trello)Agile Fundamentals and Best Practices (with Trello)
Agile Fundamentals and Best Practices (with Trello)
 
Modern approaches to product development: the challenge of distributed teams
Modern approaches to product development: the challenge of distributed teamsModern approaches to product development: the challenge of distributed teams
Modern approaches to product development: the challenge of distributed teams
 
Feedback Loops in Practice
Feedback Loops in PracticeFeedback Loops in Practice
Feedback Loops in Practice
 
Api360 Summit The Automated Monolith
Api360 Summit  The Automated MonolithApi360 Summit  The Automated Monolith
Api360 Summit The Automated Monolith
 
Nguyen Vu Hung: Beyond Agile - Practices and Mindset - Agile Tour Vietnam (Ha...
Nguyen Vu Hung: Beyond Agile - Practices and Mindset - Agile Tour Vietnam (Ha...Nguyen Vu Hung: Beyond Agile - Practices and Mindset - Agile Tour Vietnam (Ha...
Nguyen Vu Hung: Beyond Agile - Practices and Mindset - Agile Tour Vietnam (Ha...
 
Oscon 2013 -Your OSS Project Is now served
Oscon 2013 -Your OSS Project Is now servedOscon 2013 -Your OSS Project Is now served
Oscon 2013 -Your OSS Project Is now served
 
DevOps Picc12 Management Talk
DevOps Picc12 Management TalkDevOps Picc12 Management Talk
DevOps Picc12 Management Talk
 
Does my scrum look big in this
Does my scrum look big in thisDoes my scrum look big in this
Does my scrum look big in this
 
7 tips for more effective morning SCRUM
7 tips for more effective morning SCRUM7 tips for more effective morning SCRUM
7 tips for more effective morning SCRUM
 

Viewers also liked

Elementos Esenciales para efectuar la Seleccion y Comprobacion / Javier Berro...
Elementos Esenciales para efectuar la Seleccion y Comprobacion / Javier Berro...Elementos Esenciales para efectuar la Seleccion y Comprobacion / Javier Berro...
Elementos Esenciales para efectuar la Seleccion y Comprobacion / Javier Berro...EUROsociAL II
 
Telerik Test studio
Telerik Test studio Telerik Test studio
Telerik Test studio Ahamad Sk
 
Tech Talk: Evolve from Continuous Integration to Continuous Delivery
Tech Talk: Evolve from Continuous Integration to Continuous DeliveryTech Talk: Evolve from Continuous Integration to Continuous Delivery
Tech Talk: Evolve from Continuous Integration to Continuous DeliveryCA Technologies
 
Province de liège The unexpected MICE destination
Province de liège The unexpected MICE destination Province de liège The unexpected MICE destination
Province de liège The unexpected MICE destination Michot Candice
 

Viewers also liked (10)

Mesin Pembuat Sandal Hotel Bekasi
Mesin Pembuat Sandal Hotel BekasiMesin Pembuat Sandal Hotel Bekasi
Mesin Pembuat Sandal Hotel Bekasi
 
Badri cv
Badri cvBadri cv
Badri cv
 
Cara Membuat Sandal Hotel Solo
Cara Membuat Sandal Hotel SoloCara Membuat Sandal Hotel Solo
Cara Membuat Sandal Hotel Solo
 
Sara anton home interiors
Sara anton home interiorsSara anton home interiors
Sara anton home interiors
 
Power clase 2
Power clase 2Power clase 2
Power clase 2
 
Elementos Esenciales para efectuar la Seleccion y Comprobacion / Javier Berro...
Elementos Esenciales para efectuar la Seleccion y Comprobacion / Javier Berro...Elementos Esenciales para efectuar la Seleccion y Comprobacion / Javier Berro...
Elementos Esenciales para efectuar la Seleccion y Comprobacion / Javier Berro...
 
Telerik Test studio
Telerik Test studio Telerik Test studio
Telerik Test studio
 
Tech Talk: Evolve from Continuous Integration to Continuous Delivery
Tech Talk: Evolve from Continuous Integration to Continuous DeliveryTech Talk: Evolve from Continuous Integration to Continuous Delivery
Tech Talk: Evolve from Continuous Integration to Continuous Delivery
 
Lux
LuxLux
Lux
 
Province de liège The unexpected MICE destination
Province de liège The unexpected MICE destination Province de liège The unexpected MICE destination
Province de liège The unexpected MICE destination
 

Similar to DevOps - Today Better than Yesterday

DevOps Overview
DevOps OverviewDevOps Overview
DevOps OverviewSagar Mody
 
DevOps - Understanding Core Concepts
DevOps - Understanding Core ConceptsDevOps - Understanding Core Concepts
DevOps - Understanding Core ConceptsNitin Bhide
 
Michigan IT Symposium 2017 - CI/CD Workflow Tutorial
Michigan IT Symposium 2017 - CI/CD Workflow TutorialMichigan IT Symposium 2017 - CI/CD Workflow Tutorial
Michigan IT Symposium 2017 - CI/CD Workflow TutorialJeffrey Sica
 
DevOps - Understanding Core Concepts (Old)
DevOps - Understanding Core Concepts (Old)DevOps - Understanding Core Concepts (Old)
DevOps - Understanding Core Concepts (Old)Nitin Bhide
 
DevOps principles and practices - accelerate flow
DevOps principles and practices - accelerate flowDevOps principles and practices - accelerate flow
DevOps principles and practices - accelerate flowMurughan Palaniachari
 
DevOps - the Future of Agile - Why/What/How - from Enterprise DevOps Israel 2015
DevOps - the Future of Agile - Why/What/How - from Enterprise DevOps Israel 2015DevOps - the Future of Agile - Why/What/How - from Enterprise DevOps Israel 2015
DevOps - the Future of Agile - Why/What/How - from Enterprise DevOps Israel 2015Yuval Yeret
 
Cleaning Up the Mess: Modernizing Your Dev Team’s Outdated Workflow
Cleaning Up the Mess: Modernizing Your Dev Team’s Outdated WorkflowCleaning Up the Mess: Modernizing Your Dev Team’s Outdated Workflow
Cleaning Up the Mess: Modernizing Your Dev Team’s Outdated WorkflowBohyun Kim
 
Continuous Delivery with TFS msbuild msdeploy
Continuous Delivery with TFS msbuild msdeployContinuous Delivery with TFS msbuild msdeploy
Continuous Delivery with TFS msbuild msdeployPeter Gfader
 
Intro To Continuous Delivery
Intro To Continuous DeliveryIntro To Continuous Delivery
Intro To Continuous DeliveryBhanu Musunooru
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous IntegrationPreetam Palwe
 
Continuous, continuous, continuous
Continuous, continuous, continuousContinuous, continuous, continuous
Continuous, continuous, continuousMichele Orselli
 
Continuous Everything
Continuous EverythingContinuous Everything
Continuous EverythingAndrea Tino
 
ReleaseIQ's Next Gen Enterprise Devops Platform Webinar Slides
ReleaseIQ's  Next Gen Enterprise Devops Platform Webinar SlidesReleaseIQ's  Next Gen Enterprise Devops Platform Webinar Slides
ReleaseIQ's Next Gen Enterprise Devops Platform Webinar SlidesWayne Greene
 
A Proven Migration Method for Cognos Planning
A Proven Migration Method for Cognos PlanningA Proven Migration Method for Cognos Planning
A Proven Migration Method for Cognos PlanningAnthony D'Ugo
 
Continuous Delivery - the missing parts - Paul Stack
Continuous Delivery - the missing parts - Paul StackContinuous Delivery - the missing parts - Paul Stack
Continuous Delivery - the missing parts - Paul StackJAXLondon_Conference
 
Dev Ops for systems of record - Talk at Agile Australia 2015
Dev Ops for systems of record - Talk at Agile Australia 2015Dev Ops for systems of record - Talk at Agile Australia 2015
Dev Ops for systems of record - Talk at Agile Australia 2015Mirco Hering
 
ОЛЕКСАНДР ВІЛЬЧИНСЬКИЙ «DevOps culture» Lviv DevOps Conference 2019
ОЛЕКСАНДР ВІЛЬЧИНСЬКИЙ «DevOps culture» Lviv DevOps Conference 2019ОЛЕКСАНДР ВІЛЬЧИНСЬКИЙ «DevOps culture» Lviv DevOps Conference 2019
ОЛЕКСАНДР ВІЛЬЧИНСЬКИЙ «DevOps culture» Lviv DevOps Conference 2019UA DevOps Conference
 
One trunk one pipeline one truth
One trunk one pipeline one truthOne trunk one pipeline one truth
One trunk one pipeline one truthPaul Boocock
 

Similar to DevOps - Today Better than Yesterday (20)

DevOps Overview
DevOps OverviewDevOps Overview
DevOps Overview
 
DevOps - Understanding Core Concepts
DevOps - Understanding Core ConceptsDevOps - Understanding Core Concepts
DevOps - Understanding Core Concepts
 
Michigan IT Symposium 2017 - CI/CD Workflow Tutorial
Michigan IT Symposium 2017 - CI/CD Workflow TutorialMichigan IT Symposium 2017 - CI/CD Workflow Tutorial
Michigan IT Symposium 2017 - CI/CD Workflow Tutorial
 
DevOps - Understanding Core Concepts (Old)
DevOps - Understanding Core Concepts (Old)DevOps - Understanding Core Concepts (Old)
DevOps - Understanding Core Concepts (Old)
 
DevOps principles and practices - accelerate flow
DevOps principles and practices - accelerate flowDevOps principles and practices - accelerate flow
DevOps principles and practices - accelerate flow
 
DevOps - the Future of Agile - Why/What/How - from Enterprise DevOps Israel 2015
DevOps - the Future of Agile - Why/What/How - from Enterprise DevOps Israel 2015DevOps - the Future of Agile - Why/What/How - from Enterprise DevOps Israel 2015
DevOps - the Future of Agile - Why/What/How - from Enterprise DevOps Israel 2015
 
Cleaning Up the Mess: Modernizing Your Dev Team’s Outdated Workflow
Cleaning Up the Mess: Modernizing Your Dev Team’s Outdated WorkflowCleaning Up the Mess: Modernizing Your Dev Team’s Outdated Workflow
Cleaning Up the Mess: Modernizing Your Dev Team’s Outdated Workflow
 
Continuous Delivery with TFS msbuild msdeploy
Continuous Delivery with TFS msbuild msdeployContinuous Delivery with TFS msbuild msdeploy
Continuous Delivery with TFS msbuild msdeploy
 
Intro To Continuous Delivery
Intro To Continuous DeliveryIntro To Continuous Delivery
Intro To Continuous Delivery
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
 
Continuous, continuous, continuous
Continuous, continuous, continuousContinuous, continuous, continuous
Continuous, continuous, continuous
 
Continuous Everything
Continuous EverythingContinuous Everything
Continuous Everything
 
Dev ops concept
Dev ops conceptDev ops concept
Dev ops concept
 
ReleaseIQ's Next Gen Enterprise Devops Platform Webinar Slides
ReleaseIQ's  Next Gen Enterprise Devops Platform Webinar SlidesReleaseIQ's  Next Gen Enterprise Devops Platform Webinar Slides
ReleaseIQ's Next Gen Enterprise Devops Platform Webinar Slides
 
A Proven Migration Method for Cognos Planning
A Proven Migration Method for Cognos PlanningA Proven Migration Method for Cognos Planning
A Proven Migration Method for Cognos Planning
 
Continuous Delivery - the missing parts - Paul Stack
Continuous Delivery - the missing parts - Paul StackContinuous Delivery - the missing parts - Paul Stack
Continuous Delivery - the missing parts - Paul Stack
 
Dev Ops for systems of record - Talk at Agile Australia 2015
Dev Ops for systems of record - Talk at Agile Australia 2015Dev Ops for systems of record - Talk at Agile Australia 2015
Dev Ops for systems of record - Talk at Agile Australia 2015
 
ОЛЕКСАНДР ВІЛЬЧИНСЬКИЙ «DevOps culture» Lviv DevOps Conference 2019
ОЛЕКСАНДР ВІЛЬЧИНСЬКИЙ «DevOps culture» Lviv DevOps Conference 2019ОЛЕКСАНДР ВІЛЬЧИНСЬКИЙ «DevOps culture» Lviv DevOps Conference 2019
ОЛЕКСАНДР ВІЛЬЧИНСЬКИЙ «DevOps culture» Lviv DevOps Conference 2019
 
One trunk one pipeline one truth
One trunk one pipeline one truthOne trunk one pipeline one truth
One trunk one pipeline one truth
 
DevOps for Managers
DevOps for ManagersDevOps for Managers
DevOps for Managers
 

DevOps - Today Better than Yesterday

  • 1. TODAY BETTER THAN YESTERDAY A personal journey to implement Continuous Integration / Continuous Delivery at autoTRADER.ca DevOps MeetupVancouver http://www.meetup.com/DevOps-Vancouver-BC-Canada/events/230821476/
  • 2. DEVOPS AND ME  Development Manager for SHOES.COM  Was autoTRADER.ca Development Manager for 3 years  Read Phoenix Project book in 2012  Left autoTRADER.ca in November 2015
  • 3. A PERSONAL STORY  Not smooth, many bumps along the way  Numerous setbacks  Not a blueprint of near ideal / perfect state  Weeks where I wonder if it was all worth it
  • 4.
  • 5.
  • 6. CONTEXT - SPRING 2012  Read Phoenix Project – recommended by my boss  Manual deploy - one contractor knows  Difficult employee transferred to my department  Union environment  9pm production deploys, many go past midnight  Why did site crash? Oops, forgot X,Y, Z  Timespan between deploys wildly inconsistent
  • 7. BEGINWITHTHE END IN MIND  What does management care about that continuous integration / continuous delivery provide?  1 deploy every 3-6 weeks …  Vs 1 deploy every 2 weeks  Vs 8 deploys a day
  • 8. DEVOPS MUST BE INTHE BLOOD  A mindset, not a set of tools  Personnel changes  Process changes
  • 9. BUMPS ALONGTHEWAY  Lead dev quit with prejudice  Resisting change  Demanding that change done in big bang fashion  Perfect surgery techniques used – patient dead  Doing this while also attempting to adopt full agile  My own shortcomings as manager
  • 10. TOOLS AND PRACTICES  Git  Git-flow(ish)  Teamcity 8 as continuous integration tool  Octopus 1 as continuous delivery tool  Config management
  • 11. RESULT  Consistent deploys every 2 weeks  Deploys start at 3pm, everyone leaves almost always before 6pm  Rollback process much easier  Much quicker in finding out whether it’s a code change or db change that ‘broke the system’  CI / CD in place
  • 12. IF I COULD DO IT OVER AGAIN  More emphasis on culture, personnel  Decoupling deployments from releases  Feature toggle  Dark launches  More emphasis on automated testing, dedicated CI environment  Know when to push, when to take a breather (do no worse)
  • 13. @SHOES.COM  Decoupling deployments from releases  Octopus 3 significant improve over Octopus 1  Full git-flow branching implementation  Git-flow is not end state, only intermediary  Semantic versioning  In progress  deploy multiple components of a system in 1 click
  • 14.
  • 15. Q & A  Reach me  http://ericlau.net  SHOES.COM recruitment  https://www.youtube.com/watch?v=UJjm0-2GqOU