SlideShare a Scribd company logo
1 of 16
Download to read offline
HOW TO TURN YOUR DEVELOPERS
IN LESS THAN 6 MONTHS
IN PERFECT SOFTWARE CRAFTSMEN?
BRUNO BOUCARD
MICROSOFT MVP C#
COACH SOFTWARE CRAFTSMAN
tocraft.fr
Thursday, February 5, 2015
WHAT’S UP IN YOUR TEAM?
Agile coaching, what else ?
Developers are tired or upset by the code!
tocraft.fr@brunoboucard
SOFTWARE CRAFTSMANSHIP COACHING?
An idea, please !
@brunoboucard tocraft.fr
Please, we don't look for an other hero!
INSPIRATION FROM SPORT TRAINING
@brunoboucard tocraft.fr
INSPIRATION FROM SPORT TRAINING
@brunoboucard tocraft.fr
LET’S BEGIN BY A TEAM ASSESSMENT
@brunoboucard tocraft.fr
THE PROGRAM IS QUITE BIG
We break down the program in few modules
@brunoboucard tocraft.fr
FOR EACH MODULES
Training Course Exercises
@brunoboucard tocraft.fr
TDD CLEAN CODE
OVERVIEWOVERVIEWOVERVIEWOVERVIEW REDREDREDRED
REFACTORREFACTORREFACTORREFACTOR GREENGREENGREENGREEN
Training 2 months – 2 x 1 hour per Week
@brunoboucard tocraft.fr
REFACTORING BAD SMELLS
Training 2 months – 2 x 1 hour per Week
@brunoboucard tocraft.fr
BEHAVIOR DRIVEN DEVELOPMENT
Training 1 month – 2 x 1 hour per Week
@brunoboucard tocraft.fr
REFACTORING HARDCORE
Training 1 month – 2 x 1 hour per Week
@brunoboucard tocraft.fr
CAN BE LEARNT INDEPENDENTLY
Refactoring Legacy CodeRefactoring Legacy CodeRefactoring Legacy CodeRefactoring Legacy Code
Suppress Bad SmellsSuppress Bad SmellsSuppress Bad SmellsSuppress Bad Smells
Improving the DesignImproving the DesignImproving the DesignImproving the Design
Refactoring Legacy CodeRefactoring Legacy CodeRefactoring Legacy CodeRefactoring Legacy Code
Suppress Bad SmellsSuppress Bad SmellsSuppress Bad SmellsSuppress Bad Smells
Improving the DesignImproving the DesignImproving the DesignImproving the Design
TDDTDDTDDTDD
CleanCleanCleanClean CodeCodeCodeCode
SOLID PrinciplesSOLID PrinciplesSOLID PrinciplesSOLID Principles
DesignDesignDesignDesign GoodGoodGoodGood TestTestTestTest CasesCasesCasesCases
TDDTDDTDDTDD
CleanCleanCleanClean CodeCodeCodeCode
SOLID PrinciplesSOLID PrinciplesSOLID PrinciplesSOLID Principles
DesignDesignDesignDesign GoodGoodGoodGood TestTestTestTest CasesCasesCasesCases
BDDBDDBDDBDD
User Story MappingUser Story MappingUser Story MappingUser Story Mapping
Tree AmigosTree AmigosTree AmigosTree Amigos MeetingMeetingMeetingMeeting
BDDBDDBDDBDD
User Story MappingUser Story MappingUser Story MappingUser Story Mapping
Tree AmigosTree AmigosTree AmigosTree Amigos MeetingMeetingMeetingMeeting
RefactoringRefactoringRefactoringRefactoring HardcoreHardcoreHardcoreHardcore
SuppressSuppressSuppressSuppress dependenciesdependenciesdependenciesdependencies
Introduce Unit TestsIntroduce Unit TestsIntroduce Unit TestsIntroduce Unit Tests
Mock/StubMock/StubMock/StubMock/Stub
RefactoringRefactoringRefactoringRefactoring HardcoreHardcoreHardcoreHardcore
SuppressSuppressSuppressSuppress dependenciesdependenciesdependenciesdependencies
Introduce Unit TestsIntroduce Unit TestsIntroduce Unit TestsIntroduce Unit Tests
Mock/StubMock/StubMock/StubMock/Stub
At the end, all skills are connected
@brunoboucard tocraft.fr
AFTER 6 MONTHS
• Each new feature starts with conversations in 3 amigos modeconversations in 3 amigos modeconversations in 3 amigos modeconversations in 3 amigos mode
• The team authors aaaa code fully business orientedcode fully business orientedcode fully business orientedcode fully business oriented
• The test firsttest firsttest firsttest first is used for the both TDD & BDDthe both TDD & BDDthe both TDD & BDDthe both TDD & BDD
• The team knows how reduce theknows how reduce theknows how reduce theknows how reduce the technical debttechnical debttechnical debttechnical debt
• The users are more confidentusers are more confidentusers are more confidentusers are more confident with the developer team
@brunoboucard tocraft.fr
@brunoboucard
• Coding Dojo
• Constraint Games
• Refactoring Hackathon
• Code Clinic On Production Code
• Communities
• Alt.NET, Software Craftsmanship …
• Coding Game for Programmers
• http://www.codingame.com
TO GO FURTHER WITH FUN
tocraft.fr
@brunoboucard tocraft.fr

