Je suis le chef d'une petite équipe où tout le monde a moins d'un an d'expérience en développement logiciel. Je ne me qualifierais certainement pas de gourou des logiciels, mais j’ai appris quelques choses au cours des quelques années où j’ai écrit des logiciels.
Lorsque nous procédons à des revues de code, j'enseigne et corrige pas mal les erreurs. Je vais dire des choses comme "C'est trop complexe et compliqué, et voici pourquoi" ou "Que pensez-vous du déplacement de cette méthode dans une classe séparée?" Je fais très attention de communiquer que s'ils ont des questions ou des opinions divergentes, c'est bon et nous devons en discuter. Chaque fois que je corrige quelqu'un, je lui demande "Qu'en penses-tu?" ou quelque chose de similaire.
Cependant, ils sont rarement, voire jamais, en désaccord ou demandent pourquoi. Et dernièrement, j'ai remarqué des signes plus flagrants indiquant qu'ils acceptaient aveuglément mes déclarations et ne formaient pas leurs propres opinions.
J'ai besoin d'une équipe capable d'apprendre à bien faire les choses de manière autonome, pas seulement de suivre les instructions. Comment corriger un développeur junior tout en l'encourageant à penser par lui-même?
Edit: Voici un exemple de l'un de ces signes évidents qu'ils ne se forgent pas leur propre opinion:
Moi: J'aime votre idée de créer une méthode d'extension, mais je n'aime pas la façon dont vous avez passé un grand complexe lambda en tant que paramètre. Le lambda force les autres à en savoir trop sur la mise en œuvre de la méthode.
Junior (après m'avoir mal compris): Oui, je suis totalement d'accord. Nous ne devrions pas utiliser les méthodes d'extension ici car elles forcent les autres développeurs à en savoir trop sur la mise en œuvre.
Il y a eu un malentendu et cela a été réglé. Mais il n'y avait même pas une once de logique dans sa déclaration! Il pensait qu'il régurgitait ma logique avec moi, pensant que cela aurait du sens quand il ne savait vraiment pas pourquoi il le disait.