SlideShare ist ein Scribd-Unternehmen logo
1 von 32
Downloaden Sie, um offline zu lesen
1OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
COMMENT ÊTRE TECH LEAD
DANS UNE PIZZA TEAM XXL
SANS FINIR SOUS L’EAU ?
Damien Beaufils
@damienbeaufils
2OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
QUI SUIS-JE ?
Damien Beaufils
Développeur passionné
#AgileTourLille #TechLead @damienbeaufils
3OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
OBJECTIF DE CETTE CONFÉRENCE
Quels rituels et pratiques de développement
quand on est une équipe > 10 personnes ?
Quel est rôle du Tech Lead
dans une équipe de cette taille ?
#AgileTourLille #TechLead @damienbeaufils
4OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
LE TECH LEAD : UN RÔLE AU SERVICE DE L’ÉQUIPE
☉ Guide son équipe vers l’excellence
☉ Porte la vision technique du produit
☉ Aide à la progression de l’équipe
☉ Favorise l’autonomie de l’équipe
☉ Passe au moins 30% de son temps à coder
☉ Idéalement un référent sur les pratiques
Software Craftsmanship
☉ N’est pas un super-héros ou un dictateur
#AgileTourLille #TechLead @damienbeaufils
5OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
CONTEXTE DU RETOUR D’EXPÉRIENCE
☉ Site web grand public
☉ Projet démarré depuis plus d’1 an, cycle itératif de 2 semaines
☉ Équipe composée de 10 développeur·euse·s + 1 Tech Lead
☉ Équipe mixte
> Homme / Femme
> Client / Prestataire
> Front / Back / OPS
#AgileTourLille #TechLead @damienbeaufils
6OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
ÉVOLUTION DU NOMBRE DE LIENS DE COMMUNICATION EN
FONCTION DE LA TAILLE DE L’ÉQUIPE
5 personnes
10 liens
3 personnes
3 liens
10 personnes
45 liens
#AgileTourLille #TechLead @damienbeaufils
7OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
PREMIÈRE SEMAINE : PHASE D’OBSERVATION
Observer en binômant,
tout en taisant son égo et ses réflexes
#AgileTourLille #TechLead @damienbeaufils
8OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
PREMIERS SIGNAUX FAIBLES (1/2)
☉ DES FAITS
> Commits le soir tard voire la nuit
> Une moyenne de 5 livrables par itération
> Nombre de bugs dans le backlog en augmentation
#AgileTourLille #TechLead @damienbeaufils
9OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
PREMIERS SIGNAUX FAIBLES (2/2)
☉ DES DIXITS
> « Le build est rouge mais c’est normal. Relance le et ça devrait
passer. »
> « Tester unitairement c’est compliqué sur ce projet. »
> « On reçoit tellement de mails de Jenkins qu’ils vont direct dans ma
corbeille. »
> « Hier j’ai passé mon après-midi à essayer de corriger le build. »
#AgileTourLille #TechLead @damienbeaufils
10OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
PROBLÉMATIQUES
☉ La propriété du code n’était pas collective
☉ Les pratiques de développement étaient hétérogènes
☉ La qualité du produit n’était ni mesurée ni suivie
#AgileTourLille #TechLead @damienbeaufils
11OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
COMMENT AMÉLIORER LA PROPRIÉTÉ COLLECTIVE DU CODE (1/3)
☉ RÉTROSPECTIVE TECHNIQUE
> 1 heure, tous les lundis
> Objectif : partager le maximum de
connaissances en un minimum de
temps
#AgileTourLille #TechLead @damienbeaufils
12OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
COMMENT AMÉLIORER LA PROPRIÉTÉ COLLECTIVE DU CODE (2/3)
☉ STANDARDS DE CODE
> Affichés sur une “Table de la loi”
> Doivent pouvoir être affichés sur un
mur et être compris sans difficulté
#AgileTourLille #TechLead @damienbeaufils
13OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
COMMENT AMÉLIORER LA PROPRIÉTÉ COLLECTIVE DU CODE (3/3)
☉ REVUE DE CODE
> Obligatoire et bloquante
> Agnostique de la techno
> Présentation orale des retours à l’auteur·e
☉ PAIR / MOB PROGRAMMING
> Obligatoire quand on travaille sur du code legacy
#AgileTourLille #TechLead @damienbeaufils
14OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
PROPRIÉTÉ COLLECTIVE DU CODE : QUEL INDICATEUR ?
Pourquoi avoir une propriété du code collective ?
Comment savoir si c’est le cas ?
N’importe qui peut partir en congés
n’importe quand
(Même le Tech Lead)
#AgileTourLille #TechLead @damienbeaufils
15OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
PROBLÉMATIQUES
La propriété du code n’était pas collective
Les pratiques de développement étaient hétérogènes
La qualité du produit n’était ni mesurée ni suivie
#AgileTourLille #TechLead @damienbeaufils
16OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
QUID DE LA QUALITÉ ?
On ne pilote que ce qu’on mesure,
mais quel aspect de la qualité mesurer ?
Le nombre de tests automatisés
et leurs typologies
#AgileTourLille #TechLead @damienbeaufils
17OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
LE MODÈLE DE LA PYRAMIDE DES TESTS
#AgileTourLille #TechLead @damienbeaufils
18OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
ATELIER AUTOUR DE LA STRATÉGIE DE TESTS AUTOMATISÉS
☉ DÉFINITION D’UN VOCABULAIRE COMMUN
> C’est quoi un TU ? Un TI ? Un TF ?
> Quels objectifs et intentions via ces tests ?
> Comment je les reconnais dans le code ?
> Est-ce que je peux tester autrement ? (i.e. plus bas dans la pyramide)
☉ LA COUVERTURE DE CODE
> Choix de ne pas la mesurer
#AgileTourLille #TechLead @damienbeaufils
19OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
PREMIÈRE MESURE DE LA PYRAMIDE DES TESTS EN JANVIER 2016
}
}
}
TF : 29%
TI : 53%
TU : 18%
© 2016 Starbound, Chucklefish Ltd
#AgileTourLille #TechLead @damienbeaufils
20OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
TEST DRIVEN DEVELOPMENT
☉ INVESTISSEMENT DANS UNE FORMATION À LA PRATIQUE DE TDD
> Pour toute l’équipe, quel que soit le niveau
> Formation de 3 jours
> Être capable de démontrer le ROI de TDD par des données factuelles
#AgileTourLille #TechLead @damienbeaufils
21OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
TEST DRIVEN DEVELOPMENT
☉ MAIS UNE FORMATION, ÇA COÛTE CHER ! ET MES FONCTIONNALITÉS ?!
> N est le nombre de personnes à former
> Si on passe 3 jours pour former individuellement chaque personne par de
l’accompagnement, cela coûte dans le meilleur des cas (3+3)xN j/h
> À l'opposé, si on fait une formation collective de 3 jours, cela coûterait 3+3xN j/h
> Former 10 personnes à TDD par une formation collective coûte donc environ
2 fois moins cher que de les former individuellement par de l’accompagnement
#AgileTourLille #TechLead @damienbeaufils
22OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
LE TECH LEAD : UN MENTOR
☉ MENTORER CHAQUE DÉVELOPPEUR·EUSE
VIA DES ONE-ON-ONE (O3)
> 30 minutes par personne, par itération
> Un moment privilégié d’échange, ritualisé
> Objectifs
+ Récupérer de l’information
+ Donner du feedback
+ Rechercher des axes de progression
+ Déléguer
#AgileTourLille #TechLead @damienbeaufils
23OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
ÊTRE ATTENTIF À LA COMMUNICATION DANS L’ÉQUIPE
☉ RECADRER LES DÉFAUTS DE COMMUNICATION
> Ex: “Ton code” vs. “Le code”
> Principes Egoless programming
☉ QUAND ON TRAVAILLE DANS UNE ÉQUIPE MIXTE HOMME/FEMME,
AVOIR UN DISCOURS APPELANT À LA DIVERSITÉ
> Ex: à l’oral, éviter le “Allez les gars !”. Proposition : “Allez l’équipe !”
#AgileTourLille #TechLead @damienbeaufils
24OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
PROBLÉMATIQUES
La propriété du code n’était pas collective
Les pratiques de développement étaient hétérogènes
La qualité du produit n’était ni mesurée ni suivie
#AgileTourLille #TechLead @damienbeaufils
25OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
QUID DES INDICATEURS ?
Le nombre de tests automatisés
et leurs typologies
Suivre et afficher ces indicateurs
#AgileTourLille #TechLead @damienbeaufils
26OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
MESURE DE LA PYRAMIDE DES TESTS
Formation
TDD
Instauration des
nouvelles pratiques
Formation
TDD
Instauration des
nouvelles pratiques
TU
TI
TF
#AgileTourLille #TechLead @damienbeaufils
27OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
MESURE DE LA PYRAMIDE DES TESTS
Formation
TDD
Instauration des
nouvelles pratiques
Formation
TDD
Instauration des
nouvelles pratiques
TU
TI
TF
#AgileTourLille #TechLead @damienbeaufils
28OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
L’IMPACT AU QUOTIDIEN
~200 tests en ~6 minutes
~1000 tests en ~3 minutes
~3000 tests en ~5 secondes
> À chaque fois qu’un·e développeur·euse fait évoluer le code, une majorité de
l’application est vérifiée automatiquement en moins de 5 secondes par des
tests unitaires, afin de garantir la non-régression
> Si l’équipe avait couvert tous les cas métiers par des tests fonctionnels, chaque
développeur·euse devrait attendre 120 minutes à chaque portion de code modifiée
> Les membres de l’équipe lanceraient alors les tests le midi et le soir, et passeraient
probablement ½ journée à débugger ce qui a été codé la ½ journée précédente
#AgileTourLille #TechLead @damienbeaufils
29OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
L'ÉVOLUTION DE LA QUALITÉ AUTREMENT QUE PAR LA TECHNIQUE
Formation
TDD
Formation
TDD
Formation
TDD
#AgileTourLille #TechLead @damienbeaufils
30OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
PROBLÉMATIQUES
La propriété du code n’était pas collective
Les pratiques de développement étaient hétérogènes
La qualité du produit n’était ni mesurée ni suivie
#AgileTourLille #TechLead @damienbeaufils
31OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
TAKE-AWAY
☉ Cherchez à avoir une propriété de
code collective grâce à des rituels
et des pratiques de partage
☉ Définissez un ou plusieurs aspects
de la qualité, mesurez-les,
suivez-les, affichez-les
☉ Mentorez et déléguez grâce à des
One-on-One ritualisés
#AgileTourLille #TechLead @damienbeaufils
32OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
POUR ALLER PLUS LOIN
☉ Script de mesure de la pyramide des tests :
github.com/damienbeaufils/tests-pyramid-calculator
☉ Culture Code : un livre collectif sur la culture et
les pratiques Software Craftsmanship
☉ Disponible gratuitement en téléchargement :
www.octo.com/fr/publications/20-culture-code
#AgileTourLille #TechLead @damienbeaufils

