Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
From 10 to 500 releases a year,
a Continuous Delivery Journey
Richmond, VA - 02/17/2016
&
* The ferrets
#ContinuousDeliveryRVA
Raphael Brugier @rbrugier
#ContinuousDeliveryRVA
● Insurance comparison website
● Launched 2012
● 2.5M quotes/year
#ContinuousDeliveryRVA
IT team
● 4 feature teams
○ 22 developers
○ 7 business analysts / product owners
● 2 ops
● 1 archit...
#ContinuousDeliveryRVA
Architecture
● Monolithic Architecture
● 1 codebase
● Java (tomcat) & GWT(client)
● 400k LOC
● 40k ...
The journey
#ContinuousDeliveryRVA
2012
● Scrum
● 3 weeks / sprint
● 15-minute build
● 1h selenium tests
#ContinuousDeliveryRVA
2012 - 12 releases
plan / estimate / code / test / fix
#ContinuousDeliveryRVA
Since 2014
● 3-minute build
● 15-minute seleniums
● Deliver when ready, D+1
● One delivery per day
The basics
#ContinuousDeliveryRVA
Agile manifesto #1
“Our highest priority is to satisfy the customer
through early and continuous de...
#ContinuousDeliveryRVA
more at: http://paulhammant.com/2013/03/13/facebook-tbd-take-2/
#ContinuousDeliveryRVA
● build fast
● reliable build
● automated & simple deployment
● production monitoring and alerts
● ...
Step by step
#ContinuousDeliveryRVA
Start by the end
5. Ops
4. Deployment
3. Validation
2. Development workflow
1. Implementation
#ContinuousDeliveryRVA
5. Ops
Functional monitoring
#ContinuousDeliveryRVA
5. Ops
Key metrics
#ContinuousDeliveryRVA
4. Deployment
● Jenkins + Scripts
● 1 developer every day
○ From A to Z
○ Anyone with a ready featu...
#ContinuousDeliveryRVA
4. Deployment
#ContinuousDeliveryRVA
3. Validation
● QA each feature separately
○ Code reviews
○ Demo
○ “Ready for production” status in...
#ContinuousDeliveryRVA
3. Visual validation - ZENO Pixel
github.com/lesfurets/zeno-pixel
#ContinuousDeliveryRVA
2. Development workflow
● Git Flow
nvie.com/posts/a-successful-git-branching-model
#ContinuousDeliveryRVA
Let’s do both!
#ContinuousDeliveryRVA
Git octopus
github.com/lesfurets/git-octopus
#ContinuousDeliveryRVA
Git octopus
github.com/lesfurets/git-octopus
#ContinuousDeliveryRVA
Git octopus
github.com/lesfurets/git-octopus
#ContinuousDeliveryRVA
Git octopus
github.com/lesfurets/git-octopus
#ContinuousDeliveryRVA
Git octopus in action!
github.com/lesfurets/git-octopus
#ContinuousDeliveryRVA
1. Implementation
● Few feature toggles
● Hardcode anything! (behavior config)
● Requires a good co...
What changed?
#ContinuousDeliveryRVA
For the developers
● More responsibilities
● Many teams, same codebase
● Better codebase
#ContinuousDeliveryRVA
For the business
● Manage projects, not teams
● 10 - 15 days
● Faster time to market
Q&A
github.com/lesfurets
@IpponUSA@beastiefurets
github.com/ippontech
image references
big data cover: https://www.manning.com/books/big-data
spark and cassandra logos: apache foundation
java ...
References:
http://fr.slideshare.net/beastiefurets/devoxx-
france-2015-git-octopus
Upcoming SlideShare
Loading in …5
×

Continuous delivery journey at LesFurets.com

2,790 views

Published on

This is the story of the journey followed by LesFurets.com, the leading French insurance aggregator, to transition from one release per month to a release per day.

In this talk, you will learn how we first started by improving the monitoring tools and tests suites, automated everything and built tools to remove QA testing.

Finally, we will see why having a continuous delivery process deeply impacted the organization and how we pushed code into production.

Published in: Technology

