SlideShare a Scribd company logo
1 of 85
Download to read offline
27 au 29 mars 2013
13h - 13h15 - Salle Miles Davis
Les bronzés font du dev
27 au 29 mars 2013
Les bronzés font du dev
Ellène Dijoux Siber
Développeur Java Freelance
http://uneviededev.wordpress.com
@ElleneSiber
Histoire basée sur du vecu !
Cette histoire est une aggrégation de faits vécus. Si vous avez connu la même histoire, je suis
navrée pour vous ...
Je vous présente Martin, fraîchement diplômé de l’école Epitruc.
Après un stage d'un an en alternance dans la DSI de Général Electrique, il cherche un poste de développeur «Java J2EE». Après
avoir publié son CV sur quelques sites bien connus par les recruteurs, il passe aujourd'hui des entretiens chez SSII Consulting.
L’entretien RH
Cela se passe à merveille avec la directrice des Ressources Humaines qui tient un discours très rassurant ...
Nous sommes
une société à taille
humaine.
SSII Consulting compte 1200 collaborateurs.
Nous sommes à
la pointe de la
technologie !
Après 30 minutes de discussion sur les motivations de Martin, c’est l’heure de l’évaluation technique.
L’entretien technique
Vous avez 30
minutes
30 minutes pour répondre à un QCM de 100 questions ! Facile ! Martin a obtenu sa certification Java à l’école Epitruc.
Le commercial
Le test technique fini, Martin discute maintenant avec le commercial.
Java/J2EE ... tout
ça, je connais !
Il a apprécié la discussion avec le commercial car il s’agissait d’un ancien développeur ! Au moins quand il parle Java, il sait de
quoi il parle ! Surtout que c’est lui qui se chargera de son entretien annuel. Martin est plutôt rassuré.
J’ai une superbe
mission Java/J2EE
pour toi !
Il a même déjà une mission pour lui ! Chouette car c’est ce qu’il recherchait : «Spring, Hibernate, Struts les dernières technos du
moment ! Et tu commences demain !» dit-il.
«Pas d’entretien client ?» demande Martin.
«Non le client nous fait confiance pour recruter les bons, la preuve avec nos tests techniques !»
Premier jour en mission
Bonjour !
Je m’appelle
Martin !
Et c’est tout motivé qu’il débute le lendemain son premier jour de mission.
«Salut Martin, laisse-moi te présenter l’équipe :»
Voici Jérôme, ...
Voici Jérôme stagiaire en alternance ...
Hein quoi ?!
J’ai encore cassé
quelque chose ?
Denis , ...
Denis, jeune diplomé comme toi.
Salut !
Jean-Claude, ...
Jean-Claude, le lead dev.
Argh c’est quoi
ce code tout
pourri encore !
Et moi Alain.
«Et moi-même Alain, le chef de projet. Bienvenu dans l’équipe ! Jean-Claude merci de t’occuper de Martin aujourd’hui, j’ai des
réunions toute la journée. Je n’aurai pas de temps à lui consacrer.»
L’accueil
«Très bien comme tu n’auras ton poste que demain, j’ai imprimé la doc pour toi.»
Voilà de quoi
t’occuper !
«Ce sont les spécifications fonctionnelles et techniques du projet.»
Oh ok !
Secrètement Martin pensait qu’il allait faire du Pair-Programming avec un des développeurs durant la journée comme lors de son
stage. Mais apparemment ce ne sont pas les habitudes de la maison. «Eh bien soit ! Lisons la doc ...» se dit-il.
Martin assidu, lit rigoureusement la doc tentant de comprendre pour pouvoir rentrer dans le projet au plus vite !
On
utilise Spring
Integration ?
«Ah vous avez Spring Integration sur le projet ? Cool je pourrais découvrir !»
Non.
«C’est ce que l’architecte a préconisé mais ça ne marche pas alors on l’a laissé tombé. Il est vrai que la doc date d’il y a un an
déjà ...»
Un an ... Martin se demande si c’est vraiment pertinent de continuer la lecture de la doc ... mais c’est son premier jour, il veut
bien faire alors poursuit la lecture.
Stand-up
meeting !
Et à 10h, «Tu viens Martin ? On fait notre stand-up meeting.»
Stand-up meeting
Le stand-up meeting est une cérémonie qu’il a connu sur son ancien projet, il savait ce qu’il avait à faire : expliquer ce qu’il a fait
hier, ce qu’il compte faire aujourd’hui et les difficultés rencontrées mais ...
Jean-Claude tu
finis quand ?
Cela ne se passe pas tout à fait comme ça ...
Martin tu liras
la doc.
Denis tu finis
ça pour
aujourd’hui.
Et Jérôme tu
commences ça.
Chaque société doit avoir sa façon de faire son stand-up meeting ...
Méthodologie
Scrum ?
«Donc vous faîtes du Scrum ?» demande Martin
C’est
notre premier
sprint.
«Oui depuis 2 mois, c’est notre premier sprint» répond Jean-Claude.
2 mois ?!
«2 mois c’est un peu long comme sprint non ?»
«Oui mais on n’arrive pas à finir ce sprint et il y a plein de points de blocage»
«C’est pour cela que vous avez autant de post-its en In Progress ?»
«Oui, mais je trouve franchement que la méthodologie Scrum est plus proche du mode La Rache ... mais au moins les
utilisateurs peuvent changer d’avis quand ils veulent !»
Le lendemain ...
Martin a enfin son poste ! Il s’empresse donc de checkouter le projet et d’installer ses outils préférés. Et puis ...
Build failed ?!
Mais heureusement, Jean-Claude a la solution !
Fais un skip test.
Oh ... ok ...
«Il faudrait que je mette la config par défaut dans le pom mais je n’ai pas encore trouvé le temps» dit Jean-Claude.
«Et pourquoi les tests ne passent pas ?» demande Martin
«Parce qu’on n’a pas le temps de les corriger !» répond Jean-Claude agacé
Le midi, à la cantine ...
?
Ce midi, Martin prend le temps de questionner Denis et Jérôme à la Cantine :
«Ca fait longtemps que vous êtes sur le projet ?»
1mois
«Moi ça fait un mois» répond Jérôme
6 mois
«Et moi 6 mois» dit Denis
Jean-
Claude, il
assure !
«Le plus ancien sur le projet c’est Jean-Claude, il est là depuis le début. Il connaît l’application sur le bout des doigts et il est
super balaise ! Je pense qu’avec son niveau, il ne va pas tarder à devenir chef de projet ! Car après 5 de dev, il a fait le tour ...»
Après le déjeuner ...
De retour au bureau, Jérôme interpelle Jean-Claude :
@Transactionnal ?
«A quoi les @Transactionnal au début de certaines méthodes ?»
C’est une
annotation, c’est
tout !
«C’est une annotation» répond Jean-Claude
«Et qu’est-ce que c’est ?» demande Denis
«Une annotation c’est une annotation cela ne s’explique pas. C’est tout ce que tu dois savoir !»
Ah ok ... merci ...
Martin qui voit la scène de loin s’interroge : «Bon techniquement ... mais pas très pédagogue ...»
Première user story
Cette après-midi, Martin a pris une nouvelle user-story au tableau. Il essaie tant bien que mal de comprendre la pertinence de
développer une messagerie dans l’application ...
?!
«Les utilisateurs ont une boite mail. Pourquoi s’amuserait-il à passer par cette messagerie interne pour s’envoyer des
messages ?» demande-t-il à Jean-Claude.
Cherche pas à
comprendre !
«Ne cherche pas à savoir, ce ne sont pas tes affaires ! On nous demande de faire une messagerie,
on la fait ! De toute façon, le métier n’a pas de temps à nous consacrer, on le fait et c’est
tout !»
Ah ... ok ...
Martin finit par se résigner ...
Après plusieurs jours de dev ...
?!
Ce n’était pas facile de réaliser une messagerie interne, mais il y est arrivé ! Et après un update, Martin réalise que son code a
disparu ...
J’ai tout
refait !
«C’est normal, j’ai tout refait car ton code était tout pourri.» répond Jean-Claude
Qu’est-ce
qui n’allait
pas ?
Martin demande du feedback pour pouvoir éviter de reproduire les mêmes erreurs.
Tout !
«Pleins de trucs mais je n’ai pas le temps de t’expliquer là.»
Première MEP
Dans une
heure, c’est
fini !
18h : les utilisateurs sont partis, on peut commencer le déploiement du nouveau war. «Tu vas voir Martin, j’ai simplifié la config
ça sera plus simple pour le déploiement et dans 1h on aura fini !»
Cool !
Puis, enfin à 3h du matin ...
Ah celui-là
aussi était mal
configuré ...
Et comme il fallait s’y attendre ... à 3h du matin :
«Ah oui ! Il y avait aussi ce fichier à mettre à jour avec la conf de prod et là je pense que c’est bon. On va pouvoir rentrer chez
nous ! Bon demain, je crée un doc pour le déploiement !» promet Jean-Claude. Mais commme toutes les résolutions, cette
dernière attendra elle aussi ...
Le lendemain matin ...
... car le lendemain ...
Zzz ...
... le réveil et la matinée fut difficile pour Martin. Car en plus du dev, il doit également assurer le support de l’application.
DRING !!!
Surtout les lendemains de mise en prod ...
Hein ?!
Quoi ?!
DRING !!!
java.lang.NullPointerException !!!
WTF ?!
Au téléphone, un utilisateur mécontent qui ne comprend pas l’étrange erreur affiché lorsqu’il fait un recherche ... «La page de
recherche ?! Mais c’est la page sur laquelle Jean-Claude a fait un gros refactoring ... et sans tests unitaires !» pense Martin.
La journée va être longue pour notre petite équipe de bronzés ...
Epilogue
Cette mission fut difficile mais enrichissante pour Martin. Cela lui a permis de comprendre les comportements qui peuvent être
dangereux pour un projet :
Pas de
panique, je
m’occupe de
tout.
Jouer au super héros et vouloir tout réparer soi-même sans rien expliquer aux autres.
Besoin d’aide ?
Non c’est bon.
Porter seul le projet.
Dire mais ne jamais agir : Combien de fois avez-vous entendu «il faut qu’on fasse ceci ou cela» dans cette histoire ?
Il faudrait
qu’on éteigne ce
feu un jour ...
Arrêtez de dire et faîtes !
Et que devient Martin ?
Martin a bien compris que la seule personne sur qui il pouvait compter pour évoluer en tant que développeur c’était lui même !
Merci