Weitere ähnliche Inhalte

Was ist angesagt?

Agile En Seine 2017 - Retour d'expérience France Télévisions - Passer de fair...
Agile En Seine 2017 - Retour d'expérience France Télévisions - Passer de fair...Agile En Seine 2017 - Retour d'expérience France Télévisions - Passer de fair...
Agile En Seine 2017 - Retour d'expérience France Télévisions - Passer de fair...Jean-Pierre Lambert
 
Devops chez Voyages-Sncf.com
Devops chez Voyages-Sncf.comDevops chez Voyages-Sncf.com
Devops chez Voyages-Sncf.comantony_guilloteau
 
Gestion de projets agiles avec scrum
Gestion de projets agiles avec scrumGestion de projets agiles avec scrum
Gestion de projets agiles avec scrumPierre E. NEIS
 
Rex d'une vague ScrumBan au meetup Culture Kanban
Rex d'une vague ScrumBan au meetup Culture KanbanRex d'une vague ScrumBan au meetup Culture Kanban
Rex d'une vague ScrumBan au meetup Culture KanbanCouthaïer FARFRA
 
Les Bases des Méthodes Lean/Agile
Les Bases des Méthodes Lean/AgileLes Bases des Méthodes Lean/Agile
Les Bases des Méthodes Lean/AgileAgileCoach.net
 
