SlideShare a Scribd company logo
1 of 86
Download to read offline
Conversational Development
Job van der Voort | @Jobvo
VP Product at GitLab
@Jobvo
@Jobvo
@Jobvo
2011
Dimitriy Zaporozhets
@Jobvo
2014
5 people
@Jobvo
today
@Jobvo
$45 million in funding
Google Ventures, Michael Dell, Ashton Kutcher and others
@Jobvo
>100k companies
@Jobvo
290 people
(and about 70 pets)
@Jobvo
Zero offices
~36 different countries
@Jobvo - about.gitlab.com/team/
(Almost) everything is open
@Jobvo - about.gitlab.com/handbook
Why you should listen to me
@Jobvo
Q3 2015
First version of GitLab CI
@Jobvo
Q3 2017
GitLab CI Leader in Forrester Wave
CI Tools
@Jobvo
@Jobvo
OPEN@Jobvo
GitLab comes in two distributions
@Jobvo
Community Edition
gitlab.com/gitlab-org/gitlab-ce
MIT Expat license
@Jobvo
Enterprise Edition
gitlab.com/gitlab-org/gitlab-ee
Proprietary
@Jobvo
@Jobvo
@Jobvo
All code, issues and plans are public
@Jobvo
..meaning anyone can contribute,
even to our proprietary product.
@Jobvo
The contribution process is
identical for everyone,
employee or not
@Jobvo
@Jobvo
We realized that being open is
incredibly powerful
@Jobvo
So we open sourced the rest of our
company
(everything is open)
@Jobvo
about.gitlab.com/handbook
@Jobvo
Want to know how we make
product decisions?
about.gitlab.com/handbook/product
@Jobvo
Want to see our vacation policy?
about.gitlab.com/handbook/paid-time-off
@Jobvo
Want to see our hiring policies?
about.gitlab.com/handbook/hiring
@Jobvo
Want to know how much you'll earn
as developer?
about.gitlab.com/roles/engineering/developer
@Jobvo
Everything we reasonably and
legally can be open about, we make
public
@Jobvo
It has meant that the community
has contributed to our company
@Jobvo
and others have taken our ideas
and built their own companies on it
@Jobvo
DEV@Jobvo
Focus on customer value
@Jobvo
Focus on customer value
Consistently build cool things that
people like
@Jobvo
Only possible to do consistently by
iteration
@Jobvo
SHORT CYCLES
@Jobvo
@Jobvo
Cycle time
Time it takes to go from writing down an idea to
shipping that change in production
@Jobvo - 1: Shorten your cycle
Shorter cycles |>
More iterative
@Jobvo - 1: Shorten your cycle
Skate to where the puck is going to be
@Jobvo - 1: Shorten your cycle
Skate to where the puck is going to be
@Jobvo - 1: Shorten your cycle
Ok, cycle time is important.
How do I get to shorter cycles?
@Jobvo - 1: Shorten your cycle
1. Shorter cycles
Minimally Viable Change (MVC)
@Jobvo - 1: Shorten your cycle
1. Shorter cycles
Deploy frequently (Continuously)
@Jobvo - 1: Shorten your cycle
1. Shorter cycles
Deploy more when it hurts
@Jobvo - 1: Shorten your cycle
1. Shorter cycles
Include gatekeepers into each step of the
cycle
@Jobvo - 1: Shorten your cycle
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
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
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
ADOPT CONVERSATIONAL
DEVELOPMENT
@Jobvo
Conversational Development
(ConvDev)
Asynchronous, result-driven way of
communicating
@Jobvo - 2: Adopt ConvDev
ConvDev is why GitLab can exist
@Jobvo - 2: Adopt ConvDev
2. ConvDev
Write everything down
@Jobvo - 2: Adopt ConvDev
2. ConvDev
Thread the conversation through all stages
@Jobvo - 2: Adopt ConvDev
2. ConvDev
Thread the conversation through all stages
@Jobvo - 2: Adopt ConvDev
2. ConvDev
Asynchronous communication without need
for consensus
@Jobvo - 2: Adopt ConvDev
2. ConvDev
1. Write everything down
2. Thread the conversation through all stages
3. Async without consensus
@Jobvo - 2: Adopt ConvDev
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
Small changes that are easily
revertable / rolled back
@Jobvo
There is a clear audit trail for each
and every change
@Jobvo
Everyone looks at the same things
@Jobvo
MEASURE AND LEARN
@Jobvo
Connecting business with change
@Jobvo - 3: Measure and learn
See how any change affects (business)
metrics in the same place
(You can do this today in GitLab)
@Jobvo - 3: Measure and learn
SUMMARY
@Jobvo
1. Shorten your cycles
@Jobvo
2. Adopt ConvDev (async
communication)
@Jobvo
3. Measure and learn
@Jobvo
Questions?@Jobvo / job@gitlab.com
RemoteWorkPodcast.com
@Jobvo
@Jobvo
bonus slides
@Jobvo
2. Everyone contributes
@Jobvo
2. Everyone contributes
Every single person at GitLab
makes changes to everything
@Jobvo
2. Everyone contributes
Commits activity of our Chief Revenue
Officer (sales)
@Jobvo
3. Freedom to live a better life
@Jobvo
3. Freedom to live a better life
Unlimited vacation
no log is kept of days off
@Jobvo
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
4. We spend a lot of time bonding
@Jobvo
4. Bonding
Daily team call
@Jobvo
4. Bonding
Summits
@Jobvo
4. Bonding
Travel to meet colleagues
@Jobvo
@Jobvo