More Related Content

Viewers also liked

Les séniors et le crédit à la consommation
Les séniors et le crédit à la consommationLes séniors et le crédit à la consommation
Les séniors et le crédit à la consommationCA Consumer Finance
 
15. Dagenais, développement et évaluation d'une initiative de courtage de con...
15. Dagenais, développement et évaluation d'une initiative de courtage de con...15. Dagenais, développement et évaluation d'une initiative de courtage de con...
15. Dagenais, développement et évaluation d'une initiative de courtage de con...santepub
 
Kepler conference rd 6 fev12 vfinale 815
Kepler conference rd 6 fev12 vfinale 815Kepler conference rd 6 fev12 vfinale 815
Kepler conference rd 6 fev12 vfinale 815schneiderponsot
 
13 02 05 qo retraite des français ayant travaillé dans plusieurs pays cri
13 02 05 qo retraite des français ayant travaillé dans plusieurs pays cri13 02 05 qo retraite des français ayant travaillé dans plusieurs pays cri
13 02 05 qo retraite des français ayant travaillé dans plusieurs pays crimanandrify
 
L'enseignement supérieur prépare mal au marché du travail
L'enseignement supérieur prépare mal au  marché du travailL'enseignement supérieur prépare mal au  marché du travail
L'enseignement supérieur prépare mal au marché du travailLiesbeth Vranckaert
 
