136
L’agilité ne suffit pas pour être un bon développeur Houssam Fakih & Boris Gonnot @houssamfakih @gonnot

L’agilité ne suffit pas pour être un bon développeur

Embed Size (px)

Citation preview

Page 1: L’agilité ne suffit pas pour être un bon développeur

L’agilité ne suffit pas pour

être un bon développeur

Houssam Fakih & Boris Gonnot@houssamfakih @gonnot

Page 2: L’agilité ne suffit pas pour être un bon développeur

Et pour vous, c’est quoi un bon développeur ?

Page 3: L’agilité ne suffit pas pour être un bon développeur

Il n’y a pas de référentiel commun

Page 4: L’agilité ne suffit pas pour être un bon développeur

Subjectif

Page 5: L’agilité ne suffit pas pour être un bon développeur

Pourquoi on s’est posé cette question?

Page 6: L’agilité ne suffit pas pour être un bon développeur

parce que c’est motivant

Page 7: L’agilité ne suffit pas pour être un bon développeur

Progresser

Page 8: L’agilité ne suffit pas pour être un bon développeur

Devenir Meilleur

Page 9: L’agilité ne suffit pas pour être un bon développeur

Conquérir nos faiblesses

Page 10: L’agilité ne suffit pas pour être un bon développeur

En parler ça nous responsabilise

Page 11: L’agilité ne suffit pas pour être un bon développeur

Apprenons de ce qui se passe ailleurs

Page 12: L’agilité ne suffit pas pour être un bon développeur

Sport

Page 13: L’agilité ne suffit pas pour être un bon développeur

Athlétisme

Page 14: L’agilité ne suffit pas pour être un bon développeur

Quelle mesure ?

Le temps/distance

Page 15: L’agilité ne suffit pas pour être un bon développeur

Usain Bolt - Record du monde 100mTemps : 9”58

Page 16: L’agilité ne suffit pas pour être un bon développeur

HaltérophilieLu Xiaojun

176 Kg à l’arraché (record mondial)

Page 17: L’agilité ne suffit pas pour être un bon développeur

Quelle mesure ?

La charge / Temps

Page 18: L’agilité ne suffit pas pour être un bon développeur

Trois choses à noter

Page 19: L’agilité ne suffit pas pour être un bon développeur

Attention aux stéréotypes#1

Page 20: L’agilité ne suffit pas pour être un bon développeur

Le plus dur est l’entraînement et non pas la compétition

#2

Page 21: L’agilité ne suffit pas pour être un bon développeur

la belle posture

malgré la charge

#3

Page 22: L’agilité ne suffit pas pour être un bon développeur

Concours national de Dictée

Page 23: L’agilité ne suffit pas pour être un bon développeur
Page 24: L’agilité ne suffit pas pour être un bon développeur

Les règles d’Orthographe

Page 25: L’agilité ne suffit pas pour être un bon développeur

Connaître la grammaire et la conjugaison

Page 26: L’agilité ne suffit pas pour être un bon développeur

Plein d’autres exemples Musique / Chanteur

Page 27: L’agilité ne suffit pas pour être un bon développeur

Leçons tirées du sport

Page 28: L’agilité ne suffit pas pour être un bon développeur

Deux aspects à noter

Page 29: L’agilité ne suffit pas pour être un bon développeur

L’épreuve peut varier d’une discipline à l’autre

#1

Page 30: L’agilité ne suffit pas pour être un bon développeur

En athlétisme, c’est la même distance

Page 31: L’agilité ne suffit pas pour être un bon développeur

En Haltérophilie c’est la même charge

Page 32: L’agilité ne suffit pas pour être un bon développeur

Pour la dictée, le texte n’est pas le même

Page 33: L’agilité ne suffit pas pour être un bon développeur

l’évaluation est faite sur la compétition

#2

Page 34: L’agilité ne suffit pas pour être un bon développeur

et non pas lors de l’entraînement

Page 35: L’agilité ne suffit pas pour être un bon développeur

L’entraînement est pour gagner en compétences

Page 36: L’agilité ne suffit pas pour être un bon développeur

Compétences variées

Page 37: L’agilité ne suffit pas pour être un bon développeur

Foulée, Explosivité, Puissance, etc.

Page 38: L’agilité ne suffit pas pour être un bon développeur

Règles de Grammaire, d’orthographe, de

conjugaison, de Mémoire, etc.

Page 39: L’agilité ne suffit pas pour être un bon développeur

Maintenant revenons dans le monde du

développement

Page 40: L’agilité ne suffit pas pour être un bon développeur

Evaluation = Métrique

Page 41: L’agilité ne suffit pas pour être un bon développeur

Métrique pour un DEV

Page 42: L’agilité ne suffit pas pour être un bon développeur

