SlideShare a Scribd company logo
WHAT MAKES A
HIGH PERFORMANCE TEAM
TICK?
Michel Schudel
MichelSchudel
8 tips from the development trenches
Rabobank Lending & Insurance, tribe “wonen”
500 people, 20 teams
8 TIPS
TO IMPROVE
THE PERFORMANCE
OF YOUR TEAM
From 2021-01-01,
If you’re younger than 35 years,
You don’t have to pay 2% property transfer tax when buying a house
PROPERTY TRANSFER TAX
A TYPICAL STORY IN LENDING AND INSURANCE
4 weeks
later….
Refinement
Property Transfer
Tax
Story
STORY
REFINEMENT
TIP #1: JIT (JUST-IN-TIME) KICKOFFS
• Whole team involved (that includes business)
• 2 hours max, timeboxed
• Team creates global design on-the-spot
• Team identifies sub tasks (round robin or ad hoc)
• Go to work immediately after finishing the kickoff
• All work on the same story (or max 2)
Make FE
Controller
Bring Calc
To prod
Map output
from calc
Acceptance
EXAMPLE
Story
Design
Subtasks
Property Transfer
Tax
Story
From 2021-01-01,
If you’re younger than 35 years,
You don’t have to pay 2% property transfer tax when buying a house
PROPERTY TRANSFER TAX
if under the max price
if under the max price
HOW TO SOLVE?
Backup PO Business
analyst
TIP #2
HAVE A PRODUCT OWNER
(OR BACKUPS) THAT
ARE AVAILABLE ALL THE TIME
Frontend
Development
Backend
Development
/Infra
FULL
STACK
DEVELOPER
Update UI
Work on
calculations
Mentor
Driver’s seat
Driver’s seat Mentor
HOW TO SOLVE THIS?
Backend
Development
Frontend
Development
TIP #3:
PAIR DIFFERENT DISCIPLINES
TO GROW T-SHAPED DEVELOPERS
Build
Build
2 mins
Quality
control
Quality
control
4 mins
Deploy to
Test
Deploy to
Test
1 mins
Performance
Test
Performance
Test
UI Chain
Test
UI Chain
Test
45 mins 20 mins
• Performance test is too long
• Chaintest is too flaky
BUILD PIPELINES
• Minimize Performance Test
• Minimize chaintest
• Share chaintest responsibility
HOW TO SOLVE?
Build
Build
2 mins
Quality
control
Quality
control
4 mins
Deploy to
Test
Deploy to
Test
1 mins
Flight check
Performance
Test
5 mins 10 mins
Minimized
chain test
TIP #4:
KEEP YOUR PIPELINES
FAST AND STABLE
BY ELIMINATING UNNEEDED JOBS
AND MINIMIZING FLAKYNESS
CODE
REVIEW
HOW TO SOLVE?
TEAM CODE REVIEW
TIP #5:
DO TEAM CODE REVIEWS
FOR EVERY STORY
BROKEN WINDOW
SYNDROME
TECHNICAL DEBT BACKLOG
• JIRA-123321: Refactor internal structure of calculcations service
• JIRA-645948: Cleanup unused mode fields
• JIRA-843834: Upgrade Guava to new dependency without
vulnerabilities
HOW TO SOLVE?
TIP #6:
Have
ZERO
technical debt
at all times
KEEP ISSUES AT ZERO
CODE SMELLS
ID SMELLS DURING TEAM CODE REVIEW
STORY TODO IN PROGRESS DONE
Property
Tax
Rename
getCalc
endpoint
Push down
business
method
Encapsulate
calc method
Implement
FE
Controller
Bring Calc
ToProd
Map output
From Calc
TIP #7:
KEEPING BEING CRITICAL
DROP RITUALS THAT
GIVE YOU NO ADDED VALUE
ASAP
TEAM COMPOSITION
& DYNAMICS
The
Coordinator
The
Plant
The
Implementer
The
Perfectionist
The
Investigator
The
Team worker
The
Researcher
“Let’s do this story
first and make a design”
“Let’s do GraphQL!” “Get shit done” “Let’s try out
Quarkus on a prototype”
“It’s all in the details boyz” “How did the other teams
solve that?”
“Can we call work on this
story together?”
No, that button is
two pixels too far left
Let’s put it in production,
Good enough for now
TIP #8:
HAVE A GOOD MIX OF
PERSONALITY AND EXPERIENCE
IN YOUR TEAM
SUMMARY
1. Do Just-In-Time kickoffs
2. Have at least one PO that is always available
3. Create T-shaped developers by pairing different disciplines
4. Do team code reviews
5. Keep your pipelines in great shape
6. Technical Debt should be zero at all times
7. Drop rituals that give you no added value
8. Have a good mix of experience and personality in your team
THANK YOU
MichelSchudel
michel@craftsmen.nl
https://www.slideshare.net/michelschudel/what-makes-a-high-performance-team-tick

