Nous sommes une équipe de 3 développeurs (2 développeurs expérimentés et un junior).
Nous venons de lancer un tout nouveau projet. Nous avons conçu l'application, concentré nos efforts sur le choix de la bonne architecture et nous posons maintenant les premières lignes de code. Nous en écrivons le cœur, ce qui sera le fondement de toute l'application.
Ce n'est pas non plus une application facile. Exigences de performance strictes, modèle d'entité complexe massivement distribué, etc.
Nous sommes tous hors de notre zone de confort, surtout les juniors. Il n'a pas l'expérience pour créer un bon design dès le départ. Ce n'est pas un problème cependant parce que moi et l'autre développeur sommes là pour aider et nous croyons tous deux au mentorat et à la constitution d'équipes, mais ... nous ne savons pas exactement quelle serait la meilleure façon de le faire, afin qu'il obtienne une expérience agréable et apprend le maximum de compétences.
Nous avons tous les deux réalisé que nous n'avions pas de junior sur de nouveaux projets, seulement sur ceux existants où c'était plus facile pour le junior parce qu'il avait une base de code entière pour apprendre et inspirer. Mais pour cette application, nous n'avons presque pas de code. Nous venons de commencer.
Nous réfléchissions à quelques approches:
- faites-le essayer par lui-même pendant quelques jours, puis intervenez et refactorisez le code avec lui, dirigez-le dans la bonne direction, puis répétez => Ce ne sera peut-être pas une expérience amusante pour lui car nous signalerons ses erreurs à chaque refactor ;
- demandez-lui de jumeler la programmation avec l'un de nous => il pourrait devenir juste un "spectateur" et être d'accord avec tout ce que nous faisons, sans vraiment apprendre beaucoup ou digérer une grande partie de l'information;
- nous faire construire le squelette de chaque module, avec un design solide et lui donner ensuite le module pour ajouter les pièces manquantes => ce n'est peut-être pas amusant de ramasser après nous et il y a le risque qu'il ne fasse attention qu'à combler les lacunes et non à l'ensemble du design.
Comment pouvons-nous l'impliquer dans la conception afin qu'il ne se sente pas en quelque sorte en dehors de celui-ci et qu'il apprenne beaucoup de l'expérience et gagne suffisamment de confiance pour l'essayer par lui-même?