More Related Content

Viewers also liked

Fruit shop techdays 2015
Fruit shop techdays 2015Fruit shop techdays 2015
Fruit shop techdays 2015Bruno Boucard
 
Java 8, Streams & Collectors, patterns, performances and parallelization
Java 8, Streams & Collectors, patterns, performances and parallelizationJava 8, Streams & Collectors, patterns, performances and parallelization
Java 8, Streams & Collectors, patterns, performances and parallelizationJosé Paumard
 
Devoxx 2016 - L'odyssée du Continuous Delivery
Devoxx 2016 - L'odyssée du Continuous DeliveryDevoxx 2016 - L'odyssée du Continuous Delivery
Devoxx 2016 - L'odyssée du Continuous DeliveryDiego Lemos
 
Diamond kata agile tour lille
Diamond kata agile tour lilleDiamond kata agile tour lille
Diamond kata agile tour lilleBruno Boucard
 
How to test untestable code
How to test untestable codeHow to test untestable code
How to test untestable codeBruno Boucard
 
How to test untestable code at apidays Paris 2017
How to test untestable code at apidays Paris 2017 How to test untestable code at apidays Paris 2017
How to test untestable code at apidays Paris 2017 Bruno Boucard
 
CQRS without event sourcing
CQRS without event sourcingCQRS without event sourcing
CQRS without event sourcingThomas Pierrain
 
Coder sans peur du changement avec la meme pas mal hexagonal architecture
Coder sans peur du changement avec la meme pas mal hexagonal architectureCoder sans peur du changement avec la meme pas mal hexagonal architecture
Coder sans peur du changement avec la meme pas mal hexagonal architectureThomas Pierrain
 
Les nouveautés de C# 7
Les nouveautés de C# 7Les nouveautés de C# 7
Les nouveautés de C# 7Microsoft
 
Si le tdd est mort alors pratiquons une autopsie mix-it 2015
Si le tdd est mort alors pratiquons une autopsie mix-it 2015Si le tdd est mort alors pratiquons une autopsie mix-it 2015
Si le tdd est mort alors pratiquons une autopsie mix-it 2015Bruno Boucard
 

Viewers also liked (11)

Fruit shop techdays 2015
Fruit shop techdays 2015Fruit shop techdays 2015
Fruit shop techdays 2015
 
Java 8, Streams & Collectors, patterns, performances and parallelization
Java 8, Streams & Collectors, patterns, performances and parallelizationJava 8, Streams & Collectors, patterns, performances and parallelization
Java 8, Streams & Collectors, patterns, performances and parallelization
 