More Related Content

Similar to What makes a high performance team tick?

Got 99 Projects But Profit Ain't One? - CAPINC Presentation on Automation
Got 99 Projects But Profit Ain't One? - CAPINC Presentation on AutomationGot 99 Projects But Profit Ain't One? - CAPINC Presentation on Automation
Got 99 Projects But Profit Ain't One? - CAPINC Presentation on Automation
CAPINC
 
Gamification in outsourcing company: experience report.
Gamification in outsourcing company: experience report.Gamification in outsourcing company: experience report.
Gamification in outsourcing company: experience report.
Mikalai Alimenkou
 
The Eight Building Blocks of Quote-to-Cash Transformation
The Eight Building Blocks of Quote-to-Cash TransformationThe Eight Building Blocks of Quote-to-Cash Transformation
The Eight Building Blocks of Quote-to-Cash Transformation
Apttus
 
Николай Алименков "Геймификация в аутсорсинговых компаниях: практический отчет"
Николай Алименков "Геймификация в аутсорсинговых компаниях: практический отчет"Николай Алименков "Геймификация в аутсорсинговых компаниях: практический отчет"
Николай Алименков "Геймификация в аутсорсинговых компаниях: практический отчет"
Fwdays
 
This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?
This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?
This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?
Mark Heckler
 
Pivoting to Cloud: How an MSP Brokers Cloud Services
Pivoting to Cloud: How an MSP Brokers Cloud Services Pivoting to Cloud: How an MSP Brokers Cloud Services
Pivoting to Cloud: How an MSP Brokers Cloud Services
RightScale
 
Leading Digital Success - Tetris - TOPS
Leading Digital Success - Tetris - TOPSLeading Digital Success - Tetris - TOPS
Leading Digital Success - Tetris - TOPS
Dino Frese
 
Nexus. how we do scrum with 150 people
Nexus. how we do scrum with 150 peopleNexus. how we do scrum with 150 people
Nexus. how we do scrum with 150 people
ScrumDayUA
 
This stuff is cool, but HOW CAN I GET MY COMPANY TO DO IT? Businessing the S*...
This stuff is cool, but HOW CAN I GET MY COMPANY TO DO IT? Businessing the S*...This stuff is cool, but HOW CAN I GET MY COMPANY TO DO IT? Businessing the S*...
This stuff is cool, but HOW CAN I GET MY COMPANY TO DO IT? Businessing the S*...
Mark Heckler
 
How Spyder Trap Transformed Its Business with QuickBase Sync
How Spyder Trap Transformed Its Business with QuickBase SyncHow Spyder Trap Transformed Its Business with QuickBase Sync
How Spyder Trap Transformed Its Business with QuickBase Sync
QuickBase, Inc.
 
This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?
This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?
This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?
Mark Heckler
 