DANGER#MauvaiseUtilisation#Manager

Page 43: L’agilité ne suffit pas pour être un bon développeur

Il faut former le manager

#1

Page 44: L’agilité ne suffit pas pour être un bon développeur

sa responsabilité Training de l’équipe

Page 45: L’agilité ne suffit pas pour être un bon développeur

manager = coach

Page 46: L’agilité ne suffit pas pour être un bon développeur

simplement ne pas communiquer

#2

Page 47: L’agilité ne suffit pas pour être un bon développeur

c’est votre outil

Page 48: L’agilité ne suffit pas pour être un bon développeur

Mesurer c’est la base… élément de feedback

Page 49: L’agilité ne suffit pas pour être un bon développeur

Quelle mesure ? Quantifiable et Simple

Page 50: L’agilité ne suffit pas pour être un bon développeur

Deux mesures

Page 51: L’agilité ne suffit pas pour être un bon développeur

Nombre de bugs

#1

Page 52: L’agilité ne suffit pas pour être un bon développeur

“C’est la faute du fonctionnel”

Page 53: L’agilité ne suffit pas pour être un bon développeur

#ExcuseBidon

Page 54: L’agilité ne suffit pas pour être un bon développeur

Tout bug est de notre responsabilité

Page 55: L’agilité ne suffit pas pour être un bon développeur

Objectif de tout bon développeur

Page 56: L’agilité ne suffit pas pour être un bon développeur

Zero Bug

Page 57: L’agilité ne suffit pas pour être un bon développeur

Valeur apportée au client

#2

#Expérimental

Page 58: L’agilité ne suffit pas pour être un bon développeur

Comment l’évaluer

Page 59: L’agilité ne suffit pas pour être un bon développeur

Google Analytics : une piste intéressante

Page 60: L’agilité ne suffit pas pour être un bon développeur

Attention si non utilisé, il faut comprendre

pourquoi

Page 61: L’agilité ne suffit pas pour être un bon développeur

review sur le produit

Page 62: L’agilité ne suffit pas pour être un bon développeur

Compétences (Skills)

Page 63: L’agilité ne suffit pas pour être un bon développeur

Clean Code

Compétence/Skill

Page 64: L’agilité ne suffit pas pour être un bon développeur

Nommage

#1

Page 65: L’agilité ne suffit pas pour être un bon développeur

Le lecteur a toujours raison

Page 66: L’agilité ne suffit pas pour être un bon développeur

Partage du même langage

Page 67: L’agilité ne suffit pas pour être un bon développeur

avec tous les acteurs du projet

Page 68: L’agilité ne suffit pas pour être un bon développeur

Ubiquituous Language

Page 69: L’agilité ne suffit pas pour être un bon développeur

Localisation des définitions

#2

Page 70: L’agilité ne suffit pas pour être un bon développeur

Pas de mélange

Page 71: L’agilité ne suffit pas pour être un bon développeur

Pas de dispersion

Page 72: L’agilité ne suffit pas pour être un bon développeur

Refactoring

Compétence/Skill

Page 73: L’agilité ne suffit pas pour être un bon développeur

Identifier bad smell

Page 74: L’agilité ne suffit pas pour être un bon développeur

Identifier les commonalités

Page 75: L’agilité ne suffit pas pour être un bon développeur

capacité de changer le code sans changer le

comportement

Page 76: L’agilité ne suffit pas pour être un bon développeur

Connaître le catalogue de refacto de son IDE

Page 77: L’agilité ne suffit pas pour être un bon développeur

Clean Tests

Compétence/Skill

Page 78: L’agilité ne suffit pas pour être un bon développeur

Un test est une documentation

Page 79: L’agilité ne suffit pas pour être un bon développeur

un test utile

Page 80: L’agilité ne suffit pas pour être un bon développeur

Ne pas sur-tester

Page 81: L’agilité ne suffit pas pour être un bon développeur

Refactoriser vos tests

Page 82: L’agilité ne suffit pas pour être un bon développeur

Même Qualité pour le code et le test

Page 83: L’agilité ne suffit pas pour être un bon développeur

Connaître son utilisateur

Compétence/Skill

Page 84: L’agilité ne suffit pas pour être un bon développeur

S’intéresser à l’utilisateur final

Page 85: L’agilité ne suffit pas pour être un bon développeur

Résoudre ses problèmes

Page 86: L’agilité ne suffit pas pour être un bon développeur

Comprendre ses problématiques

Page 87: L’agilité ne suffit pas pour être un bon développeur

Challenger les story

Page 88: L’agilité ne suffit pas pour être un bon développeur

Travail en équipe

Compétence/Skill

Page 89: L’agilité ne suffit pas pour être un bon développeur