Event storming recipes
Event storming recipesEvent storming recipes
Event storming recipes
 
Devoxx 2016 - L'odyssée du Continuous Delivery
Devoxx 2016 - L'odyssée du Continuous DeliveryDevoxx 2016 - L'odyssée du Continuous Delivery
Devoxx 2016 - L'odyssée du Continuous Delivery
 
Diamond kata agile tour lille
Diamond kata agile tour lilleDiamond kata agile tour lille
Diamond kata agile tour lille
 
How to test untestable code
How to test untestable codeHow to test untestable code
How to test untestable code
 
How to test untestable code at apidays Paris 2017
How to test untestable code at apidays Paris 2017 How to test untestable code at apidays Paris 2017
How to test untestable code at apidays Paris 2017
 
CQRS without event sourcing
CQRS without event sourcingCQRS without event sourcing
CQRS without event sourcing
 
Coder sans peur du changement avec la meme pas mal hexagonal architecture
Coder sans peur du changement avec la meme pas mal hexagonal architectureCoder sans peur du changement avec la meme pas mal hexagonal architecture
Coder sans peur du changement avec la meme pas mal hexagonal architecture
 
Les nouveautés de C# 7
Les nouveautés de C# 7Les nouveautés de C# 7
Les nouveautés de C# 7
 
Si le tdd est mort alors pratiquons une autopsie mix-it 2015
Si le tdd est mort alors pratiquons une autopsie mix-it 2015Si le tdd est mort alors pratiquons une autopsie mix-it 2015
Si le tdd est mort alors pratiquons une autopsie mix-it 2015
 

Similar to How to turn your developers in less than 6 months in perfect software craftsmen

Proclub SE Magang! Summer 2020 Goes to Unicorn! Series: 0. An Introduction
Proclub SE Magang! Summer 2020 Goes to Unicorn! Series: 0. An IntroductionProclub SE Magang! Summer 2020 Goes to Unicorn! Series: 0. An Introduction
Proclub SE Magang! Summer 2020 Goes to Unicorn! Series: 0. An IntroductionWisnu Adi Nurcahyo
 
Lessons learned in rolling out BDDs in a large project
Lessons learned in rolling out BDDs in a large projectLessons learned in rolling out BDDs in a large project
Lessons learned in rolling out BDDs in a large projectCampus Interaction
 
Moving to tdd bdd
Moving to tdd bddMoving to tdd bdd
Moving to tdd bddKim Carter
 
ITCamp 2013 - Florin Coros - Driving Your Team Towards Code Quality
ITCamp 2013 - Florin Coros - Driving Your Team Towards Code QualityITCamp 2013 - Florin Coros - Driving Your Team Towards Code Quality
ITCamp 2013 - Florin Coros - Driving Your Team Towards Code QualityITCamp
 
Fronteer: How to be Worth Millions
Fronteer: How to be Worth MillionsFronteer: How to be Worth Millions
Fronteer: How to be Worth MillionsRubZie
 
Developing an Ember Test Strategy - EmberConf 2019
Developing an Ember Test Strategy - EmberConf 2019Developing an Ember Test Strategy - EmberConf 2019
Developing an Ember Test Strategy - EmberConf 2019Todd Jordan
 
2020 04 04 NetCoreConf - Machine Learning.Net
2020 04 04 NetCoreConf - Machine Learning.Net2020 04 04 NetCoreConf - Machine Learning.Net
2020 04 04 NetCoreConf - Machine Learning.NetBruno Capuano
 