Sitecore Experience & SUGCON 2019
Sitecore Experience & SUGCON 2019Sitecore Experience & SUGCON 2019
Sitecore Experience & SUGCON 2019
Rene Naplava
 
A Masterclass on Data Warehouse Automation
A Masterclass on Data Warehouse Automation A Masterclass on Data Warehouse Automation
A Masterclass on Data Warehouse Automation
Heath Turner
 
Technical debt is a business problem - Bob Fischer
Technical debt is a business problem - Bob FischerTechnical debt is a business problem - Bob Fischer
Technical debt is a business problem - Bob Fischer
agilemaine
 
Agile2018 Top 10 Takeaways - Synerzip
Agile2018 Top 10 Takeaways - SynerzipAgile2018 Top 10 Takeaways - Synerzip
Agile2018 Top 10 Takeaways - Synerzip
Synerzip
 
Vinoth_Perumal_Datawarehousing
Vinoth_Perumal_DatawarehousingVinoth_Perumal_Datawarehousing
Vinoth_Perumal_Datawarehousingvinoth perumal
 
Using an Agile Framework in a BI Team
Using an Agile Framework in a BI TeamUsing an Agile Framework in a BI Team
Using an Agile Framework in a BI Team
Catherine Carleton
 
ELEC2017 1.1 r. king - how lean and digital capability can work together
ELEC2017   1.1 r. king - how lean and digital capability can work together ELEC2017   1.1 r. king - how lean and digital capability can work together
ELEC2017 1.1 r. king - how lean and digital capability can work together
HAN Lean-QRM Centrum / HAN Lectoraat Lean
 
Patterns and Antipatterns for Adopting IBM DevOps Tools
Patterns and Antipatterns for Adopting IBM DevOps ToolsPatterns and Antipatterns for Adopting IBM DevOps Tools
Patterns and Antipatterns for Adopting IBM DevOps Tools
Strongback Consulting
 
DevopsBusinessCaseTemplate
DevopsBusinessCaseTemplateDevopsBusinessCaseTemplate
DevopsBusinessCaseTemplatePeter Lamar
 

Similar to What makes a high performance team tick? (20)

Got 99 Projects But Profit Ain't One? - CAPINC Presentation on Automation
Got 99 Projects But Profit Ain't One? - CAPINC Presentation on AutomationGot 99 Projects But Profit Ain't One? - CAPINC Presentation on Automation
Got 99 Projects But Profit Ain't One? - CAPINC Presentation on Automation
 
Gamification in outsourcing company: experience report.
Gamification in outsourcing company: experience report.Gamification in outsourcing company: experience report.
Gamification in outsourcing company: experience report.
 
The Eight Building Blocks of Quote-to-Cash Transformation
The Eight Building Blocks of Quote-to-Cash TransformationThe Eight Building Blocks of Quote-to-Cash Transformation
The Eight Building Blocks of Quote-to-Cash Transformation
 
Николай Алименков "Геймификация в аутсорсинговых компаниях: практический отчет"
Николай Алименков "Геймификация в аутсорсинговых компаниях: практический отчет"Николай Алименков "Геймификация в аутсорсинговых компаниях: практический отчет"
Николай Алименков "Геймификация в аутсорсинговых компаниях: практический отчет"
 
This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?
This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?
This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?
 
Pivoting to Cloud: How an MSP Brokers Cloud Services
Pivoting to Cloud: How an MSP Brokers Cloud Services Pivoting to Cloud: How an MSP Brokers Cloud Services
Pivoting to Cloud: How an MSP Brokers Cloud Services
 
Leading Digital Success - Tetris - TOPS
Leading Digital Success - Tetris - TOPSLeading Digital Success - Tetris - TOPS
Leading Digital Success - Tetris - TOPS
 
Nexus. how we do scrum with 150 people
Nexus. how we do scrum with 150 peopleNexus. how we do scrum with 150 people
Nexus. how we do scrum with 150 people
 