Développer en mode kick-ass à Devoxx France
Développer en mode kick-ass à Devoxx FranceDévelopper en mode kick-ass à Devoxx France
Développer en mode kick-ass à Devoxx FranceSamuel Le Berrigaud
 
Devops, un tour d'horizon - Eutelsat 2018
Devops, un tour d'horizon -  Eutelsat 2018Devops, un tour d'horizon -  Eutelsat 2018
Devops, un tour d'horizon - Eutelsat 2018Ludovic Piot
 
Gestion de projets agiles avec scrum actiskills
Gestion de projets agiles avec scrum actiskillsGestion de projets agiles avec scrum actiskills
Gestion de projets agiles avec scrum actiskillsPierre E. NEIS
 
Reprise sur incident - ConFoo 2012
Reprise sur incident - ConFoo 2012Reprise sur incident - ConFoo 2012
Reprise sur incident - ConFoo 2012Jean-Marc Fontaine
 
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...ENSIBS
 
Guillaume St Etienne : Services et Contrats Agiles
Guillaume St Etienne : Services et Contrats AgilesGuillaume St Etienne : Services et Contrats Agiles
Guillaume St Etienne : Services et Contrats Agilesagiletourbordeaux
 
Scrum - Une méthode agile sous la loupe ...
Scrum  - Une méthode agile sous la loupe ...Scrum  - Une méthode agile sous la loupe ...
Scrum - Une méthode agile sous la loupe ...Bilel McSam
 
Mesurer scrum avec Roboscrum
Mesurer scrum avec RoboscrumMesurer scrum avec Roboscrum
Mesurer scrum avec RoboscrumPierre E. NEIS
 
Sur le chemin de la qualité - GDG Lille
Sur le chemin de la qualité - GDG LilleSur le chemin de la qualité - GDG Lille
Sur le chemin de la qualité - GDG LilleJulien Jakubowski
 
Qualité de code, sonar, la dette
Qualité de code, sonar, la detteQualité de code, sonar, la dette
Qualité de code, sonar, la detteNovencia Groupe
 