Webinar Cloud Hybrid Toolbox
Webinar Cloud Hybrid ToolboxWebinar Cloud Hybrid Toolbox
Webinar Cloud Hybrid ToolboxIkoula
 
Comment lancer une entreprise
Comment lancer une entrepriseComment lancer une entreprise
Comment lancer une entrepriseSoukaina Boujadi
 
Maison bioclimatique lumiere naturelle
Maison bioclimatique lumiere naturelleMaison bioclimatique lumiere naturelle
Maison bioclimatique lumiere naturelleMira Lavandier
 
Textos argumentativos.ppts
Textos argumentativos.pptsTextos argumentativos.ppts
Textos argumentativos.pptsjomarmo
 
Réfléchir pour mieux agir
Réfléchir pour mieux agirRéfléchir pour mieux agir
Réfléchir pour mieux agirSaqqarah 31
 
Newrest présentation pp
Newrest présentation ppNewrest présentation pp
Newrest présentation ppSami Jouiry
 
Tuning
TuningTuning
Tuningoctoel
 
Comment améliorer votre ROI en segmentant vos données ? (OIF 2013 - AT Internet)
Comment améliorer votre ROI en segmentant vos données ? (OIF 2013 - AT Internet)Comment améliorer votre ROI en segmentant vos données ? (OIF 2013 - AT Internet)
Comment améliorer votre ROI en segmentant vos données ? (OIF 2013 - AT Internet)AT Internet
 