Coordination

Page 90: L’agilité ne suffit pas pour être un bon développeur

Capacité d’écoute

Page 91: L’agilité ne suffit pas pour être un bon développeur

Positivisme

Page 92: L’agilité ne suffit pas pour être un bon développeur

Adaptabilité

Compétence/Skill

Page 93: L’agilité ne suffit pas pour être un bon développeur

Routine est notre ennemi

Page 94: L’agilité ne suffit pas pour être un bon développeur

Toujours Apprendre des nouveaux outils

Page 95: L’agilité ne suffit pas pour être un bon développeur

Toujours Apprendre des nouveaux paradigmes

Page 96: L’agilité ne suffit pas pour être un bon développeur

Critère : capacité à simplifier

Page 97: L’agilité ne suffit pas pour être un bon développeur

Simplifier

Compétence/Skill

Page 98: L’agilité ne suffit pas pour être un bon développeur

Abstraction & Decomposition

Page 99: L’agilité ne suffit pas pour être un bon développeur

détecter la complexité de l’existant

Page 100: L’agilité ne suffit pas pour être un bon développeur

Mesurer le dev d’une nouvelle modification

Page 101: L’agilité ne suffit pas pour être un bon développeur

Si ça prend beaucoup du temps il y a forcément

une complexité cachée

Page 102: L’agilité ne suffit pas pour être un bon développeur

des outils à expérimenter Code Maat (couplage temporel & statique)

Page 103: L’agilité ne suffit pas pour être un bon développeur

Etre toujours à la recherche de feedback

Page 104: L’agilité ne suffit pas pour être un bon développeur

Respecter les jalons

Compétence/Skill

Page 105: L’agilité ne suffit pas pour être un bon développeur

Bien estimer

Page 106: L’agilité ne suffit pas pour être un bon développeur

Gérer son rythme

Page 107: L’agilité ne suffit pas pour être un bon développeur

Comment développer ces compétences

Page 108: L’agilité ne suffit pas pour être un bon développeur

Il faut s’entraîner

Page 109: L’agilité ne suffit pas pour être un bon développeur
Page 110: L’agilité ne suffit pas pour être un bon développeur

Mais comment ?

Page 111: L’agilité ne suffit pas pour être un bon développeur

En développant ?

Page 112: L’agilité ne suffit pas pour être un bon développeur

Peut-être…

Page 113: L’agilité ne suffit pas pour être un bon développeur

En course à pieds, courir ne fait pas progresser

Page 114: L’agilité ne suffit pas pour être un bon développeur

FractionnéFractionné - 30/30”

Page 115: L’agilité ne suffit pas pour être un bon développeur
Page 116: L’agilité ne suffit pas pour être un bon développeur

Il faut challenger le corps

Page 117: L’agilité ne suffit pas pour être un bon développeur

développer ses compétences

Page 118: L’agilité ne suffit pas pour être un bon développeur

Sortir de sa zone de confort

Page 119: L’agilité ne suffit pas pour être un bon développeur

et il faut fixer des objectifs

Page 120: L’agilité ne suffit pas pour être un bon développeur

liés aux compétences que l’on veut travailler

Page 121: L’agilité ne suffit pas pour être un bon développeur

Quels Outils ?

Page 122: L’agilité ne suffit pas pour être un bon développeur

Katas, Dojo, etc.

Page 123: L’agilité ne suffit pas pour être un bon développeur

Exercices connus

Page 124: L’agilité ne suffit pas pour être un bon développeur

String Calculator Diamond

Bowling Game Tic Tac Toe

Gilded Rose etc.

Page 125: L’agilité ne suffit pas pour être un bon développeur

Les entraînements doivent être

Page 126: L’agilité ne suffit pas pour être un bon développeur

en groupe (meetup, pairing, soirées, etc.)

Page 127: L’agilité ne suffit pas pour être un bon développeur

Réguliers (pour ajuster)

Page 128: L’agilité ne suffit pas pour être un bon développeur

Maîtrisés (Plan d’entraînement)

Page 129: L’agilité ne suffit pas pour être un bon développeur

Matrice de compétences

Page 130: L’agilité ne suffit pas pour être un bon développeur
Page 131: L’agilité ne suffit pas pour être un bon développeur

On en tire 3 événements

Page 132: L’agilité ne suffit pas pour être un bon développeur

Regression Consolidation Progression

Page 133: L’agilité ne suffit pas pour être un bon développeur

Regression Temporaire ou chronique ?

Page 134: L’agilité ne suffit pas pour être un bon développeur

Penser à vous reposer

Page 135: L’agilité ne suffit pas pour être un bon développeur

Et avant la fin

Page 136: L’agilité ne suffit pas pour être un bon développeur

@arolla