This stuff is cool, but HOW CAN I GET MY COMPANY TO DO IT? Businessing the S*...
This stuff is cool, but HOW CAN I GET MY COMPANY TO DO IT? Businessing the S*...This stuff is cool, but HOW CAN I GET MY COMPANY TO DO IT? Businessing the S*...
This stuff is cool, but HOW CAN I GET MY COMPANY TO DO IT? Businessing the S*...
 
How Spyder Trap Transformed Its Business with QuickBase Sync
How Spyder Trap Transformed Its Business with QuickBase SyncHow Spyder Trap Transformed Its Business with QuickBase Sync
How Spyder Trap Transformed Its Business with QuickBase Sync
 
This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?
This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?
This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?
 
Sitecore Experience & SUGCON 2019
Sitecore Experience & SUGCON 2019Sitecore Experience & SUGCON 2019
Sitecore Experience & SUGCON 2019
 
A Masterclass on Data Warehouse Automation
A Masterclass on Data Warehouse Automation A Masterclass on Data Warehouse Automation
A Masterclass on Data Warehouse Automation
 
Technical debt is a business problem - Bob Fischer
Technical debt is a business problem - Bob FischerTechnical debt is a business problem - Bob Fischer
Technical debt is a business problem - Bob Fischer
 
Agile2018 Top 10 Takeaways - Synerzip
Agile2018 Top 10 Takeaways - SynerzipAgile2018 Top 10 Takeaways - Synerzip
Agile2018 Top 10 Takeaways - Synerzip
 
Vinoth_Perumal_Datawarehousing
Vinoth_Perumal_DatawarehousingVinoth_Perumal_Datawarehousing
Vinoth_Perumal_Datawarehousing
 
Using an Agile Framework in a BI Team
Using an Agile Framework in a BI TeamUsing an Agile Framework in a BI Team
Using an Agile Framework in a BI Team
 
ELEC2017 1.1 r. king - how lean and digital capability can work together
ELEC2017   1.1 r. king - how lean and digital capability can work together ELEC2017   1.1 r. king - how lean and digital capability can work together
ELEC2017 1.1 r. king - how lean and digital capability can work together
 
Patterns and Antipatterns for Adopting IBM DevOps Tools
Patterns and Antipatterns for Adopting IBM DevOps ToolsPatterns and Antipatterns for Adopting IBM DevOps Tools
Patterns and Antipatterns for Adopting IBM DevOps Tools
 
DevopsBusinessCaseTemplate
DevopsBusinessCaseTemplateDevopsBusinessCaseTemplate
DevopsBusinessCaseTemplate
 

More from Michel Schudel

Testing an onion architecture - done right
Testing an onion architecture - done rightTesting an onion architecture - done right
Testing an onion architecture - done right
Michel Schudel
 
Atonomy of-a-tls-handshake-mini-conferentie
Atonomy of-a-tls-handshake-mini-conferentieAtonomy of-a-tls-handshake-mini-conferentie
Atonomy of-a-tls-handshake-mini-conferentie
Michel Schudel
 
Spring boot Under Da Hood
Spring boot Under Da HoodSpring boot Under Da Hood
Spring boot Under Da Hood
Michel Schudel
 
Cryptography 101 for Java Developers - Devoxx 2019
Cryptography 101 for Java Developers - Devoxx 2019Cryptography 101 for Java Developers - Devoxx 2019
Cryptography 101 for Java Developers - Devoxx 2019
Michel Schudel
 
Battle Of The Microservice Frameworks: Micronaut versus Quarkus edition!
Battle Of The Microservice Frameworks: Micronaut versus Quarkus edition! Battle Of The Microservice Frameworks: Micronaut versus Quarkus edition!
Battle Of The Microservice Frameworks: Micronaut versus Quarkus edition!
Michel Schudel
 