More Related Content

What's hot

Story of LeSS by Bas Vodde
Story of LeSS by Bas VoddeStory of LeSS by Bas Vodde
Story of LeSS by Bas Vodde
Agile ME
 

What's hot (20)

Git Branching for Agile Teams
Git Branching for Agile TeamsGit Branching for Agile Teams
Git Branching for Agile Teams
 
Git. EVEN more basic (for business people)
Git. EVEN more basic (for business people)Git. EVEN more basic (for business people)
Git. EVEN more basic (for business people)
 
GitOps , done Right
GitOps , done RightGitOps , done Right
GitOps , done Right
 
Managing releases effectively through git
Managing releases effectively through gitManaging releases effectively through git
Managing releases effectively through git
 
Case Study: Migration to GitLab (from Bitbucket) at AppsFlyer
Case Study: Migration to GitLab (from Bitbucket) at AppsFlyerCase Study: Migration to GitLab (from Bitbucket) at AppsFlyer
Case Study: Migration to GitLab (from Bitbucket) at AppsFlyer
 
Using github development process in your company
Using github development process in your companyUsing github development process in your company
Using github development process in your company
 
True Git
True Git True Git
True Git
 
GitHub Integration for Orangescrum Cloud Released!
GitHub Integration for Orangescrum Cloud Released!GitHub Integration for Orangescrum Cloud Released!
GitHub Integration for Orangescrum Cloud Released!
 
Is TDD dead or alive?
Is TDD dead or alive?Is TDD dead or alive?
Is TDD dead or alive?
 
GCM demo on Android
GCM demo on AndroidGCM demo on Android
GCM demo on Android
 
GitLab 8.5 Highlights and Step-by-step tutorial
GitLab 8.5 Highlights and Step-by-step tutorialGitLab 8.5 Highlights and Step-by-step tutorial
GitLab 8.5 Highlights and Step-by-step tutorial
 
Devoxx 2016 Using Jenkins, Gerrit and Spark for Continuous Delivery Analytics
Devoxx 2016 Using Jenkins, Gerrit and Spark for Continuous Delivery AnalyticsDevoxx 2016 Using Jenkins, Gerrit and Spark for Continuous Delivery Analytics
Devoxx 2016 Using Jenkins, Gerrit and Spark for Continuous Delivery Analytics
 
