Come mantenere una squadra ben allenata? [chiuso]

11

Attualmente sto facendo da mentore a un piccolo team di 4 sviluppatori junior in una piccola azienda di software. Sono molto intelligenti e spesso raggiungono i loro compiti con un lavoro di alta qualità, ma sono sicuro che possono ancora fare meglio - in realtà ho esattamente la stessa sensazione per me :) -. Inoltre alcuni di loro sono più "junior" di altri.

Quindi mi piacerebbe trovare un modo divertente per migliorare le loro abilità CS (progettazione, codifica, test, algoritmo ...) oltre all'esperienza che acquisiscono nel loro lavoro quotidiano. Ad esempio, stavo pensando di organizzare sessioni settimanali, non più lunghe di 2 ore, in cui potremmo stare insieme per lavorare su impegnativi esercizi CS. Un po 'come un dojo di codifica.

Sono sicuro che la squadra potrebbe goderne, ma è davvero una buona idea? Sarebbe efficace in un contesto professionale? Hanno già trascorso tutta la settimana a programmare, quindi come dovrei organizzarlo per ottenere dei benefici?

Qualsiasi commento benvenuto!

    
posta PierrOz 23.12.2010 - 16:58
fonte

8 risposte

9

Ecco alcune idee

  • Prenota club, leggi libri come Pragmatic Programmer o altre cose incentrate sulla carriera.
  • Coding Dojo, puoi iniziare con un semplice problema al di fuori del progetto e quindi estenderlo al Progetto o altrimenti se lo desideri.
  • Retrospettive o incontri di feedback, per ottenere idee dal gruppo stesso per migliorare lo sviluppo del progetto a cui tutti partecipano
  • Una riunione di gruppo di utenti in cui una persona designata presenta ciò migliorerebbe la presentazione / le competenze trasversali del team

  • di tanto in tanto eseguendo un'attività non correlata al lavoro come andare in Dave & Busters per divertirsi venerdì o per tipo .. per migliorare la chimica della squadra

Qualsiasi attività o riunione dovrebbe essere inferiore a 45 minuti solo per avere l'intero gruppo interessato. Ogni cosa che va oltre e ora cadrà completamente sulle spalle del presentatore o leader del gruppo.

    
risposta data 23.12.2010 - 17:23
fonte
1

Le persone potrebbero avere le proprie idee su come vogliono imparare. Personalmente preferirei seguire un corso o lavorare a un progetto nel mio tempo libero e ho fatto entrambe le cose. Se tutti i membri del team stanno bene con le sessioni di allenamento, allora fallo, finché le persone della tua squadra non inizieranno a trattarle come "funzionano" nel tempo ...

    
risposta data 23.12.2010 - 17:07
fonte
1

Penso che l'unico modo per mantenere un team ben addestrato sia assumere gli sviluppatori che vogliono continuare ad apprendere.

Se non proviene dall'interno, non produrrà risultati duraturi.

se desiderano apprendere, allora se le attività di apprendimento in team sono efficaci o meno dipenderanno principalmente da interessi e stili di apprendimento.

    
risposta data 23.12.2010 - 17:36
fonte
1

Penso che il sistema dojo suoni bene e permetta loro di procedere a casa se lo desiderano. Aggiungere qualche tipo di ricompensa potrebbe essere utile ma potresti dare risalto alla cometa e non penso a nulla di buono per il lavoro di squadra. Ad ogni modo, un posto fantastico dove andare a cercare i problemi del computer è il giudice online Sphere . Definisce un problema, un insieme di risultati attesi e consente di caricare un file con la soluzione al problema. Se hai ragione, i punti salgono.

Buona fortuna!

    
risposta data 23.12.2010 - 17:48
fonte
1

Ci sono un certo numero di competenze di cui abbiamo bisogno come sviluppatori che non sono necessariamente direttamente correlati al codice. Un esempio è la presentazione e la spiegazione delle cose tecniche alle persone non tecniche in un modo che possono comprendere. Qualcosa che può essere efficace mentre porti la tua squadra fino a dove vuoi loro è dare qualcosa come i compiti a casa.