Cryptography 101 for_java_developers, Fall 2019
Cryptography 101 for_java_developers, Fall 2019Cryptography 101 for_java_developers, Fall 2019
Cryptography 101 for_java_developers, Fall 2019
Michel Schudel
 
Cryptography 101 for Java Developers - JavaZone2019
Cryptography 101 for Java Developers - JavaZone2019Cryptography 101 for Java Developers - JavaZone2019
Cryptography 101 for Java Developers - JavaZone2019
Michel Schudel
 
Micronaut brainbit
Micronaut brainbitMicronaut brainbit
Micronaut brainbit
Michel Schudel
 
Java n-plus-1-incl-demo-slides
Java n-plus-1-incl-demo-slidesJava n-plus-1-incl-demo-slides
Java n-plus-1-incl-demo-slides
Michel Schudel
 
Cryptography 101 for Java developers
Cryptography 101 for Java developersCryptography 101 for Java developers
Cryptography 101 for Java developers
Michel Schudel
 
Let's build a blockchain.... in 40 minutes!
Let's build a blockchain.... in 40 minutes!Let's build a blockchain.... in 40 minutes!
Let's build a blockchain.... in 40 minutes!
Michel Schudel
 
Cryptography 101 for Java developers
Cryptography 101 for Java developersCryptography 101 for Java developers
Cryptography 101 for Java developers
Michel Schudel
 
Let's Build A Blockchain... in 40 minutes!
Let's Build A Blockchain... in 40 minutes!Let's Build A Blockchain... in 40 minutes!
Let's Build A Blockchain... in 40 minutes!
Michel Schudel
 
What's new in Java 11
What's new in Java 11What's new in Java 11
What's new in Java 11
Michel Schudel
 
Java 9 overview
Java 9 overviewJava 9 overview
Java 9 overview
Michel Schudel
 
Test your microservices with REST-Assured
Test your microservices with REST-AssuredTest your microservices with REST-Assured
Test your microservices with REST-Assured
Michel Schudel
 

More from Michel Schudel (16)

Testing an onion architecture - done right
Testing an onion architecture - done rightTesting an onion architecture - done right
Testing an onion architecture - done right
 
Atonomy of-a-tls-handshake-mini-conferentie
Atonomy of-a-tls-handshake-mini-conferentieAtonomy of-a-tls-handshake-mini-conferentie
Atonomy of-a-tls-handshake-mini-conferentie
 
Spring boot Under Da Hood
Spring boot Under Da HoodSpring boot Under Da Hood
Spring boot Under Da Hood
 
Cryptography 101 for Java Developers - Devoxx 2019
Cryptography 101 for Java Developers - Devoxx 2019Cryptography 101 for Java Developers - Devoxx 2019
Cryptography 101 for Java Developers - Devoxx 2019
 
Battle Of The Microservice Frameworks: Micronaut versus Quarkus edition!
Battle Of The Microservice Frameworks: Micronaut versus Quarkus edition! Battle Of The Microservice Frameworks: Micronaut versus Quarkus edition!
Battle Of The Microservice Frameworks: Micronaut versus Quarkus edition!
 
Cryptography 101 for_java_developers, Fall 2019
Cryptography 101 for_java_developers, Fall 2019Cryptography 101 for_java_developers, Fall 2019
Cryptography 101 for_java_developers, Fall 2019
 
Cryptography 101 for Java Developers - JavaZone2019
Cryptography 101 for Java Developers - JavaZone2019Cryptography 101 for Java Developers - JavaZone2019
Cryptography 101 for Java Developers - JavaZone2019
 
Micronaut brainbit
Micronaut brainbitMicronaut brainbit
Micronaut brainbit
 
Java n-plus-1-incl-demo-slides
Java n-plus-1-incl-demo-slidesJava n-plus-1-incl-demo-slides
Java n-plus-1-incl-demo-slides
 
Cryptography 101 for Java developers
Cryptography 101 for Java developersCryptography 101 for Java developers
Cryptography 101 for Java developers
 