Sostenibilidad de las revistas de antropología en acceso abierto
Sostenibilidad de las revistas de antropología en acceso abiertoSostenibilidad de las revistas de antropología en acceso abierto
Sostenibilidad de las revistas de antropología en acceso abiertoErnest Abadal
 

Viewers also liked (20)

Les séniors et le crédit à la consommation
Les séniors et le crédit à la consommationLes séniors et le crédit à la consommation
Les séniors et le crédit à la consommation
 
aspirateurs robots
aspirateurs robotsaspirateurs robots
aspirateurs robots
 
15. Dagenais, développement et évaluation d'une initiative de courtage de con...
15. Dagenais, développement et évaluation d'une initiative de courtage de con...15. Dagenais, développement et évaluation d'une initiative de courtage de con...
15. Dagenais, développement et évaluation d'une initiative de courtage de con...
 
Kepler conference rd 6 fev12 vfinale 815
Kepler conference rd 6 fev12 vfinale 815Kepler conference rd 6 fev12 vfinale 815
Kepler conference rd 6 fev12 vfinale 815
 
13 02 05 qo retraite des français ayant travaillé dans plusieurs pays cri
13 02 05 qo retraite des français ayant travaillé dans plusieurs pays cri13 02 05 qo retraite des français ayant travaillé dans plusieurs pays cri
13 02 05 qo retraite des français ayant travaillé dans plusieurs pays cri
 
L'enseignement supérieur prépare mal au marché du travail
L'enseignement supérieur prépare mal au  marché du travailL'enseignement supérieur prépare mal au  marché du travail
L'enseignement supérieur prépare mal au marché du travail
 
Webinar Cloud Hybrid Toolbox
Webinar Cloud Hybrid ToolboxWebinar Cloud Hybrid Toolbox
Webinar Cloud Hybrid Toolbox
 
Google drive
Google driveGoogle drive
Google drive
 
Les Châteaux de la Loire
Les Châteaux de la LoireLes Châteaux de la Loire
Les Châteaux de la Loire
 
Comment lancer une entreprise
Comment lancer une entrepriseComment lancer une entreprise
Comment lancer une entreprise
 
Maison bioclimatique lumiere naturelle
Maison bioclimatique lumiere naturelleMaison bioclimatique lumiere naturelle
Maison bioclimatique lumiere naturelle
 
Adelis marque-subjective
Adelis marque-subjectiveAdelis marque-subjective
Adelis marque-subjective
 
Textos argumentativos.ppts
Textos argumentativos.pptsTextos argumentativos.ppts
Textos argumentativos.ppts
 
Réfléchir pour mieux agir
Réfléchir pour mieux agirRéfléchir pour mieux agir
Réfléchir pour mieux agir
 
Projet de Loi de Finances pour 2015
Projet de Loi de Finances pour 2015Projet de Loi de Finances pour 2015
Projet de Loi de Finances pour 2015
 
Brochure bonampak-2015
Brochure bonampak-2015Brochure bonampak-2015
Brochure bonampak-2015
 
Newrest présentation pp
Newrest présentation ppNewrest présentation pp
Newrest présentation pp
 
Tuning
TuningTuning
Tuning
 
Comment améliorer votre ROI en segmentant vos données ? (OIF 2013 - AT Internet)
Comment améliorer votre ROI en segmentant vos données ? (OIF 2013 - AT Internet)Comment améliorer votre ROI en segmentant vos données ? (OIF 2013 - AT Internet)
Comment améliorer votre ROI en segmentant vos données ? (OIF 2013 - AT Internet)
 
Sostenibilidad de las revistas de antropología en acceso abierto
Sostenibilidad de las revistas de antropología en acceso abiertoSostenibilidad de las revistas de antropología en acceso abierto
Sostenibilidad de las revistas de antropología en acceso abierto
 

Similar to [DevoxxFr] Les bronzés font du dev

[HumanTalks] Les bronzés font du dev
[HumanTalks] Les bronzés font du dev[HumanTalks] Les bronzés font du dev
[HumanTalks] Les bronzés font du devElleneDijoux
 