Continuous delivery journey at LesFurets.com

  1. 1. From 10 to 500 releases a year, a Continuous Delivery Journey Richmond, VA - 02/17/2016 & * The ferrets
  2. 2. #ContinuousDeliveryRVA Raphael Brugier @rbrugier
  3. 3. #ContinuousDeliveryRVA ● Insurance comparison website ● Launched 2012 ● 2.5M quotes/year
  4. 4. #ContinuousDeliveryRVA IT team ● 4 feature teams ○ 22 developers ○ 7 business analysts / product owners ● 2 ops ● 1 architect
  5. 5. #ContinuousDeliveryRVA Architecture ● Monolithic Architecture ● 1 codebase ● Java (tomcat) & GWT(client) ● 400k LOC ● 40k unit tests
  6. 6. The journey
  7. 7. #ContinuousDeliveryRVA 2012 ● Scrum ● 3 weeks / sprint ● 15-minute build ● 1h selenium tests
  8. 8. #ContinuousDeliveryRVA 2012 - 12 releases plan / estimate / code / test / fix
  9. 9. #ContinuousDeliveryRVA Since 2014 ● 3-minute build ● 15-minute seleniums ● Deliver when ready, D+1 ● One delivery per day
  10. 10. The basics
  11. 11. #ContinuousDeliveryRVA Agile manifesto #1 “Our highest priority is to satisfy the customer through early and continuous delivery of valuable software” www.agilemanifesto.org/principles.html
  12. 12. #ContinuousDeliveryRVA more at: http://paulhammant.com/2013/03/13/facebook-tbd-take-2/
  13. 13. #ContinuousDeliveryRVA ● build fast ● reliable build ● automated & simple deployment ● production monitoring and alerts ● root cause analysis
  14. 14. Step by step
  15. 15. #ContinuousDeliveryRVA Start by the end 5. Ops 4. Deployment 3. Validation 2. Development workflow 1. Implementation
  16. 16. #ContinuousDeliveryRVA 5. Ops Functional monitoring
  17. 17. #ContinuousDeliveryRVA 5. Ops Key metrics
  18. 18. #ContinuousDeliveryRVA 4. Deployment ● Jenkins + Scripts ● 1 developer every day ○ From A to Z ○ Anyone with a ready feature
  19. 19. #ContinuousDeliveryRVA 4. Deployment
  20. 20. #ContinuousDeliveryRVA 3. Validation ● QA each feature separately ○ Code reviews ○ Demo ○ “Ready for production” status in Jira ● Seleniums for non regression ○ Selenium grid in a “big” server ● Visual regression tool
  21. 21. #ContinuousDeliveryRVA 3. Visual validation - ZENO Pixel github.com/lesfurets/zeno-pixel
  22. 22. #ContinuousDeliveryRVA 2. Development workflow ● Git Flow nvie.com/posts/a-successful-git-branching-model
  23. 23. #ContinuousDeliveryRVA
  24. 24. Let’s do both!
  25. 25. #ContinuousDeliveryRVA Git octopus github.com/lesfurets/git-octopus
  26. 26. #ContinuousDeliveryRVA Git octopus github.com/lesfurets/git-octopus
  27. 27. #ContinuousDeliveryRVA Git octopus github.com/lesfurets/git-octopus
  28. 28. #ContinuousDeliveryRVA Git octopus github.com/lesfurets/git-octopus
  29. 29. #ContinuousDeliveryRVA Git octopus in action! github.com/lesfurets/git-octopus
  30. 30. #ContinuousDeliveryRVA 1. Implementation ● Few feature toggles ● Hardcode anything! (behavior config) ● Requires a good code base
  31. 31. What changed?
  32. 32. #ContinuousDeliveryRVA For the developers ● More responsibilities ● Many teams, same codebase ● Better codebase
  33. 33. #ContinuousDeliveryRVA For the business ● Manage projects, not teams ● 10 - 15 days ● Faster time to market
  34. 34. Q&A github.com/lesfurets @IpponUSA@beastiefurets github.com/ippontech
  35. 35. image references big data cover: https://www.manning.com/books/big-data spark and cassandra logos: apache foundation java logo: oracle effeil tower: http://www.uniquecoloringpages.com/wp-content/uploads/2014/03/Coloring- Pages-Eiffel-Tower-Paris.jpg USA flag: wikipedia https://upload.wikimedia. org/wikipedia/commons/thumb/3/3e/USA_Flag_Map.svg/640px-USA_Flag_Map.svg.png water truck:http://cdn-7.psndealer.com/e2/dealersite/images/wiclark/water-truck-ds.jpg water truck lego: http://images.moc-pages. com/user_images/15600/1363559810m_SPLASH.jpg water tap: http://visianinfo.com/wp-content/uploads/low-flow-water-faucet.jpg
  36. 36. References: http://fr.slideshare.net/beastiefurets/devoxx- france-2015-git-octopus

×