Let's build a blockchain.... in 40 minutes!
Let's build a blockchain.... in 40 minutes!Let's build a blockchain.... in 40 minutes!
Let's build a blockchain.... in 40 minutes!
 
Cryptography 101 for Java developers
Cryptography 101 for Java developersCryptography 101 for Java developers
Cryptography 101 for Java developers
 
Let's Build A Blockchain... in 40 minutes!
Let's Build A Blockchain... in 40 minutes!Let's Build A Blockchain... in 40 minutes!
Let's Build A Blockchain... in 40 minutes!
 
What's new in Java 11
What's new in Java 11What's new in Java 11
What's new in Java 11
 
Java 9 overview
Java 9 overviewJava 9 overview
Java 9 overview
 
Test your microservices with REST-Assured
Test your microservices with REST-AssuredTest your microservices with REST-Assured
Test your microservices with REST-Assured
 

Recently uploaded

Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)
abdulrafaychaudhry
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
Aftab Hussain
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
Philip Schwarz
 
Enterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptxEnterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptx
QuickwayInfoSystems3
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
Paco van Beckhoven
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
Juraj Vysvader
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
lorraineandreiamcidl
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Łukasz Chruściel
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
Globus
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
Deuglo Infosystem Pvt Ltd
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Neo4j
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Mind IT Systems
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
Globus
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
Shane Coughlan
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
XfilesPro
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
Alina Yurenko
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
Aftab Hussain
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Globus
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
Google
 

Recently uploaded (20)

Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
 
Enterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptxEnterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptx
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
 

What makes a high performance team tick?