Studio remote pour les indies : comment j'ai appris à ne plus m'en faire et à...
Studio remote pour les indies : comment j'ai appris à ne plus m'en faire et à...Studio remote pour les indies : comment j'ai appris à ne plus m'en faire et à...
Studio remote pour les indies : comment j'ai appris à ne plus m'en faire et à...Game Camp France
 
Dis qu’est ce que ça fait de devenir Agile?
Dis qu’est ce que ça fait de devenir Agile?Dis qu’est ce que ça fait de devenir Agile?
Dis qu’est ce que ça fait de devenir Agile?malainda
 
Créer ou refondre son site Internet (2009)
Créer ou refondre son site Internet (2009)Créer ou refondre son site Internet (2009)
Créer ou refondre son site Internet (2009)Ardesi Midi-Pyrénées
 
Les 10 trucs des Jeunes Diplômés
Les 10 trucs des Jeunes DiplômésLes 10 trucs des Jeunes Diplômés
Les 10 trucs des Jeunes DiplômésPoleDocumentation.fr
 
Eviter les désastres de sous-traitance Offshore Indien !
Eviter les désastres de sous-traitance Offshore Indien !Eviter les désastres de sous-traitance Offshore Indien !
Eviter les désastres de sous-traitance Offshore Indien !John Passy
 
Retour d’expérience : Travailler moins pour linker plus
Retour d’expérience : Travailler moins pour linker plusRetour d’expérience : Travailler moins pour linker plus
Retour d’expérience : Travailler moins pour linker plusSEO CAMP
 
Explication des tests utilisateurs par l'axe Design Sprint - Soirée Sketch ap...
Explication des tests utilisateurs par l'axe Design Sprint - Soirée Sketch ap...Explication des tests utilisateurs par l'axe Design Sprint - Soirée Sketch ap...
Explication des tests utilisateurs par l'axe Design Sprint - Soirée Sketch ap...Fabrice liut
 
#VotreJob #RecrutezMoi – Entretien avec un Ingenieur (Clement Robert @ClemRob14)
#VotreJob #RecrutezMoi – Entretien avec un Ingenieur (Clement Robert @ClemRob14)#VotreJob #RecrutezMoi – Entretien avec un Ingenieur (Clement Robert @ClemRob14)
#VotreJob #RecrutezMoi – Entretien avec un Ingenieur (Clement Robert @ClemRob14)Alban Jarry
 