Présentation scrum pour cours leeaarn
Présentation scrum pour cours leeaarnPrésentation scrum pour cours leeaarn
Présentation scrum pour cours leeaarnGautier Pialat
 

Was ist angesagt? (20)

Agile En Seine 2017 - Retour d'expérience France Télévisions - Passer de fair...
Agile En Seine 2017 - Retour d'expérience France Télévisions - Passer de fair...Agile En Seine 2017 - Retour d'expérience France Télévisions - Passer de fair...
Agile En Seine 2017 - Retour d'expérience France Télévisions - Passer de fair...
 
Devops chez Voyages-Sncf.com
Devops chez Voyages-Sncf.comDevops chez Voyages-Sncf.com
Devops chez Voyages-Sncf.com
 
Scrum xp
Scrum xpScrum xp
Scrum xp
 
Gestion de projets agiles avec scrum
Gestion de projets agiles avec scrumGestion de projets agiles avec scrum
Gestion de projets agiles avec scrum
 
2011 XKE - Kanban in action
2011 XKE - Kanban in action2011 XKE - Kanban in action
2011 XKE - Kanban in action
 
#10 convergence
#10 convergence#10 convergence
#10 convergence
 
Rex d'une vague ScrumBan au meetup Culture Kanban
Rex d'une vague ScrumBan au meetup Culture KanbanRex d'une vague ScrumBan au meetup Culture Kanban
Rex d'une vague ScrumBan au meetup Culture Kanban
 
Les Bases des Méthodes Lean/Agile
Les Bases des Méthodes Lean/AgileLes Bases des Méthodes Lean/Agile
Les Bases des Méthodes Lean/Agile
 
Développer en mode kick-ass à Devoxx France
Développer en mode kick-ass à Devoxx FranceDévelopper en mode kick-ass à Devoxx France
Développer en mode kick-ass à Devoxx France
 
Devops, un tour d'horizon - Eutelsat 2018
Devops, un tour d'horizon -  Eutelsat 2018Devops, un tour d'horizon -  Eutelsat 2018
Devops, un tour d'horizon - Eutelsat 2018
 
Gestion de projets agiles avec scrum actiskills
Gestion de projets agiles avec scrum actiskillsGestion de projets agiles avec scrum actiskills
Gestion de projets agiles avec scrum actiskills
 
Reprise sur incident - ConFoo 2012
Reprise sur incident - ConFoo 2012Reprise sur incident - ConFoo 2012
Reprise sur incident - ConFoo 2012
 
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
 
Guillaume St Etienne : Services et Contrats Agiles
Guillaume St Etienne : Services et Contrats AgilesGuillaume St Etienne : Services et Contrats Agiles
Guillaume St Etienne : Services et Contrats Agiles
 
Scrum - Une méthode agile sous la loupe ...
Scrum  - Une méthode agile sous la loupe ...Scrum  - Une méthode agile sous la loupe ...
Scrum - Une méthode agile sous la loupe ...
 
Mesurer scrum avec Roboscrum
Mesurer scrum avec RoboscrumMesurer scrum avec Roboscrum
Mesurer scrum avec Roboscrum
 
Methode Agile
Methode Agile Methode Agile
Methode Agile
 
Sur le chemin de la qualité - GDG Lille
Sur le chemin de la qualité - GDG LilleSur le chemin de la qualité - GDG Lille
Sur le chemin de la qualité - GDG Lille
 
Qualité de code, sonar, la dette
Qualité de code, sonar, la detteQualité de code, sonar, la dette
Qualité de code, sonar, la dette
 
Présentation scrum pour cours leeaarn
Présentation scrum pour cours leeaarnPrésentation scrum pour cours leeaarn
Présentation scrum pour cours leeaarn
 

Ähnlich wie Comment être Tech Lead dans une pizza team XXL sans finir sous l'eau ?

NDepend 5 en action par son créateur
NDepend 5 en action par son créateurNDepend 5 en action par son créateur
NDepend 5 en action par son créateurMicrosoft
 
Développement artisanal d'un logiciel en 20 itérations - Paris Web 2016
Développement artisanal d'un logiciel en 20 itérations - Paris Web 2016Développement artisanal d'un logiciel en 20 itérations - Paris Web 2016
Développement artisanal d'un logiciel en 20 itérations - Paris Web 2016Damien Beaufils
 
Des conférences à voir et à revoir
Des conférences à voir et à revoirDes conférences à voir et à revoir
Des conférences à voir et à revoirAnthony Maison
 
Human Talks Grenoble - 11/12/2012 - TDD
Human Talks Grenoble - 11/12/2012 - TDDHuman Talks Grenoble - 11/12/2012 - TDD
Human Talks Grenoble - 11/12/2012 - TDDXavier NOPRE
 
Happy dev ... & ops
Happy dev ... & opsHappy dev ... & ops
Happy dev ... & opsQuentin Adam
 