JsDay - It's not you, It's me (or how to avoid being coupled with a Javascrip...
JsDay - It's not you, It's me (or how to avoid being coupled with a Javascrip...JsDay - It's not you, It's me (or how to avoid being coupled with a Javascrip...
JsDay - It's not you, It's me (or how to avoid being coupled with a Javascrip...Marco Cedaro
 
TDD BDD PHP - Sviluppo guidato dai test in PHP con phpspec
TDD BDD PHP - Sviluppo guidato dai test in PHP con phpspecTDD BDD PHP - Sviluppo guidato dai test in PHP con phpspec
TDD BDD PHP - Sviluppo guidato dai test in PHP con phpspecPatrick Luca Fazzi
 
Collaboration in BDD is not a Given - Sydney Agile BA & PO Meetup - 18-11-2015
Collaboration in BDD is not a Given - Sydney Agile BA & PO Meetup - 18-11-2015Collaboration in BDD is not a Given - Sydney Agile BA & PO Meetup - 18-11-2015
Collaboration in BDD is not a Given - Sydney Agile BA & PO Meetup - 18-11-2015Ryan McKergow
 
Testing and beyond at startups
Testing and beyond at startupsTesting and beyond at startups
Testing and beyond at startupsMona Soni
 
Agile Development in .NET
Agile Development in .NETAgile Development in .NET
Agile Development in .NETdanhermes
 
Pair Programming, TDD and other impractical things
Pair Programming, TDD and other impractical thingsPair Programming, TDD and other impractical things
Pair Programming, TDD and other impractical thingsMarcello Duarte
 
10 Ways To Improve Your Code( Neal Ford)
10  Ways To  Improve  Your  Code( Neal  Ford)10  Ways To  Improve  Your  Code( Neal  Ford)
10 Ways To Improve Your Code( Neal Ford)guestebde
 
How Iterating Faster Builds Better Product by Capital One PM
How Iterating Faster Builds Better Product by Capital One PMHow Iterating Faster Builds Better Product by Capital One PM
How Iterating Faster Builds Better Product by Capital One PMProduct School
 
Branching and Merging Practices
Branching and Merging Practices Branching and Merging Practices
Branching and Merging Practices Rajesh Kumar
 
Measure and Improve code quality. Using automation.
Measure and Improve code quality.  Using automation.Measure and Improve code quality.  Using automation.
Measure and Improve code quality. Using automation.Vladimir Korolev
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme ProgrammingKnoldus Inc.
 

Similar to How to turn your developers in less than 6 months in perfect software craftsmen (20)

Proclub SE Magang! Summer 2020 Goes to Unicorn! Series: 0. An Introduction
Proclub SE Magang! Summer 2020 Goes to Unicorn! Series: 0. An IntroductionProclub SE Magang! Summer 2020 Goes to Unicorn! Series: 0. An Introduction
Proclub SE Magang! Summer 2020 Goes to Unicorn! Series: 0. An Introduction
 
Lessons learned in rolling out BDDs in a large project
Lessons learned in rolling out BDDs in a large projectLessons learned in rolling out BDDs in a large project
Lessons learned in rolling out BDDs in a large project
 
Moving to tdd bdd
Moving to tdd bddMoving to tdd bdd
Moving to tdd bdd
 
ITCamp 2013 - Florin Coros - Driving Your Team Towards Code Quality
ITCamp 2013 - Florin Coros - Driving Your Team Towards Code QualityITCamp 2013 - Florin Coros - Driving Your Team Towards Code Quality
ITCamp 2013 - Florin Coros - Driving Your Team Towards Code Quality
 
10 Ways To Improve Your Code
10 Ways To Improve Your Code10 Ways To Improve Your Code
10 Ways To Improve Your Code
 
Fronteer: How to be Worth Millions
Fronteer: How to be Worth MillionsFronteer: How to be Worth Millions
Fronteer: How to be Worth Millions
 
Developing an Ember Test Strategy - EmberConf 2019
Developing an Ember Test Strategy - EmberConf 2019Developing an Ember Test Strategy - EmberConf 2019
Developing an Ember Test Strategy - EmberConf 2019
 
2020 04 04 NetCoreConf - Machine Learning.Net
2020 04 04 NetCoreConf - Machine Learning.Net2020 04 04 NetCoreConf - Machine Learning.Net
2020 04 04 NetCoreConf - Machine Learning.Net
 
JsDay - It's not you, It's me (or how to avoid being coupled with a Javascrip...
JsDay - It's not you, It's me (or how to avoid being coupled with a Javascrip...JsDay - It's not you, It's me (or how to avoid being coupled with a Javascrip...
JsDay - It's not you, It's me (or how to avoid being coupled with a Javascrip...
 
TDD BDD PHP - Sviluppo guidato dai test in PHP con phpspec
TDD BDD PHP - Sviluppo guidato dai test in PHP con phpspecTDD BDD PHP - Sviluppo guidato dai test in PHP con phpspec
TDD BDD PHP - Sviluppo guidato dai test in PHP con phpspec
 
Tec314
Tec314Tec314
Tec314
 
Collaboration in BDD is not a Given - Sydney Agile BA & PO Meetup - 18-11-2015
Collaboration in BDD is not a Given - Sydney Agile BA & PO Meetup - 18-11-2015Collaboration in BDD is not a Given - Sydney Agile BA & PO Meetup - 18-11-2015
Collaboration in BDD is not a Given - Sydney Agile BA & PO Meetup - 18-11-2015
 
Testing and beyond at startups
Testing and beyond at startupsTesting and beyond at startups
Testing and beyond at startups
 
Agile Development in .NET
Agile Development in .NETAgile Development in .NET
Agile Development in .NET
 
Pair Programming, TDD and other impractical things
Pair Programming, TDD and other impractical thingsPair Programming, TDD and other impractical things
Pair Programming, TDD and other impractical things
 
10 Ways To Improve Your Code( Neal Ford)
10  Ways To  Improve  Your  Code( Neal  Ford)10  Ways To  Improve  Your  Code( Neal  Ford)
10 Ways To Improve Your Code( Neal Ford)
 
How Iterating Faster Builds Better Product by Capital One PM
How Iterating Faster Builds Better Product by Capital One PMHow Iterating Faster Builds Better Product by Capital One PM
How Iterating Faster Builds Better Product by Capital One PM
 
Branching and Merging Practices
Branching and Merging Practices Branching and Merging Practices
Branching and Merging Practices
 
Measure and Improve code quality. Using automation.
Measure and Improve code quality.  Using automation.Measure and Improve code quality.  Using automation.
Measure and Improve code quality. Using automation.
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme Programming
 

Recently uploaded

TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Intelisync
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyFrank van der Linden
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 

Recently uploaded (20)

TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The Ugly
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 

How to turn your developers in less than 6 months in perfect software craftsmen

  • 1. HOW TO TURN YOUR DEVELOPERS IN LESS THAN 6 MONTHS IN PERFECT SOFTWARE CRAFTSMEN? BRUNO BOUCARD MICROSOFT MVP C# COACH SOFTWARE CRAFTSMAN tocraft.fr Thursday, February 5, 2015
  • 2. WHAT’S UP IN YOUR TEAM? Agile coaching, what else ? Developers are tired or upset by the code! tocraft.fr@brunoboucard
  • 3. SOFTWARE CRAFTSMANSHIP COACHING? An idea, please ! @brunoboucard tocraft.fr
  • 4. Please, we don't look for an other hero! INSPIRATION FROM SPORT TRAINING @brunoboucard tocraft.fr
  • 5. INSPIRATION FROM SPORT TRAINING @brunoboucard tocraft.fr
  • 6. LET’S BEGIN BY A TEAM ASSESSMENT @brunoboucard tocraft.fr
  • 7. THE PROGRAM IS QUITE BIG We break down the program in few modules @brunoboucard tocraft.fr
  • 8. FOR EACH MODULES Training Course Exercises @brunoboucard tocraft.fr
  • 9. TDD CLEAN CODE OVERVIEWOVERVIEWOVERVIEWOVERVIEW REDREDREDRED REFACTORREFACTORREFACTORREFACTOR GREENGREENGREENGREEN Training 2 months – 2 x 1 hour per Week @brunoboucard tocraft.fr
  • 10. REFACTORING BAD SMELLS Training 2 months – 2 x 1 hour per Week @brunoboucard tocraft.fr
  • 11. BEHAVIOR DRIVEN DEVELOPMENT Training 1 month – 2 x 1 hour per Week @brunoboucard tocraft.fr
  • 12. REFACTORING HARDCORE Training 1 month – 2 x 1 hour per Week @brunoboucard tocraft.fr
  • 13. CAN BE LEARNT INDEPENDENTLY Refactoring Legacy CodeRefactoring Legacy CodeRefactoring Legacy CodeRefactoring Legacy Code Suppress Bad SmellsSuppress Bad SmellsSuppress Bad SmellsSuppress Bad Smells Improving the DesignImproving the DesignImproving the DesignImproving the Design Refactoring Legacy CodeRefactoring Legacy CodeRefactoring Legacy CodeRefactoring Legacy Code Suppress Bad SmellsSuppress Bad SmellsSuppress Bad SmellsSuppress Bad Smells Improving the DesignImproving the DesignImproving the DesignImproving the Design TDDTDDTDDTDD CleanCleanCleanClean CodeCodeCodeCode SOLID PrinciplesSOLID PrinciplesSOLID PrinciplesSOLID Principles DesignDesignDesignDesign GoodGoodGoodGood TestTestTestTest CasesCasesCasesCases TDDTDDTDDTDD CleanCleanCleanClean CodeCodeCodeCode SOLID PrinciplesSOLID PrinciplesSOLID PrinciplesSOLID Principles DesignDesignDesignDesign GoodGoodGoodGood TestTestTestTest CasesCasesCasesCases BDDBDDBDDBDD User Story MappingUser Story MappingUser Story MappingUser Story Mapping Tree AmigosTree AmigosTree AmigosTree Amigos MeetingMeetingMeetingMeeting BDDBDDBDDBDD User Story MappingUser Story MappingUser Story MappingUser Story Mapping Tree AmigosTree AmigosTree AmigosTree Amigos MeetingMeetingMeetingMeeting RefactoringRefactoringRefactoringRefactoring HardcoreHardcoreHardcoreHardcore SuppressSuppressSuppressSuppress dependenciesdependenciesdependenciesdependencies Introduce Unit TestsIntroduce Unit TestsIntroduce Unit TestsIntroduce Unit Tests Mock/StubMock/StubMock/StubMock/Stub RefactoringRefactoringRefactoringRefactoring HardcoreHardcoreHardcoreHardcore SuppressSuppressSuppressSuppress dependenciesdependenciesdependenciesdependencies Introduce Unit TestsIntroduce Unit TestsIntroduce Unit TestsIntroduce Unit Tests Mock/StubMock/StubMock/StubMock/Stub At the end, all skills are connected @brunoboucard tocraft.fr
  • 14. AFTER 6 MONTHS • Each new feature starts with conversations in 3 amigos modeconversations in 3 amigos modeconversations in 3 amigos modeconversations in 3 amigos mode • The team authors aaaa code fully business orientedcode fully business orientedcode fully business orientedcode fully business oriented • The test firsttest firsttest firsttest first is used for the both TDD & BDDthe both TDD & BDDthe both TDD & BDDthe both TDD & BDD • The team knows how reduce theknows how reduce theknows how reduce theknows how reduce the technical debttechnical debttechnical debttechnical debt • The users are more confidentusers are more confidentusers are more confidentusers are more confident with the developer team @brunoboucard tocraft.fr
  • 15. @brunoboucard • Coding Dojo • Constraint Games • Refactoring Hackathon • Code Clinic On Production Code • Communities • Alt.NET, Software Craftsmanship … • Coding Game for Programmers • http://www.codingame.com TO GO FURTHER WITH FUN tocraft.fr