Valider le B2i en découvrant les métiers de l’informatique : webmaster (grou...
Valider le B2i  en découvrant les métiers de l’informatique : webmaster (grou...Valider le B2i  en découvrant les métiers de l’informatique : webmaster (grou...
Valider le B2i en découvrant les métiers de l’informatique : webmaster (grou...Ville de Choisy-le-Roi
 
Les Code Reviews : le guide de survie
Les Code Reviews : le guide de survieLes Code Reviews : le guide de survie
Les Code Reviews : le guide de survieNicolas VERINAUD
 
Trucs et astuces pour débuter sereinement
Trucs et astuces pour débuter sereinementTrucs et astuces pour débuter sereinement
Trucs et astuces pour débuter sereinementLaurence Vagner
 

Similar to [DevoxxFr] Les bronzés font du dev (15)

[HumanTalks] Les bronzés font du dev
[HumanTalks] Les bronzés font du dev[HumanTalks] Les bronzés font du dev
[HumanTalks] Les bronzés font du dev
 
Studio remote pour les indies : comment j'ai appris à ne plus m'en faire et à...
Studio remote pour les indies : comment j'ai appris à ne plus m'en faire et à...Studio remote pour les indies : comment j'ai appris à ne plus m'en faire et à...
Studio remote pour les indies : comment j'ai appris à ne plus m'en faire et à...
 
gestion-du-temps.pdf
gestion-du-temps.pdfgestion-du-temps.pdf
gestion-du-temps.pdf
 
Challenge meccano jeffrey
Challenge meccano jeffreyChallenge meccano jeffrey
Challenge meccano jeffrey
 
Julien dollon
Julien dollonJulien dollon
Julien dollon
 
Dis qu’est ce que ça fait de devenir Agile?
Dis qu’est ce que ça fait de devenir Agile?Dis qu’est ce que ça fait de devenir Agile?
Dis qu’est ce que ça fait de devenir Agile?
 
Créer ou refondre son site Internet (2009)
Créer ou refondre son site Internet (2009)Créer ou refondre son site Internet (2009)
Créer ou refondre son site Internet (2009)
 
Les 10 trucs des Jeunes Diplômés
Les 10 trucs des Jeunes DiplômésLes 10 trucs des Jeunes Diplômés
Les 10 trucs des Jeunes Diplômés
 
Eviter les désastres de sous-traitance Offshore Indien !
Eviter les désastres de sous-traitance Offshore Indien !Eviter les désastres de sous-traitance Offshore Indien !
Eviter les désastres de sous-traitance Offshore Indien !
 
Retour d’expérience : Travailler moins pour linker plus
Retour d’expérience : Travailler moins pour linker plusRetour d’expérience : Travailler moins pour linker plus
Retour d’expérience : Travailler moins pour linker plus
 
Explication des tests utilisateurs par l'axe Design Sprint - Soirée Sketch ap...
Explication des tests utilisateurs par l'axe Design Sprint - Soirée Sketch ap...Explication des tests utilisateurs par l'axe Design Sprint - Soirée Sketch ap...
Explication des tests utilisateurs par l'axe Design Sprint - Soirée Sketch ap...
 
#VotreJob #RecrutezMoi – Entretien avec un Ingenieur (Clement Robert @ClemRob14)
#VotreJob #RecrutezMoi – Entretien avec un Ingenieur (Clement Robert @ClemRob14)#VotreJob #RecrutezMoi – Entretien avec un Ingenieur (Clement Robert @ClemRob14)
#VotreJob #RecrutezMoi – Entretien avec un Ingenieur (Clement Robert @ClemRob14)
 
Valider le B2i en découvrant les métiers de l’informatique : webmaster (grou...
Valider le B2i  en découvrant les métiers de l’informatique : webmaster (grou...Valider le B2i  en découvrant les métiers de l’informatique : webmaster (grou...
Valider le B2i en découvrant les métiers de l’informatique : webmaster (grou...
 
Les Code Reviews : le guide de survie
Les Code Reviews : le guide de survieLes Code Reviews : le guide de survie
Les Code Reviews : le guide de survie
 
Trucs et astuces pour débuter sereinement
Trucs et astuces pour débuter sereinementTrucs et astuces pour débuter sereinement
Trucs et astuces pour débuter sereinement
 

[DevoxxFr] Les bronzés font du dev

  • 1. 27 au 29 mars 2013 13h - 13h15 - Salle Miles Davis Les bronzés font du dev
  • 2. 27 au 29 mars 2013 Les bronzés font du dev Ellène Dijoux Siber Développeur Java Freelance http://uneviededev.wordpress.com @ElleneSiber
  • 3. Histoire basée sur du vecu ! Cette histoire est une aggrégation de faits vécus. Si vous avez connu la même histoire, je suis navrée pour vous ...
  • 4. Je vous présente Martin, fraîchement diplômé de l’école Epitruc. Après un stage d'un an en alternance dans la DSI de Général Electrique, il cherche un poste de développeur «Java J2EE». Après avoir publié son CV sur quelques sites bien connus par les recruteurs, il passe aujourd'hui des entretiens chez SSII Consulting.
  • 6. Cela se passe à merveille avec la directrice des Ressources Humaines qui tient un discours très rassurant ...
  • 7. Nous sommes une société à taille humaine. SSII Consulting compte 1200 collaborateurs.
  • 8. Nous sommes à la pointe de la technologie ! Après 30 minutes de discussion sur les motivations de Martin, c’est l’heure de l’évaluation technique.
  • 10. Vous avez 30 minutes 30 minutes pour répondre à un QCM de 100 questions ! Facile ! Martin a obtenu sa certification Java à l’école Epitruc.
  • 12. Le test technique fini, Martin discute maintenant avec le commercial.
  • 13. Java/J2EE ... tout ça, je connais ! Il a apprécié la discussion avec le commercial car il s’agissait d’un ancien développeur ! Au moins quand il parle Java, il sait de quoi il parle ! Surtout que c’est lui qui se chargera de son entretien annuel. Martin est plutôt rassuré.
  • 14. J’ai une superbe mission Java/J2EE pour toi ! Il a même déjà une mission pour lui ! Chouette car c’est ce qu’il recherchait : «Spring, Hibernate, Struts les dernières technos du moment ! Et tu commences demain !» dit-il. «Pas d’entretien client ?» demande Martin. «Non le client nous fait confiance pour recruter les bons, la preuve avec nos tests techniques !»
  • 15. Premier jour en mission
  • 16. Bonjour ! Je m’appelle Martin ! Et c’est tout motivé qu’il débute le lendemain son premier jour de mission. «Salut Martin, laisse-moi te présenter l’équipe :»
  • 17. Voici Jérôme, ... Voici Jérôme stagiaire en alternance ...
  • 18. Hein quoi ?! J’ai encore cassé quelque chose ?
  • 19. Denis , ... Denis, jeune diplomé comme toi.
  • 22. Argh c’est quoi ce code tout pourri encore !
  • 23. Et moi Alain. «Et moi-même Alain, le chef de projet. Bienvenu dans l’équipe ! Jean-Claude merci de t’occuper de Martin aujourd’hui, j’ai des réunions toute la journée. Je n’aurai pas de temps à lui consacrer.»
  • 25. «Très bien comme tu n’auras ton poste que demain, j’ai imprimé la doc pour toi.»
  • 26. Voilà de quoi t’occuper ! «Ce sont les spécifications fonctionnelles et techniques du projet.»
  • 27. Oh ok ! Secrètement Martin pensait qu’il allait faire du Pair-Programming avec un des développeurs durant la journée comme lors de son stage. Mais apparemment ce ne sont pas les habitudes de la maison. «Eh bien soit ! Lisons la doc ...» se dit-il.
  • 28. Martin assidu, lit rigoureusement la doc tentant de comprendre pour pouvoir rentrer dans le projet au plus vite !
  • 29. On utilise Spring Integration ? «Ah vous avez Spring Integration sur le projet ? Cool je pourrais découvrir !»
  • 30. Non. «C’est ce que l’architecte a préconisé mais ça ne marche pas alors on l’a laissé tombé. Il est vrai que la doc date d’il y a un an déjà ...» Un an ... Martin se demande si c’est vraiment pertinent de continuer la lecture de la doc ... mais c’est son premier jour, il veut bien faire alors poursuit la lecture.
  • 31. Stand-up meeting ! Et à 10h, «Tu viens Martin ? On fait notre stand-up meeting.»
  • 33. Le stand-up meeting est une cérémonie qu’il a connu sur son ancien projet, il savait ce qu’il avait à faire : expliquer ce qu’il a fait hier, ce qu’il compte faire aujourd’hui et les difficultés rencontrées mais ...
  • 34. Jean-Claude tu finis quand ? Cela ne se passe pas tout à fait comme ça ...
  • 36. Denis tu finis ça pour aujourd’hui.
  • 37. Et Jérôme tu commences ça. Chaque société doit avoir sa façon de faire son stand-up meeting ...
  • 39.
  • 40. Scrum ? «Donc vous faîtes du Scrum ?» demande Martin
  • 41. C’est notre premier sprint. «Oui depuis 2 mois, c’est notre premier sprint» répond Jean-Claude.
  • 42. 2 mois ?! «2 mois c’est un peu long comme sprint non ?»
  • 43. «Oui mais on n’arrive pas à finir ce sprint et il y a plein de points de blocage» «C’est pour cela que vous avez autant de post-its en In Progress ?» «Oui, mais je trouve franchement que la méthodologie Scrum est plus proche du mode La Rache ... mais au moins les utilisateurs peuvent changer d’avis quand ils veulent !»
  • 45. Martin a enfin son poste ! Il s’empresse donc de checkouter le projet et d’installer ses outils préférés. Et puis ...
  • 46. Build failed ?! Mais heureusement, Jean-Claude a la solution !
  • 47. Fais un skip test.
  • 48. Oh ... ok ... «Il faudrait que je mette la config par défaut dans le pom mais je n’ai pas encore trouvé le temps» dit Jean-Claude. «Et pourquoi les tests ne passent pas ?» demande Martin «Parce qu’on n’a pas le temps de les corriger !» répond Jean-Claude agacé
  • 49. Le midi, à la cantine ...
  • 50. ? Ce midi, Martin prend le temps de questionner Denis et Jérôme à la Cantine : «Ca fait longtemps que vous êtes sur le projet ?»
  • 51. 1mois «Moi ça fait un mois» répond Jérôme
  • 52. 6 mois «Et moi 6 mois» dit Denis
  • 53. Jean- Claude, il assure ! «Le plus ancien sur le projet c’est Jean-Claude, il est là depuis le début. Il connaît l’application sur le bout des doigts et il est super balaise ! Je pense qu’avec son niveau, il ne va pas tarder à devenir chef de projet ! Car après 5 de dev, il a fait le tour ...»
  • 55. De retour au bureau, Jérôme interpelle Jean-Claude :
  • 56. @Transactionnal ? «A quoi les @Transactionnal au début de certaines méthodes ?»
  • 57. C’est une annotation, c’est tout ! «C’est une annotation» répond Jean-Claude «Et qu’est-ce que c’est ?» demande Denis «Une annotation c’est une annotation cela ne s’explique pas. C’est tout ce que tu dois savoir !»
  • 58. Ah ok ... merci ... Martin qui voit la scène de loin s’interroge : «Bon techniquement ... mais pas très pédagogue ...»
  • 60. Cette après-midi, Martin a pris une nouvelle user-story au tableau. Il essaie tant bien que mal de comprendre la pertinence de développer une messagerie dans l’application ...
  • 61. ?! «Les utilisateurs ont une boite mail. Pourquoi s’amuserait-il à passer par cette messagerie interne pour s’envoyer des messages ?» demande-t-il à Jean-Claude.
  • 62. Cherche pas à comprendre ! «Ne cherche pas à savoir, ce ne sont pas tes affaires ! On nous demande de faire une messagerie, on la fait ! De toute façon, le métier n’a pas de temps à nous consacrer, on le fait et c’est tout !»
  • 63. Ah ... ok ... Martin finit par se résigner ...
  • 65. ?! Ce n’était pas facile de réaliser une messagerie interne, mais il y est arrivé ! Et après un update, Martin réalise que son code a disparu ...
  • 66. J’ai tout refait ! «C’est normal, j’ai tout refait car ton code était tout pourri.» répond Jean-Claude
  • 67. Qu’est-ce qui n’allait pas ? Martin demande du feedback pour pouvoir éviter de reproduire les mêmes erreurs.
  • 68. Tout ! «Pleins de trucs mais je n’ai pas le temps de t’expliquer là.»
  • 70. Dans une heure, c’est fini ! 18h : les utilisateurs sont partis, on peut commencer le déploiement du nouveau war. «Tu vas voir Martin, j’ai simplifié la config ça sera plus simple pour le déploiement et dans 1h on aura fini !»
  • 72. Puis, enfin à 3h du matin ... Ah celui-là aussi était mal configuré ... Et comme il fallait s’y attendre ... à 3h du matin : «Ah oui ! Il y avait aussi ce fichier à mettre à jour avec la conf de prod et là je pense que c’est bon. On va pouvoir rentrer chez nous ! Bon demain, je crée un doc pour le déploiement !» promet Jean-Claude. Mais commme toutes les résolutions, cette dernière attendra elle aussi ...
  • 73. Le lendemain matin ... ... car le lendemain ...
  • 74. Zzz ... ... le réveil et la matinée fut difficile pour Martin. Car en plus du dev, il doit également assurer le support de l’application.
  • 75. DRING !!! Surtout les lendemains de mise en prod ...
  • 77. java.lang.NullPointerException !!! WTF ?! Au téléphone, un utilisateur mécontent qui ne comprend pas l’étrange erreur affiché lorsqu’il fait un recherche ... «La page de recherche ?! Mais c’est la page sur laquelle Jean-Claude a fait un gros refactoring ... et sans tests unitaires !» pense Martin. La journée va être longue pour notre petite équipe de bronzés ...
  • 78. Epilogue Cette mission fut difficile mais enrichissante pour Martin. Cela lui a permis de comprendre les comportements qui peuvent être dangereux pour un projet :
  • 79. Pas de panique, je m’occupe de tout. Jouer au super héros et vouloir tout réparer soi-même sans rien expliquer aux autres.
  • 80. Besoin d’aide ? Non c’est bon. Porter seul le projet.
  • 81. Dire mais ne jamais agir : Combien de fois avez-vous entendu «il faut qu’on fasse ceci ou cela» dans cette histoire ?
  • 82. Il faudrait qu’on éteigne ce feu un jour ... Arrêtez de dire et faîtes !
  • 83. Et que devient Martin ? Martin a bien compris que la seule personne sur qui il pouvait compter pour évoluer en tant que développeur c’était lui même !
  • 84.
  • 85. Merci