Développer en mode kick-ass à Scrum Day
Développer en mode kick-ass à Scrum DayDévelopper en mode kick-ass à Scrum Day
Développer en mode kick-ass à Scrum DaySamuel Le Berrigaud
 
Synergies entre DEV et SEO (SeoCampus 2019)
Synergies entre DEV et SEO (SeoCampus 2019)Synergies entre DEV et SEO (SeoCampus 2019)
Synergies entre DEV et SEO (SeoCampus 2019)LVLUP
 
Synergie entre développeur et consultant SEO - Didier Sampaolo - SEOcamp'us P...
Synergie entre développeur et consultant SEO - Didier Sampaolo - SEOcamp'us P...Synergie entre développeur et consultant SEO - Didier Sampaolo - SEOcamp'us P...
Synergie entre développeur et consultant SEO - Didier Sampaolo - SEOcamp'us P...SEO CAMP
 
Agile Tour Nantes 2014 - Tdd, le meilleur moyen d'écrire du code testable
Agile Tour Nantes 2014 - Tdd, le meilleur moyen d'écrire du code testableAgile Tour Nantes 2014 - Tdd, le meilleur moyen d'écrire du code testable
Agile Tour Nantes 2014 - Tdd, le meilleur moyen d'écrire du code testableAssociation Agile Nantes
 
Comment être agile dans un contexte non lié aux TI ?
Comment être agile dans un contexte non lié aux TI ?Comment être agile dans un contexte non lié aux TI ?
Comment être agile dans un contexte non lié aux TI ?Pyxis Technologies
 
Devops - vision et pratiques
Devops - vision et pratiquesDevops - vision et pratiques
Devops - vision et pratiquesJoseph Glorieux
 
Afterwork Devops : vision et pratiques
Afterwork Devops : vision et pratiquesAfterwork Devops : vision et pratiques
Afterwork Devops : vision et pratiquesOCTO Technology Suisse
 
Vincent Biret Societic devops Sherbrooke
Vincent Biret Societic devops SherbrookeVincent Biret Societic devops Sherbrooke
Vincent Biret Societic devops SherbrookeVincent Biret
 
L'agilité en entreprise avec TFS 2013
L'agilité en entreprise avec TFS 2013L'agilité en entreprise avec TFS 2013
L'agilité en entreprise avec TFS 2013Microsoft
 
Le DevOps : La clé de la transformation digitale ?
Le DevOps : La clé de la transformation digitale ?Le DevOps : La clé de la transformation digitale ?
Le DevOps : La clé de la transformation digitale ?Amico Fabien
 
dev et admin sys : une cohabitation simplifiée
dev et admin sys : une cohabitation simplifiéedev et admin sys : une cohabitation simplifiée
dev et admin sys : une cohabitation simplifiéeNicolas Silberman
 
DevSecOps : de la théorie à la pratique
DevSecOps : de la théorie à la pratiqueDevSecOps : de la théorie à la pratique
DevSecOps : de la théorie à la pratiquebertrandmeens
 
CARA - Software Craftsmanship : le chaînon manquant de l’agilité ?
CARA - Software Craftsmanship : le chaînon manquant de l’agilité ?CARA - Software Craftsmanship : le chaînon manquant de l’agilité ?
CARA - Software Craftsmanship : le chaînon manquant de l’agilité ?florentpellet
 
Agiliser un département Marketing d'une société de conseil
Agiliser un département Marketing d'une société de conseilAgiliser un département Marketing d'une société de conseil
Agiliser un département Marketing d'une société de conseilPublicis Sapient Engineering
 
Pratiques de développement pour équipes Agile
Pratiques de développement pour équipes AgilePratiques de développement pour équipes Agile
Pratiques de développement pour équipes AgileAgile Tour 2009 Québec
 

Ähnlich wie Comment être Tech Lead dans une pizza team XXL sans finir sous l'eau ? (20)

NDepend 5 en action par son créateur
NDepend 5 en action par son créateurNDepend 5 en action par son créateur
NDepend 5 en action par son créateur
 
Développement artisanal d'un logiciel en 20 itérations - Paris Web 2016
Développement artisanal d'un logiciel en 20 itérations - Paris Web 2016Développement artisanal d'un logiciel en 20 itérations - Paris Web 2016
Développement artisanal d'un logiciel en 20 itérations - Paris Web 2016
 
Des conférences à voir et à revoir
Des conférences à voir et à revoirDes conférences à voir et à revoir
Des conférences à voir et à revoir
 
Human Talks Grenoble - 11/12/2012 - TDD
Human Talks Grenoble - 11/12/2012 - TDDHuman Talks Grenoble - 11/12/2012 - TDD
Human Talks Grenoble - 11/12/2012 - TDD
 
Happy dev ... & ops
Happy dev ... & opsHappy dev ... & ops
Happy dev ... & ops
 