Continuous Delivery at Snyk
Continuous Delivery at SnykContinuous Delivery at Snyk
Continuous Delivery at Snyk
 
Migrating to Puppet 5
Migrating to Puppet 5Migrating to Puppet 5
Migrating to Puppet 5
 
GitLab webcast - Release 8.4
GitLab webcast - Release 8.4GitLab webcast - Release 8.4
GitLab webcast - Release 8.4
 
Redux toolkit
Redux toolkitRedux toolkit
Redux toolkit
 
和艦長一起玩轉 GitLab & GitLab Workflow
和艦長一起玩轉 GitLab & GitLab Workflow和艦長一起玩轉 GitLab & GitLab Workflow
和艦長一起玩轉 GitLab & GitLab Workflow
 
Flex and .NET Integration
Flex and .NET IntegrationFlex and .NET Integration
Flex and .NET Integration
 
Story of LeSS by Bas Vodde
Story of LeSS by Bas VoddeStory of LeSS by Bas Vodde
Story of LeSS by Bas Vodde
 
Open Source Monitoring in 2019
Open Source Monitoring in 2019 Open Source Monitoring in 2019
Open Source Monitoring in 2019
 

Similar to Conversational Development [Agile Portugal]

DevOps/Flow workshop for agile india 2015
DevOps/Flow workshop for agile india 2015DevOps/Flow workshop for agile india 2015
DevOps/Flow workshop for agile india 2015
Yuval Yeret
 
DOES14 - Aimee Bechtle and Bill Donaldson - The MITRE Corp
DOES14 - Aimee Bechtle and Bill Donaldson - The MITRE CorpDOES14 - Aimee Bechtle and Bill Donaldson - The MITRE Corp
DOES14 - Aimee Bechtle and Bill Donaldson - The MITRE Corp
Gene Kim
 

Similar to Conversational Development [Agile Portugal] (20)

DevOps/Flow workshop for agile india 2015
DevOps/Flow workshop for agile india 2015DevOps/Flow workshop for agile india 2015
DevOps/Flow workshop for agile india 2015
 
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
 
DevOps - Understanding Core Concepts
DevOps - Understanding Core ConceptsDevOps - Understanding Core Concepts
DevOps - Understanding Core Concepts
 
DevOps - Understanding Core Concepts (Old)
DevOps - Understanding Core Concepts (Old)DevOps - Understanding Core Concepts (Old)
DevOps - Understanding Core Concepts (Old)
 
Hacktoberfest 2020 - Open source for beginners
Hacktoberfest 2020 - Open source for beginnersHacktoberfest 2020 - Open source for beginners
Hacktoberfest 2020 - Open source for beginners
 
Built to Scale: The Mozilla Release Engineering toolbox
Built to Scale: The Mozilla Release Engineering toolboxBuilt to Scale: The Mozilla Release Engineering toolbox
Built to Scale: The Mozilla Release Engineering toolbox
 
DSC UTeM DevOps Session#1: Intro to DevOps Presentation Slides
DSC UTeM DevOps Session#1: Intro to DevOps Presentation SlidesDSC UTeM DevOps Session#1: Intro to DevOps Presentation Slides
DSC UTeM DevOps Session#1: Intro to DevOps Presentation Slides
 
DOES14 - Aimee Bechtle and Bill Donaldson - The MITRE Corp
DOES14 - Aimee Bechtle and Bill Donaldson - The MITRE CorpDOES14 - Aimee Bechtle and Bill Donaldson - The MITRE Corp
DOES14 - Aimee Bechtle and Bill Donaldson - The MITRE Corp
 
14 3400-mitre dev ops enterprise summit briefing 2014-10_22
14 3400-mitre dev ops enterprise summit briefing 2014-10_2214 3400-mitre dev ops enterprise summit briefing 2014-10_22
14 3400-mitre dev ops enterprise summit briefing 2014-10_22
 
