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

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

Apr 16, 2017

Download

Engineering

Houssam FAKIH
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
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