Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
L'agilité ne suffit pas pour être un bon dévelo...
Search
Houssam
November 19, 2015
Programming
0
85
L'agilité ne suffit pas pour être un bon développeur
Agile Grenoble 2015
Houssam
November 19, 2015
Tweet
Share
More Decks by Houssam
See All by Houssam
Comment j'ai recruté mon pair ?
fakih
0
200
Never Develop Alone - Always with a partner
fakih
0
60
Thoughts on Building Metrics for Good Developers
fakih
0
52
Agilement Recruté en 100 minutes
fakih
1
730
L'agilité ne suffit pas pour être un bon développeur
fakih
0
310
Full-Time Pair-Programming : Nighmares and Dreams
fakih
0
65
Cross-Programming : Forging the future of programming
fakih
0
190
Legacy Tests
fakih
0
45
Other Decks in Programming
See All in Programming
なるべく楽してバックエンドに型をつけたい!(楽とは言ってない)
hibiki_cube
0
140
CSC307 Lecture 03
javiergs
PRO
1
490
責任感のあるCloudWatchアラームを設計しよう
akihisaikeda
3
180
例外処理とどう使い分ける?Result型を使ったエラー設計 #burikaigi
kajitack
16
6.1k
2026年 エンジニアリング自己学習法
yumechi
0
140
今こそ知るべき耐量子計算機暗号(PQC)入門 / PQC: What You Need to Know Now
mackey0225
3
390
Honoを使ったリモートMCPサーバでAIツールとの連携を加速させる!
tosuri13
1
180
OCaml 5でモダンな並列プログラミングを Enjoyしよう!
haochenx
0
150
コマンドとリード間の連携に対する脅威分析フレームワーク
pandayumi
1
470
izumin5210のプロポーザルのネタ探し #tskaigi_msup
izumin5210
1
140
プロダクトオーナーから見たSOC2 _SOC2ゆるミートアップ#2
kekekenta
0
230
Automatic Grammar Agreementと Markdown Extended Attributes について
kishikawakatsumi
0
200
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
120
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
110
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
440
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
410
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
190
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.3k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.1k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
How to Talk to Developers About Accessibility
jct
2
140
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
68
Transcript
L’agilité ne suffit pas pour être un bon développeur Houssam
Fakih @houssamfakih @gonnot Boris Gonnot Agile Grenoble’15
C’est quoi un bon développeur ?
Il n’y a pas de référentiel commun
Subjectif
Apprenons de ce qui se passe ailleurs
Sport
Athlétisme
Quelle mesure ? Le temps/distance
Usain Bolt - Record du monde 100m Temps : 9”58
Haltérophilie Lu Xiaojun 176 Kg à l’arraché (record mondial)
Quelle mesure ? La charge / Temps
Trois choses à noter
Attention aux stéréotypes #1
Le plus dur est l’entraînement et non pas la compétition
#2
la belle posture malgré la charge #3
Concours national de Dictée
None
Plein d’autres exemples Musique / Chanteur
Leçons tirées
Deux aspects à noter
L’épreuve peut varier d’une discipline à l’autre #1
l’évaluation est faite sur la compétition #2
et non pas lors de l’entraînement
L’entraînement est pour gagner en compétences
Compétences variées
Foulée, Explosivité, Grammaire, Mémoire…
Maintenant retour au développement
Evaluation = Métrique
Métrique pour un DEV
#MauvaiseUtilisation #Manager
Former le manager #1
Sa responsabilité : Training de l’équipe
Manager = Coach
Ne pas communiquer #2
c’est votre outil
Mesurer c’est la base… élément de feedback
Quelle mesure ? Quantifiable et Simple
Deux mesures
Nombre de bugs #1
“C’est la faute du fonctionnel”
#NonValide
Tout bug est de notre responsabilité
Objectif de tout bon développeur
Bug
Valeur apportée au client #2 #Expérimental
Comment l’évaluer
“Google Analytics” une piste intéressante
Review sur le produit
Compétences (Skills)
Clean Code Compétence/Skill
Nommage #1
Le lecteur a toujours raison
Partage du même langage
Avec tous les acteurs du projet
Localisation des définitions #2
Pas de mélange
Pas de dispersion
Refactoring Compétence/Skill
Capacité de changer le code sans changer le comportement
Identifier bad smell
Identifier les commonalités
Connaître le catalogue de refacto de son IDE
Clean Tests Compétence/Skill
Un test est une documentation
Un test utile
Ne pas sur-tester
Refactoriser vos tests
Même Qualité pour le code et le test
Connaître son utilisateur Compétence/Skill
S’intéresser à l’utilisateur final
Résoudre ses problèmes
Challenger les stories
Travail en équipe Compétence/Skill
Coordination
Capacité d’écoute
Positivisme
Adaptabilité Compétence/Skill
La routine est notre ennemi
Toujours Apprendre des nouveaux outils
Toujours Apprendre des nouveaux paradigmes
Simplifier Compétence/Skill
Abstraction & Decomposition
Détecter la complexité de l’existant
A expérimenter Code Maat
Etre toujours à la recherche de feedback
Respecter les jalons Compétence/Skill
Bien estimer
Gérer son rythme
Comment développer ces compétences ?
Il faut s’entraîner
Mais comment ?
En développant ?
Peut-être…
En course à pieds, courir ne fait pas progresser
Fractionné Fractionné - 30/30”
None
développer ses compétences
Sortir de sa zone de confort
Fixer des objectifs…
…liés aux compétences que l’on veut travailler
Quels Outils ?
Katas, Dojo, etc.
Exercices connus String Calculator Diamond Bowling Game Tic Tac Toe
Gilded Rose etc.
Les entraînements doivent être
En groupe (meetup, pairing, soirées, etc.)
Réguliers (pour ajuster)
Maîtrisés (Plan d’entraînement)
Matrice de compétences
None
On en tire 3 événements
Regression Consolidation Progression
Regression Temporaire ou chronique ?
Et avant la fin
Penser à vous reposer
@ArollaFr