Focus on Flow: Lean Principles in Action
Focus on Flow: Lean Principles in ActionFocus on Flow: Lean Principles in Action
Focus on Flow: Lean Principles in Action
 
Azure DevOps Complete CI/CD Pipeline
Azure DevOps Complete CI/CD PipelineAzure DevOps Complete CI/CD Pipeline
Azure DevOps Complete CI/CD Pipeline
 
Beyond Agile Software
Beyond Agile SoftwareBeyond Agile Software
Beyond Agile Software
 
Doing agile with an ISO-20000 Telco (AgilePT 2015)
Doing agile with an ISO-20000 Telco (AgilePT 2015)Doing agile with an ISO-20000 Telco (AgilePT 2015)
Doing agile with an ISO-20000 Telco (AgilePT 2015)
 
Introduction to Lean Software Development
Introduction to Lean Software DevelopmentIntroduction to Lean Software Development
Introduction to Lean Software Development
 
Why Limit WIP?
Why Limit WIP?  Why Limit WIP?
Why Limit WIP?
 
How to Achieve more through Collaboration
How to Achieve more through Collaboration How to Achieve more through Collaboration
How to Achieve more through Collaboration
 
DevOPs Transformation Workshop
DevOPs Transformation WorkshopDevOPs Transformation Workshop
DevOPs Transformation Workshop
 
Git workshop
Git workshopGit workshop
Git workshop
 
High Availability SOA APP with GlusterFS
High Availability SOA APP with GlusterFSHigh Availability SOA APP with GlusterFS
High Availability SOA APP with GlusterFS
 
DevOps-Ebook
DevOps-EbookDevOps-Ebook
DevOps-Ebook
 

More from 🌍 Job van der Voort

More from 🌍 Job van der Voort (17)

Product update Oct 1
Product update Oct 1Product update Oct 1
Product update Oct 1
 
The best apps are built in pyjama-pants
The best apps are built in pyjama-pantsThe best apps are built in pyjama-pants
The best apps are built in pyjama-pants
 
Product may14
Product may14Product may14
Product may14
 
GitLab Product Update March 27
GitLab Product Update March 27GitLab Product Update March 27
GitLab Product Update March 27
 
Product update Feb 20
Product update Feb 20Product update Feb 20
Product update Feb 20
 
Remote braga
Remote bragaRemote braga
Remote braga
 
Product update 1 2018
Product update 1 2018Product update 1 2018
Product update 1 2018
 
Product update nov 7
Product update nov 7 Product update nov 7
Product update nov 7
 
GitLab Product Update Oct 3
GitLab Product Update Oct 3GitLab Product Update Oct 3
GitLab Product Update Oct 3
 
Product update aug_29
Product update aug_29Product update aug_29
Product update aug_29
 
GitLab Product update July 25
GitLab Product update July 25GitLab Product update July 25
GitLab Product update July 25
 
GitLab Product Update June 20
GitLab Product Update June 20GitLab Product Update June 20
GitLab Product Update June 20
 
What we can learn from hackers (about the definition of work)
What we can learn from hackers (about the definition of work)What we can learn from hackers (about the definition of work)
What we can learn from hackers (about the definition of work)
 
GitLab Product update May 16
GitLab Product update May 16GitLab Product update May 16
GitLab Product update May 16
 
GitLab Product update April 11, 2017
GitLab Product update April 11, 2017GitLab Product update April 11, 2017
GitLab Product update April 11, 2017
 
Growing an Open Company
Growing an Open CompanyGrowing an Open Company
Growing an Open Company
 
GitLab Product Update, January 2017
GitLab Product Update, January 2017GitLab Product Update, January 2017
GitLab Product Update, January 2017
 

Recently uploaded

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Recently uploaded (20)

[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 

Conversational Development [Agile Portugal]