Développer en mode kick-ass à Scrum Day
Développer en mode kick-ass à Scrum DayDévelopper en mode kick-ass à Scrum Day
Développer en mode kick-ass à Scrum Day
 
Synergies entre DEV et SEO (SeoCampus 2019)
Synergies entre DEV et SEO (SeoCampus 2019)Synergies entre DEV et SEO (SeoCampus 2019)
Synergies entre DEV et SEO (SeoCampus 2019)
 
Synergie entre développeur et consultant SEO - Didier Sampaolo - SEOcamp'us P...
Synergie entre développeur et consultant SEO - Didier Sampaolo - SEOcamp'us P...Synergie entre développeur et consultant SEO - Didier Sampaolo - SEOcamp'us P...
Synergie entre développeur et consultant SEO - Didier Sampaolo - SEOcamp'us P...
 
Agile Tour Nantes 2014 - Tdd, le meilleur moyen d'écrire du code testable
Agile Tour Nantes 2014 - Tdd, le meilleur moyen d'écrire du code testableAgile Tour Nantes 2014 - Tdd, le meilleur moyen d'écrire du code testable
Agile Tour Nantes 2014 - Tdd, le meilleur moyen d'écrire du code testable
 
Comment être agile dans un contexte non lié aux TI ?
Comment être agile dans un contexte non lié aux TI ?Comment être agile dans un contexte non lié aux TI ?
Comment être agile dans un contexte non lié aux TI ?
 
Devops - vision et pratiques
Devops - vision et pratiquesDevops - vision et pratiques
Devops - vision et pratiques
 
Afterwork Devops : vision et pratiques
Afterwork Devops : vision et pratiquesAfterwork Devops : vision et pratiques
Afterwork Devops : vision et pratiques
 
Vincent Biret Societic devops Sherbrooke
Vincent Biret Societic devops SherbrookeVincent Biret Societic devops Sherbrooke
Vincent Biret Societic devops Sherbrooke
 
L'agilité en entreprise avec TFS 2013
L'agilité en entreprise avec TFS 2013L'agilité en entreprise avec TFS 2013
L'agilité en entreprise avec TFS 2013
 
Le DevOps : La clé de la transformation digitale ?
Le DevOps : La clé de la transformation digitale ?Le DevOps : La clé de la transformation digitale ?
Le DevOps : La clé de la transformation digitale ?
 
dev et admin sys : une cohabitation simplifiée
dev et admin sys : une cohabitation simplifiéedev et admin sys : une cohabitation simplifiée
dev et admin sys : une cohabitation simplifiée
 
DevSecOps : de la théorie à la pratique
DevSecOps : de la théorie à la pratiqueDevSecOps : de la théorie à la pratique
DevSecOps : de la théorie à la pratique
 
CARA - Software Craftsmanship : le chaînon manquant de l’agilité ?
CARA - Software Craftsmanship : le chaînon manquant de l’agilité ?CARA - Software Craftsmanship : le chaînon manquant de l’agilité ?
CARA - Software Craftsmanship : le chaînon manquant de l’agilité ?
 
Agiliser un département Marketing d'une société de conseil
Agiliser un département Marketing d'une société de conseilAgiliser un département Marketing d'une société de conseil
Agiliser un département Marketing d'une société de conseil
 
Pratiques de développement pour équipes Agile
Pratiques de développement pour équipes AgilePratiques de développement pour équipes Agile
Pratiques de développement pour équipes Agile
 

