Sono il capo di un piccolo team in cui ognuno ha meno di un anno di esperienza nello sviluppo di software. Non mi definirei affatto un guru del software, ma ho imparato alcune cose in pochi anni in cui ho scritto software.
Quando eseguiamo revisioni del codice, insegno e correggo un bel po 'di errori. Dirò cose come "Questo è eccessivamente complesso e contorto, ed ecco perché" o "Cosa ne pensi di spostare questo metodo in una classe separata?" Sono molto attento a comunicare che se hanno domande o opinioni dissenzienti, va bene e dobbiamo discutere. Ogni volta che correggo qualcuno, chiedo "Cosa ne pensi?" o qualcosa di simile.
Tuttavia raramente non sono mai d'accordo o chiedono perché. E ultimamente ho notato segni più palesi che sono ciecamente d'accordo con le mie dichiarazioni e non formano opinioni proprie.
Ho bisogno di una squadra che possa imparare a fare le cose in modo autonomo, non solo seguire le istruzioni. Come si corregge uno sviluppatore junior, ma lo incoraggia ancora a pensare da solo?
Modifica: ecco un esempio di uno di questi segni evidenti che non stanno formando le loro opinioni:
Io: mi piace la tua idea di creare un metodo di estensione, ma non mi piace come hai passato un grande lambda complesso come parametro. La lambda obbliga gli altri a conoscere troppo l'implementazione del metodo.
Junior (dopo avermi frainteso): Sì, sono totalmente d'accordo. Non dovremmo usare i metodi di estensione qui perché costringono altri sviluppatori a conoscere troppo l'implementazione.
C'è stato un malinteso, e questo è stato risolto. Ma non c'era nemmeno un'UNIONE di logica nella sua affermazione! Pensava di rigurgitare di nuovo la mia logica, pensando che avrebbe avuto senso quando davvero non aveva idea del perché lo stesse dicendo.