Editor's Notes

  1. So hello! Welcome to J-fall! Question for all of you to ponder upon: were you ever in the position to be lucky enough to be in a team that could, quote on quote, just “get shit done”? Where every sprint you could move mountains, and burning stories seemed effortless? I was fortunate enough, and humbled, to be part of such a team at Rabobank, that, to me, grew from a “normal” team to a team that could really get shit done. We did a lot of continouous improvement, failed often, but eventually we made the team perform better and better. So today, I’m going to share some of these improvements that worked for us really well, with you in the form of some tips, that you hopefully can cherrypick and try out in your teams as well. I’m Michel Schudel, a software engineer 20 plus years in the business, and I’d like to share things I’ve learned, either technical or non-technical, through blogs, articles and conferences, and I’m really glad to be on a stage again today. You probabvly can find some videos of me on youtube about Java, Cryptography, stuff like that, and if you’re interested in my tech ramblings, there’s my twitter account, follow me if you like.
  2. Sso, just to giv - e some background information Tell about the area Tell about the applications we build Explain the team
  3. So, at Rabobank Wonen, we use Java 11, soon to be 17, Kubernetes, Microsoft Azure for our repo’s build pipelines, Elastic for logging, Kotlin’s on the way, awesome tech stack.
  4. But I’m not gonna talk about those things today. Instead, I’m going to take you on a journey through one of our sprints, what problems we stumbled upon, what we did to improve things and made us work better together
  5. So, we had to implement this functionality in one of our mortgage productss. It’s a law change that after 2021, you don’t have to pay property transfer tax.
  6. As, what we had in the beginning was refinement of and epic or story, and then three weeks passed and we started working on it…. Having forgot about half of the context and details or why we made certain decisions. So we had to ref-refine, or dig up again why we had made certain decisions… huge time waister.
  7. Now, you wonder, there is no planning poker in here. We’ll get to that later. Now, the benefits of this is: Everyone in the team gets a shared understanding of what needs to be done The context is fresh in everyone’s mind so no need to re-iterate what needs to be done at a later point in time
  8. So, tho give you an example, this is how it basically works:
  9. So. Now we’ve got the of the way and can start working on the story itself. It goes excellent!
  10. So, we had to implement this functionality in one of our mortgage productss. It’s a law change that after 2021, you don’t have to pay property transfer tax. So, let’s look at the PO …. Joehoe…. Where are you, PO?
  11. But product owner is nowhere to be found. Sounds familiar? Well, in our case he was on vacation or something like that. But that really hindered our story.
  12. So how to solve this? So, what we did is making sure there is always someone available to answer questions. In our case it’s a backup
  13. Do team code reviews. How
  14. So, We had something like this… a couple of backend programmers, one or two frontend programmers. How, I told you that we all work together on the same story. So, that presented another challenge for us: because sometimes, there is no frontend to be built, either in the current story or the next one. Same goes for frontend-only stories because we had a bunch of backenders sitting “I’m not gonna touch that frontend, stupid stuff” or the other way round “stupid backend stuff”
  15. So, maybe we need to fire everybody and replace them with these kind of guys. Well, until you come to the conclusion that this person doesn’t exist. But what you can do is at least try to get some knowledge across that isn’t in your comfort zone, so other people besides just you can work on an issue. So, we started doing this:
  16. For each frontend task, we started pairing a backender with a frontender. The backender was in the driving seat, while the frontender made sure he didn’t wander astray. Same for backend work, except the roles are reserved. Now of course, you have to be open-minded for this as a developer, otherwise it won’t work. But when this works, you will end up with something like this:
  17. So what happens then, is that the area of knowledge moves closer together. So, now you have frontenders that can handle a lot of backend work, and backenders that can churn out a screen or two. Now, the knowledge doesn’t completely overlap, but that’s not needed. This is what’s actually called T-Shaped developers, who have their core competence, but have no problem tackling issues outside their comfort zone.
  18. Do team code reviews. How
  19. So, let’s talk code reviews. How many of you do code reviews on pull requests? Or peer-to-peer reviews? Not saying that is enough, but…
  20. Do team code reviews. How
  21. It’s a little hard since we have this mortgage product structure that doesn’t really fit into what we’ve been working on the last few months… etc So, do you reconize this? It’s called technical debt.
  22. No, not this guy, although I could think of several code smells that I could use him as an anlogy… I’m talking about this:
  23. This is a quiagmire. I didn’t know what the english word meant, but it means you will venture into this thing and go slower and slower…. until you come to a virtual standstill…. But still moving! So this is even more dangerous.
  24. And technical debt will show up as vulnerabilities on a tool like Sonar, for example. Oh god, 152 code smells,
  25. So we had this: technical debt backlog. Is this familair? Yes, the problem is that you don’t know what technical debt *exactly* holds you back from completing a story in a fast and concise way. So, we started doing it differently: by making sure that we didn’t have any technical debt to begin with. So, how did we solve this?
  26. Audience question: who has technical debt stories on your backlog?
  27. Now sometimes you have to put debt on your backlog, because you depend on another team, or maybe have some expand-contract story you cannot fix immediately, but try to keep that to an absolute minimum. So, now we have tackeled all the technical debt, and things are starting to look really sunny.
  28. …and then we a got a scrum coach! From now on, I will manage your scrum needs! Why don’t you do planning poker? Eh… because we don’t need to. Everybody on the team has been in the team long enough and we’re pretty predicatble at this point. Yeah but how long does something take? Ehr… what about velocity? We can compare it with other teams? Ehr… no… you can’t. Bottom line of this message is: while still keeping an open mind for suggestions, don’t go through the motions of your favourite agile method just because you need to.
  29. Do team code reviews. How
  30. So, let’s talk about team dynamics for a moment. That’s where I want to talk a little bit about team dynamics and team compositon, because it proved crucial for us as a team to be able to work together optimally.
  31. Do team code reviews. How
  32. So with that, I hope I could give you some pointers as to make will make your team fly, hope you enjoyed this presentation, if you have any questions afterwards feel free to look me up as I’ll be here all day attending session, and have a great J-Fall!