Comment être Tech Lead dans une pizza team XXL sans finir sous l'eau ?

  • 1. 1OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable COMMENT ÊTRE TECH LEAD DANS UNE PIZZA TEAM XXL SANS FINIR SOUS L’EAU ? Damien Beaufils @damienbeaufils
  • 2. 2OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable QUI SUIS-JE ? Damien Beaufils Développeur passionné #AgileTourLille #TechLead @damienbeaufils
  • 3. 3OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable OBJECTIF DE CETTE CONFÉRENCE Quels rituels et pratiques de développement quand on est une équipe > 10 personnes ? Quel est rôle du Tech Lead dans une équipe de cette taille ? #AgileTourLille #TechLead @damienbeaufils
  • 4. 4OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable LE TECH LEAD : UN RÔLE AU SERVICE DE L’ÉQUIPE ☉ Guide son équipe vers l’excellence ☉ Porte la vision technique du produit ☉ Aide à la progression de l’équipe ☉ Favorise l’autonomie de l’équipe ☉ Passe au moins 30% de son temps à coder ☉ Idéalement un référent sur les pratiques Software Craftsmanship ☉ N’est pas un super-héros ou un dictateur #AgileTourLille #TechLead @damienbeaufils
  • 5. 5OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable CONTEXTE DU RETOUR D’EXPÉRIENCE ☉ Site web grand public ☉ Projet démarré depuis plus d’1 an, cycle itératif de 2 semaines ☉ Équipe composée de 10 développeur·euse·s + 1 Tech Lead ☉ Équipe mixte > Homme / Femme > Client / Prestataire > Front / Back / OPS #AgileTourLille #TechLead @damienbeaufils
  • 6. 6OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable ÉVOLUTION DU NOMBRE DE LIENS DE COMMUNICATION EN FONCTION DE LA TAILLE DE L’ÉQUIPE 5 personnes 10 liens 3 personnes 3 liens 10 personnes 45 liens #AgileTourLille #TechLead @damienbeaufils
  • 7. 7OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable PREMIÈRE SEMAINE : PHASE D’OBSERVATION Observer en binômant, tout en taisant son égo et ses réflexes #AgileTourLille #TechLead @damienbeaufils
  • 8. 8OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable PREMIERS SIGNAUX FAIBLES (1/2) ☉ DES FAITS > Commits le soir tard voire la nuit > Une moyenne de 5 livrables par itération > Nombre de bugs dans le backlog en augmentation #AgileTourLille #TechLead @damienbeaufils
  • 9. 9OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable PREMIERS SIGNAUX FAIBLES (2/2) ☉ DES DIXITS > « Le build est rouge mais c’est normal. Relance le et ça devrait passer. » > « Tester unitairement c’est compliqué sur ce projet. » > « On reçoit tellement de mails de Jenkins qu’ils vont direct dans ma corbeille. » > « Hier j’ai passé mon après-midi à essayer de corriger le build. » #AgileTourLille #TechLead @damienbeaufils
  • 10. 10OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable PROBLÉMATIQUES ☉ La propriété du code n’était pas collective ☉ Les pratiques de développement étaient hétérogènes ☉ La qualité du produit n’était ni mesurée ni suivie #AgileTourLille #TechLead @damienbeaufils
  • 11. 11OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable COMMENT AMÉLIORER LA PROPRIÉTÉ COLLECTIVE DU CODE (1/3) ☉ RÉTROSPECTIVE TECHNIQUE > 1 heure, tous les lundis > Objectif : partager le maximum de connaissances en un minimum de temps #AgileTourLille #TechLead @damienbeaufils
  • 12. 12OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable COMMENT AMÉLIORER LA PROPRIÉTÉ COLLECTIVE DU CODE (2/3) ☉ STANDARDS DE CODE > Affichés sur une “Table de la loi” > Doivent pouvoir être affichés sur un mur et être compris sans difficulté #AgileTourLille #TechLead @damienbeaufils
  • 13. 13OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable COMMENT AMÉLIORER LA PROPRIÉTÉ COLLECTIVE DU CODE (3/3) ☉ REVUE DE CODE > Obligatoire et bloquante > Agnostique de la techno > Présentation orale des retours à l’auteur·e ☉ PAIR / MOB PROGRAMMING > Obligatoire quand on travaille sur du code legacy #AgileTourLille #TechLead @damienbeaufils
  • 14. 14OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable PROPRIÉTÉ COLLECTIVE DU CODE : QUEL INDICATEUR ? Pourquoi avoir une propriété du code collective ? Comment savoir si c’est le cas ? N’importe qui peut partir en congés n’importe quand (Même le Tech Lead) #AgileTourLille #TechLead @damienbeaufils
  • 15. 15OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable PROBLÉMATIQUES La propriété du code n’était pas collective Les pratiques de développement étaient hétérogènes La qualité du produit n’était ni mesurée ni suivie #AgileTourLille #TechLead @damienbeaufils
  • 16. 16OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable QUID DE LA QUALITÉ ? On ne pilote que ce qu’on mesure, mais quel aspect de la qualité mesurer ? Le nombre de tests automatisés et leurs typologies #AgileTourLille #TechLead @damienbeaufils
  • 17. 17OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable LE MODÈLE DE LA PYRAMIDE DES TESTS #AgileTourLille #TechLead @damienbeaufils
  • 18. 18OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable ATELIER AUTOUR DE LA STRATÉGIE DE TESTS AUTOMATISÉS ☉ DÉFINITION D’UN VOCABULAIRE COMMUN > C’est quoi un TU ? Un TI ? Un TF ? > Quels objectifs et intentions via ces tests ? > Comment je les reconnais dans le code ? > Est-ce que je peux tester autrement ? (i.e. plus bas dans la pyramide) ☉ LA COUVERTURE DE CODE > Choix de ne pas la mesurer #AgileTourLille #TechLead @damienbeaufils
  • 19. 19OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable PREMIÈRE MESURE DE LA PYRAMIDE DES TESTS EN JANVIER 2016 } } } TF : 29% TI : 53% TU : 18% © 2016 Starbound, Chucklefish Ltd #AgileTourLille #TechLead @damienbeaufils
  • 20. 20OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable TEST DRIVEN DEVELOPMENT ☉ INVESTISSEMENT DANS UNE FORMATION À LA PRATIQUE DE TDD > Pour toute l’équipe, quel que soit le niveau > Formation de 3 jours > Être capable de démontrer le ROI de TDD par des données factuelles #AgileTourLille #TechLead @damienbeaufils
  • 21. 21OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable TEST DRIVEN DEVELOPMENT ☉ MAIS UNE FORMATION, ÇA COÛTE CHER ! ET MES FONCTIONNALITÉS ?! > N est le nombre de personnes à former > Si on passe 3 jours pour former individuellement chaque personne par de l’accompagnement, cela coûte dans le meilleur des cas (3+3)xN j/h > À l'opposé, si on fait une formation collective de 3 jours, cela coûterait 3+3xN j/h > Former 10 personnes à TDD par une formation collective coûte donc environ 2 fois moins cher que de les former individuellement par de l’accompagnement #AgileTourLille #TechLead @damienbeaufils
  • 22. 22OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable LE TECH LEAD : UN MENTOR ☉ MENTORER CHAQUE DÉVELOPPEUR·EUSE VIA DES ONE-ON-ONE (O3) > 30 minutes par personne, par itération > Un moment privilégié d’échange, ritualisé > Objectifs + Récupérer de l’information + Donner du feedback + Rechercher des axes de progression + Déléguer #AgileTourLille #TechLead @damienbeaufils
  • 23. 23OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable ÊTRE ATTENTIF À LA COMMUNICATION DANS L’ÉQUIPE ☉ RECADRER LES DÉFAUTS DE COMMUNICATION > Ex: “Ton code” vs. “Le code” > Principes Egoless programming ☉ QUAND ON TRAVAILLE DANS UNE ÉQUIPE MIXTE HOMME/FEMME, AVOIR UN DISCOURS APPELANT À LA DIVERSITÉ > Ex: à l’oral, éviter le “Allez les gars !”. Proposition : “Allez l’équipe !” #AgileTourLille #TechLead @damienbeaufils
  • 24. 24OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable PROBLÉMATIQUES La propriété du code n’était pas collective Les pratiques de développement étaient hétérogènes La qualité du produit n’était ni mesurée ni suivie #AgileTourLille #TechLead @damienbeaufils
  • 25. 25OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable QUID DES INDICATEURS ? Le nombre de tests automatisés et leurs typologies Suivre et afficher ces indicateurs #AgileTourLille #TechLead @damienbeaufils
  • 26. 26OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable MESURE DE LA PYRAMIDE DES TESTS Formation TDD Instauration des nouvelles pratiques Formation TDD Instauration des nouvelles pratiques TU TI TF #AgileTourLille #TechLead @damienbeaufils
  • 27. 27OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable MESURE DE LA PYRAMIDE DES TESTS Formation TDD Instauration des nouvelles pratiques Formation TDD Instauration des nouvelles pratiques TU TI TF #AgileTourLille #TechLead @damienbeaufils
  • 28. 28OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable L’IMPACT AU QUOTIDIEN ~200 tests en ~6 minutes ~1000 tests en ~3 minutes ~3000 tests en ~5 secondes > À chaque fois qu’un·e développeur·euse fait évoluer le code, une majorité de l’application est vérifiée automatiquement en moins de 5 secondes par des tests unitaires, afin de garantir la non-régression > Si l’équipe avait couvert tous les cas métiers par des tests fonctionnels, chaque développeur·euse devrait attendre 120 minutes à chaque portion de code modifiée > Les membres de l’équipe lanceraient alors les tests le midi et le soir, et passeraient probablement ½ journée à débugger ce qui a été codé la ½ journée précédente #AgileTourLille #TechLead @damienbeaufils
  • 29. 29OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable L'ÉVOLUTION DE LA QUALITÉ AUTREMENT QUE PAR LA TECHNIQUE Formation TDD Formation TDD Formation TDD #AgileTourLille #TechLead @damienbeaufils
  • 30. 30OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable PROBLÉMATIQUES La propriété du code n’était pas collective Les pratiques de développement étaient hétérogènes La qualité du produit n’était ni mesurée ni suivie #AgileTourLille #TechLead @damienbeaufils
  • 31. 31OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable TAKE-AWAY ☉ Cherchez à avoir une propriété de code collective grâce à des rituels et des pratiques de partage ☉ Définissez un ou plusieurs aspects de la qualité, mesurez-les, suivez-les, affichez-les ☉ Mentorez et déléguez grâce à des One-on-One ritualisés #AgileTourLille #TechLead @damienbeaufils
  • 32. 32OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable POUR ALLER PLUS LOIN ☉ Script de mesure de la pyramide des tests : github.com/damienbeaufils/tests-pyramid-calculator ☉ Culture Code : un livre collectif sur la culture et les pratiques Software Craftsmanship ☉ Disponible gratuitement en téléchargement : www.octo.com/fr/publications/20-culture-code #AgileTourLille #TechLead @damienbeaufils