Qual è il mix ideale di sviluppatori senior e junior in una squadra?


19

In qualsiasi squadra, avrai bisogno di sviluppatori più grizzled e grigi e di alcuni giovani cuccioli. Alcuni motivi includono:

  • I soldi. Ci sono spesso attività che non richiedono lo stesso livello di esperienza per essere consegnate, quindi ha senso non pagare il massimo del dollaro per avere quelle attività adempiute.
  • Energia. C'è un'energia e un entusiasmo che le nuove persone possono portare a un team che gli impedisce di diventare troppo stantio e mettersi in cammino. C'è anche calma e saggezza che le persone più anziane possono portare.
  • Trasferimento di conoscenze e crescita della carriera. Sia in termini di progetto che di competenze, è utile e spesso divertente insegnare alle persone e imparare cose nuove. È soddisfacente aiutare "attirare" nuovi membri del team.

Mi rendo conto che ci sono alcuni progetti all'avanguardia in cui può essere importante che ci siano più persone anziane che junior, ma in generale, esiste un mix ideale di esperienze in una squadra o dipende totalmente dal progetto?

Risposte:


14

Mi piace molto quello che Eric Brechner ha da dire su questo argomento

Pensa alla tua squadra come a un fiume anziché a un lago. Un lago ristagna. Non c'è energia o slancio per cambiare. Lo stesso vale per i gruppi che ristagnano. Coltivano mediocrità e compiacenza; detestano il rischio. Un fiume scorre e cambia sempre con molta energia. Vuoi un fiume.

Un fiume dipende dal flusso di acqua e la tua squadra dipende dal flusso di persone e informazioni. Puoi pensare alle persone divise in tre gruppi: nuovo sangue, nuovi leader e anziani pronti per una nuova sfida. Ecco come quei gruppi dovrebbero bilanciarsi e fluire:

  • Il gruppo più numeroso dovrebbe essere il nuovo sangue. Non tutti diventeranno leader tecnici o organizzativi.

  • A volte avrai più nuovi leader che anziani, a volte il contrario, ma idealmente dovresti mantenere un equilibrio.

  • Per il flusso, vuoi che un flusso costante di nuovo sangue diventi i tuoi nuovi leader e nuovi leader che diventino anziani.

  • La chiave per fluire è il nuovo sangue che entra e gli anziani che escono. Perché questo funzioni, VUOI che i tuoi anziani si trasferiscano prima che ostruiscano il flusso e interrompano il flusso di opportunità per gli altri.

Non tutte le tecnologie scorrono alla stessa velocità. I motori centrali, come il kernel di Windows, scorrono lentamente, mentre i servizi basati sul Web, come MSN Search, scorrono rapidamente. Devi adattarti alla tua situazione, ma anche le tecnologie più conservative cambiano e fluiscono. Come si incoraggiano e mantengono con successo un flusso sano?

  • Mantenere una scorta costante di nuove persone.

  • Installa la condivisione delle informazioni come uno stile di vita.

  • Dai forma all'organizzazione e ai ruoli per creare opportunità di crescita.

  • Trova nuove sfide per i tuoi anziani.


Quando abbiamo confuso, la programmazione diventa divertente!
pramodc84,

5
Spero che "trovare nuove sfide per i tuoi anziani" non sia un eufemismo nel licenziarli!
Paddyslacker

L'unica cosa che vedo di sbagliato in questo è che presume che gli anziani siano sempre i leader. Ho incontrato anziani che non vogliono guidare o semplicemente non sono così bravi.
Jason Baker,

1
@Conrad - Questa è la domanda sbagliata. La domanda è "Vorresti persone anziane che non sono abituate all'organizzazione generale?" La risposta è ovviamente no. Uno non deve essere utile come leader per essere utile all'intera organizzazione.
Jason Baker,

1
@Jason forse non siamo d'accordo su cosa sia un leader. Per me un leader è chiunque abbia un ruolo maggiore di uno sviluppatore a testa in giù. ad esempio, assumendo un ruolo di progettazione / analisi, un ruolo di PM, un ruolo di tutoraggio, ecc. Penso che qualcuno che vuole ottenere un aumento di stipendio ogni anno ed essere ancora uno sviluppatore a testa in giù nel tempo ridurrà il valore che portano.
Conrad Frix,

7

Non credo che ci sia un mix ideale , dipende interamente dal progetto e dall'ambiente. Un paio di esempi:

Tutti esperti

Potrebbe essere appropriato avere tutti i membri del team con esperienza in un progetto critico con una scadenza serrata, in cui non c'è spazio per gli sviluppatori junior per mettersi al passo.

Tutti junior

In un altro esempio, potrebbe essere appropriato avere tutti gli sviluppatori Junior in un progetto più orientato alla ricerca e sviluppo. C'era un team in una società in cui ho lavorato composto interamente da stagisti a cui sono stati assegnati progetti che necessitavano di una soluzione innovativa (ma non necessariamente veloce o corretta). Erano veri problemi per i clienti, ma non avevano alcuna buona soluzione conosciuta, quindi avevano tirocinanti che sarebbero stati nuovi e avevano poche nozioni preconcette.

Il punto qui non è che uno di questi approcci sia spesso giusto, più che i progetti eseguiranno l'intera gamma tra loro in base alle esigenze aziendali, ai fattori organizzativi e alla disponibilità degli sviluppatori.


3
Penso che sarebbe utile avere almeno uno sviluppatore senior su quasi tutti i progetti, anche se non ci stanno lavorando a tempo pieno
Casebash,

2
Nella mia esperienza "innovativa" di solito significa un sacco di junior che bruciano l'olio di mezzanotte scrivendo la loro versione, peggio ancora, di qualcosa che esiste già nel set di strumenti. O forse sto solo ristagnando.
NeedHack,

2

Penso che l' ideale sarebbe di non avere alcuna distinzione specifica tra "junior" e "senior". Le persone dovrebbero essere trattate come individui, non come oggetti in un cassetto. Allo stesso modo, ogni progetto dovrebbe essere trattato come un problema individuale che richiede capacità, talenti o personalità individuali da risolvere. Qualsiasi classificazione in "junior" e "senior" serve solo a trasformare la realtà in una sua approssimazione sempre più grossolana e quindi rende sempre meno probabile che la decisione presa in ogni singolo caso sia in ogni senso "ideale".


2
Penso che sia una distinzione utile da fare, purché tu riconosca che alcune persone potrebbero essere proprio ai margini della divisione Junior / Senior
Casebash
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.