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.

Conversational Development [Agile Portugal]

334 views

Published on

How GitLab works

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Conversational Development [Agile Portugal]

  1. 1. Conversational Development Job van der Voort | @Jobvo VP Product at GitLab @Jobvo
  2. 2. @Jobvo
  3. 3. @Jobvo
  4. 4. 2011 Dimitriy Zaporozhets @Jobvo
  5. 5. 2014 5 people @Jobvo
  6. 6. today @Jobvo
  7. 7. $45 million in funding Google Ventures, Michael Dell, Ashton Kutcher and others @Jobvo
  8. 8. >100k companies @Jobvo
  9. 9. 290 people (and about 70 pets) @Jobvo
  10. 10. Zero offices ~36 different countries @Jobvo - about.gitlab.com/team/
  11. 11. (Almost) everything is open @Jobvo - about.gitlab.com/handbook
  12. 12. Why you should listen to me @Jobvo
  13. 13. Q3 2015 First version of GitLab CI @Jobvo
  14. 14. Q3 2017 GitLab CI Leader in Forrester Wave CI Tools @Jobvo
  15. 15. @Jobvo
  16. 16. OPEN@Jobvo
  17. 17. GitLab comes in two distributions @Jobvo
  18. 18. Community Edition gitlab.com/gitlab-org/gitlab-ce MIT Expat license @Jobvo
  19. 19. Enterprise Edition gitlab.com/gitlab-org/gitlab-ee Proprietary @Jobvo
  20. 20. @Jobvo
  21. 21. @Jobvo
  22. 22. All code, issues and plans are public @Jobvo
  23. 23. ..meaning anyone can contribute, even to our proprietary product. @Jobvo
  24. 24. The contribution process is identical for everyone, employee or not @Jobvo
  25. 25. @Jobvo
  26. 26. We realized that being open is incredibly powerful @Jobvo
  27. 27. So we open sourced the rest of our company (everything is open) @Jobvo
  28. 28. about.gitlab.com/handbook @Jobvo
  29. 29. Want to know how we make product decisions? about.gitlab.com/handbook/product @Jobvo
  30. 30. Want to see our vacation policy? about.gitlab.com/handbook/paid-time-off @Jobvo
  31. 31. Want to see our hiring policies? about.gitlab.com/handbook/hiring @Jobvo
  32. 32. Want to know how much you'll earn as developer? about.gitlab.com/roles/engineering/developer @Jobvo
  33. 33. Everything we reasonably and legally can be open about, we make public @Jobvo
  34. 34. It has meant that the community has contributed to our company @Jobvo
  35. 35. and others have taken our ideas and built their own companies on it @Jobvo
  36. 36. DEV@Jobvo
  37. 37. Focus on customer value @Jobvo
  38. 38. Focus on customer value Consistently build cool things that people like @Jobvo
  39. 39. Only possible to do consistently by iteration @Jobvo
  40. 40. SHORT CYCLES @Jobvo
  41. 41. @Jobvo
  42. 42. Cycle time Time it takes to go from writing down an idea to shipping that change in production @Jobvo - 1: Shorten your cycle
  43. 43. Shorter cycles |> More iterative @Jobvo - 1: Shorten your cycle
  44. 44. Skate to where the puck is going to be @Jobvo - 1: Shorten your cycle
  45. 45. Skate to where the puck is going to be @Jobvo - 1: Shorten your cycle
  46. 46. Ok, cycle time is important. How do I get to shorter cycles? @Jobvo - 1: Shorten your cycle
  47. 47. 1. Shorter cycles Minimally Viable Change (MVC) @Jobvo - 1: Shorten your cycle
  48. 48. 1. Shorter cycles Deploy frequently (Continuously) @Jobvo - 1: Shorten your cycle
  49. 49. 1. Shorter cycles Deploy more when it hurts @Jobvo - 1: Shorten your cycle
  50. 50. 1. Shorter cycles Include gatekeepers into each step of the cycle @Jobvo - 1: Shorten your cycle
  51. 51. 1. Shorter cycles Automate everything 1. Have a great test suite (aim for 85% coverage) 2. Automatically deploy on merge to staging / preprod / prod 3. Automatic roll-out and roll-back 4. Adopting Cloud Native (Kubernetes + GitLab) makes this all 100x easier @Jobvo - 1: Shorten your cycle
  52. 52. 1. Shorter cycles 1. Adopt MVC 2. Deploy frequently 3. Deploy more when it hurts 4. Include gatekeepers into the conversation 5. Automate everything @Jobvo - 1: Shorten your cycle
  53. 53. 1. Shorter cycles Result: • Easier to coordinate, reason, estimate • Quicker to respond to market needs • Higher predictability • Better code quality • Easier to troubleshoot @Jobvo - 1: Shorten your cycle
  54. 54. ADOPT CONVERSATIONAL DEVELOPMENT @Jobvo
  55. 55. Conversational Development (ConvDev) Asynchronous, result-driven way of communicating @Jobvo - 2: Adopt ConvDev
  56. 56. ConvDev is why GitLab can exist @Jobvo - 2: Adopt ConvDev
  57. 57. 2. ConvDev Write everything down @Jobvo - 2: Adopt ConvDev
  58. 58. 2. ConvDev Thread the conversation through all stages @Jobvo - 2: Adopt ConvDev
  59. 59. 2. ConvDev Thread the conversation through all stages @Jobvo - 2: Adopt ConvDev
  60. 60. 2. ConvDev Asynchronous communication without need for consensus @Jobvo - 2: Adopt ConvDev
  61. 61. 2. ConvDev 1. Write everything down 2. Thread the conversation through all stages 3. Async without consensus @Jobvo - 2: Adopt ConvDev
  62. 62. 2. ConvDev Results • Everyone can always move forward with their work • Higher efficiency • Every change and decision is written down and visible • Can track cycle time @Jobvo - 2: Adopt ConvDev
  63. 63. Small changes that are easily revertable / rolled back @Jobvo
  64. 64. There is a clear audit trail for each and every change @Jobvo
  65. 65. Everyone looks at the same things @Jobvo
  66. 66. MEASURE AND LEARN @Jobvo
  67. 67. Connecting business with change @Jobvo - 3: Measure and learn
  68. 68. See how any change affects (business) metrics in the same place (You can do this today in GitLab) @Jobvo - 3: Measure and learn
  69. 69. SUMMARY @Jobvo
  70. 70. 1. Shorten your cycles @Jobvo
  71. 71. 2. Adopt ConvDev (async communication) @Jobvo
  72. 72. 3. Measure and learn @Jobvo
  73. 73. Questions?@Jobvo / job@gitlab.com RemoteWorkPodcast.com @Jobvo
  74. 74. @Jobvo
  75. 75. bonus slides @Jobvo
  76. 76. 2. Everyone contributes @Jobvo
  77. 77. 2. Everyone contributes Every single person at GitLab makes changes to everything @Jobvo
  78. 78. 2. Everyone contributes Commits activity of our Chief Revenue Officer (sales) @Jobvo
  79. 79. 3. Freedom to live a better life @Jobvo
  80. 80. 3. Freedom to live a better life Unlimited vacation no log is kept of days off @Jobvo
  81. 81. 3. Freedom to live a better life No set hours, required hours or tracking of hours We only look at how well you do your job @Jobvo
  82. 82. 4. We spend a lot of time bonding @Jobvo
  83. 83. 4. Bonding Daily team call @Jobvo
  84. 84. 4. Bonding Summits @Jobvo
  85. 85. 4. Bonding Travel to meet colleagues @Jobvo
  86. 86. @Jobvo

×