Life Embetterment With Hundreds of Deployments a Day

Life Embetterment With Hundreds of Deployments a Day

How we at Vinted took a voyage from a couple slow fragile and cumbersome deployments per week to Continuous Deployment.

B5009f255a6f0c386d40d6143948df8e?s=128

Mindaugas Mozūras

January 21, 2016
Tweet

Transcript

  1. LIFE HUNDREDS OF DEPLOYMENTS a day with EMBETTERMENT

  2. MMOZURAS MMOZURAS CODINGFEARLESSLY.COM

  3. None
  4. VINTED

  5. MAKE SECOND-HAND THE FIRST CHOICE WORLDWIDE

  6. USA • UK • Germany • Austria France • Lithuania

    • Poland Czech Republic
  7. None
  8. 7 DEVELOPERS 1 OPERATIONS ENGINEER LATE 2012

  9. USING GITHUB

  10. ABUSING GITHUB

  11. None
  12. TESTS!

  13. TEST COVERAGE ~30%

  14. None
  15. TESTS RUN >10MIN

  16. None
  17. DEPLOYING UNTESTED CODE

  18. None
  19. None
  20. NO CONCURRENT DEPLOYMENTS

  21. None
  22. None
  23. AM I THE ONLY ONE AROUND HERE WHO IS GETTING

    404 IN GERMAN FORUM?
  24. None
  25. None
  26. SLOW FEEDBACK FRAGILE RELEASES CUMBERSOME PROCESS

  27. SLOW FEEDBACK FRAGILE RELEASES CUMBERSOME PROCESS

  28. None
  29. GRAYLOG

  30. None
  31. None
  32. NEW RELIC

  33. None
  34. STATSD / GRAPHITE

  35. None
  36. GRAFANA

  37. None
  38. None
  39. SLOW FEEDBACK FRAGILE RELEASES CUMBERSOME PROCESS

  40. None
  41. STRANGE COINCIDENCE…

  42. WHEN SHIPPING NEW CODE, ADD TESTS

  43. WHEN MODIFYING OLD CODE, ADD TESTS

  44. ALWAYS ADD TESTS

  45. ELIMINATE RANDOM FAILURES

  46. PULL REQUESTS

  47. None
  48. None
  49. None
  50. None
  51. None
  52. None
  53. None
  54. None
  55. None
  56. None
  57. None
  58. None
  59. None
  60. None
  61. None
  62. CHATOPS

  63. None
  64. RELEASE IN SMALLER CHUNKS

  65. None
  66. GITHUB / SCIENTIST

  67. None
  68. None
  69. None
  70. WINNER ꔄ

  71. SLOW FEEDBACK FRAGILE RELEASES CUMBERSOME PROCESS

  72. None
  73. None
  74. OLD TOTAL DEPLOY TIME 30+ MINUTES

  75. None
  76. None
  77. SPLIT BUILDS

  78. PARALLEL TESTS

  79. FAST HARDWARE

  80. ONLINE DATABASE MIGRATIONS

  81. PUT YOUR BUILD SERVER TO WORK

  82. DEPLOY WITH JENKINS

  83. None
  84. None
  85. None
  86. AUTO DEPLOY

  87. SLOW FEEDBACK FRAGILE RELEASES CUMBERSOME PROCESS

  88. INSTANT FEEDBACK RELIABLE RELEASES AUTOMATIC PROCESS

  89. 7 DEVELOPERS 1 OPERATIONS ENGINEER LATE 2012

  90. 35+ DEVELOPERS 5 OPERATIONS ENGINEERS EARLY 2016

  91. None
  92. 500 DEPLOYMENTS / DAY

  93. None
  94. THANKS!