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
51
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
180
Legacy Tests
fakih
0
45
Other Decks in Programming
See All in Programming
C-Shared Buildで突破するAI Agent バックテストの壁
po3rin
0
430
ELYZA_Findy AI Engineering Summit登壇資料_AIコーディング時代に「ちゃんと」やること_toB LLMプロダクト開発舞台裏_20251216
elyza
2
920
SQL Server 2025 LT
odashinsuke
0
120
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
620
AIで開発はどれくらい加速したのか?AIエージェントによるコード生成を、現場の評価と研究開発の評価の両面からdeep diveしてみる
daisuketakeda
1
230
チームをチームにするEM
hitode909
0
430
AIによるイベントストーミング図からのコード生成 / AI-powered code generation from Event Storming diagrams
nrslib
1
580
QAフローを最適化し、品質水準を満たしながらリリースまでの期間を最短化する #RSGT2026
shibayu36
0
1.2k
組み合わせ爆発にのまれない - 責務分割 x テスト
halhorn
1
180
愛される翻訳の秘訣
kishikawakatsumi
3
370
perlをWebAssembly上で動かすと何が嬉しいの??? / Where does Perl-on-Wasm actually make sense?
mackee
0
280
Combinatorial Interview Problems with Backtracking Solutions - From Imperative Procedural Programming to Declarative Functional Programming - Part 2
philipschwarz
PRO
0
130
Featured
See All Featured
Amusing Abliteration
ianozsvald
0
81
Making the Leap to Tech Lead
cromwellryan
135
9.7k
The SEO Collaboration Effect
kristinabergwall1
0
320
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
99
Are puppies a ranking factor?
jonoalderson
0
2.6k
A better future with KSS
kneath
240
18k
The Cost Of JavaScript in 2023
addyosmani
55
9.4k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
360
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
1k
How to Ace a Technical Interview
jacobian
281
24k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
0
84
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