Ogni settimana, dai ai tuoi ragazzi un problema da risolvere. Per mantenerlo più vantaggioso per l'azienda, mantenere i problemi su qualcosa di rilevante per ciò su cui si sta lavorando. Preferibilmente, qualche punto dolente non hai ancora trovato la soluzione per te. Ognuno dei tuoi soci junior presenterà a turno (preferibilmente una volta alla settimana) mentre interpreti il ruolo del cliente. In sostanza, hai due obiettivi con questo approccio:

  1. L'atto di insegnare / presentare richiede al ragazzo sul pavimento di avere una conoscenza più profonda del semplice fare esercizi. È un modo indiretto, ma molto efficace per insegnare a qualcuno un argomento.
  2. Se riescono a convincerti che è una buona idea, potrebbero essere in grado di convincere un cliente della stessa cosa. Assicurati di porre domande che facciano riflettere sull'impatto commerciale di ciò che stanno proponendo.

Certo, inizia ogni sessione con un promemoria per cui porterai domande mirate - e lo scopo non è essere meschino, ma prepararli per un cliente difficile.

    
risposta data 23.12.2010 - 18:31
fonte
1

In qualità di manager o senior, mi impegnerei per continuare a lanciare sfide nel lavoro "reale". Prova a dare alle persone le cose su cui lavorare che sono un po 'fuori dal loro campionato o almeno le sfida. Invia uno dei loro pari per dare una mano e tutor, se necessario.

Dopo che qualcuno ha terminato qualcosa, sfidali a provare un approccio nuovo / diverso.

Aiutali a capire le cose sul posto invece di lavorare su cose che non sanno ancora come fare.

Integrare l'apprendimento nel lavoro stesso, i progetti paralleli per l'apprendimento tendono ad essere saltati con scadenze all'orizzonte.

A volte affermare direttamente la necessità di un determinato esperto può aiutare come motivatore.

    
risposta data 23.12.2010 - 22:56
fonte
1

Offri loro 3 ore a settimana per cercare / hackerare ciò che sono interessati alla programmazione. Idealmente questo sarebbe più, ma penso che 3 ore siano un buon inizio. Potrebbe essere tutto in un pezzo, potrebbe essere suddiviso in piccoli segmenti di 30 minuti lungo la strada. Sembra che questi programmatori siano abbastanza motivati da riuscire a tenere sotto controllo le cose.

Ma consentirgli di esplorare i propri campi di interesse tornerà per aiutare anche la squadra. Una persona a cui piacciono davvero i dati può esaminare e scrivere una piccola app utilizzando una soluzione NoSQL che potrebbe aiutare un progetto che si avvicina di qualche mese. Un'altra persona potrebbe avere ragione su una piccola app di utilità per una banale necessità (come l'analisi dei file di registro) che diventa un'app di base nella tua squadra. Anche le conoscenze acquisite leggendo ciò che stanno facendo le grandi aziende possono aiutare a valutare le opzioni per il prossimo progetto che verrà fuori.

Siamo in un ambiente che è in continua evoluzione e ogni membro del tuo team è sicuro che porterà qualcosa di unico al tavolo, quindi offri loro l'opportunità di espandersi alle proprie condizioni. Apprezzeranno che non sono stati costretti a qualcosa (anche se tutte le intenzioni sono buone) e otterrete una buona diversità di feedback.

    
risposta data 24.12.2010 - 00:07
fonte
0

Un'altra tecnica che ho visto funziona è una presentazione a pranzo di uno sviluppatore / consulente senior una volta al mese circa. E non dimenticare di fornire il pranzo. La maggior parte degli sviluppatori che conosco ama grub gratis. Potresti chiedere loro se preferiscono argomenti specifici.

    
risposta data 27.12.2010 - 05:54
fonte

Leggi altre domande sui tag