Un team di sviluppatori ha bisogno di un manager?

27

Sfondo:

Attualmente faccio parte di un team di quattro persone: 1 manager, 1 sviluppatore senior e 2 sviluppatori. Facciamo una serie di sistemi / progetti in-house personalizzati (ad esempio 6-8 settimane) per un'organizzazione di circa 3500 dipendenti, nonché tutta la manutenzione e il supporto richiesti dai sistemi che sono stati creati in precedenza. Non c'è abbastanza di noi per fare tutto il lavoro che potenzialmente sta arrivando sulla nostra strada - siamo a corto di personale. Il management lo riconosce, ma le limitazioni del budget limitano la nostra capacità di reclutare altri membri del team (anche se restituiamo il salario in risparmi).

Modifica

Questo ci lascia dove siamo ora. Il nostro manager deve lasciare il suo ruolo per i pascoli nuovi, lasciando un posto vacante nella squadra. La direzione sta sfruttando questa opportunità per ristrutturare il nostro team che vedrebbe il ruolo di manager del team sostituito da un altro sviluppatore e da un altro sviluppatore senior. La loro logica è che abbiamo bisogno di più sviluppatori, quindi ecco un modo per finanziarlo (uno dei ruoli è parzialmente finanziato da un altro posto vacante).

Il team non avrebbe un diretto manager di linea e i ruoli e le responsabilità verrebbero suddivisi tra senior e il service manager (relativamente nuovo da pubblicare) (un ruolo non tecnico con una conoscenza / esperienza di sviluppo minima o nulla l'attenzione è condivisa da un certo numero di altri team e individui) - chi sarebbe il nostro prossimo attuale manager nella catena alimentare.

Credo che l'ultima domanda sia:

È possibile eseguire un team di sviluppo senza un manager? ne hai avuto esperienza? E quali potrebbero andare storte / potrebbero esserci dei vantaggi?

Preferirei "vedere la luce" e i vantaggi di fare le cose in questo modo, o trovare alcuni punti per argomentarle contro.

    
posta Amadiere 15.04.2016 - 14:10
fonte

16 risposte

46

Maggiore è il rischio, più hai bisogno di "copertura aerea". Questo è ciò che un manager dovrebbe fornire. Mentre il team svolge il lavoro, il manager deve garantire che non ci sia nulla che impedisca al team di raggiungere gli obiettivi della squadra. Che si tratti di modificare il programma, interferire con le interferenze tra il team e il personale di vendita, o semplicemente assicurarsi che il team venga pagato in tempo e che la macchina per il caffè rimanga funzionante. Un manager davvero eccezionale consente al team di funzionare quasi come se il manager non fosse lì.

La realtà, naturalmente, è che la maggior parte dei manager fallisce completamente in questo. Sono entrambi microgestiti, o sono resi obsoleti in modo che i livelli superiori dell'azienda possano controllare le cose in modo più diretto, ei veri grandi manager sono davvero un uccello raro. Per quanto riguarda un team di software, ci sono alcuni pro e contro in entrambe le direzioni quando si tratta di avere una struttura gerarchica o piatta del team. Se la squadra è molto piccola, e il lavoro svolto richiede una minima sovrapposizione (e per questo intendo che tutti hanno un progetto indipendente), allora è stata la mia esperienza che una struttura di squadra piatta (anche non gestita) può funzionare molto bene se tutto il i membri del team sono disciplinati. È stata anche la mia esperienza, tuttavia, quella in cui c'è una grande sovrapposizione nel lavoro che i membri del team fanno, dove ci sono due o più personalità relativamente forti, o dove c'è un ambiente di lavoro relativamente stressante con un carico di lavoro occupato, quindi avendo un capo squadra o un manager con responsabilità chiaramente definite è generalmente essenziale.

Ci sono molti fattori coinvolti, ma in realtà si riducono alle personalità coinvolte, alle loro motivazioni individuali e agli obiettivi di carriera, e l'esempio e le indicazioni fornite dal management superiore che determineranno quanto sia necessario un manager o una posizione di leader del team. Generalmente, se c'è qualche caos e quando il team lo richiede, allora la squadra ha chiaramente bisogno di una guida. Se le cose generalmente funzionano bene senza input da parte della direzione, forse il team può gestire una struttura non gerarchica per un certo tempo ... almeno fino a quando il carico di lavoro e la pianificazione diventano troppo difficili da gestire.

    
risposta data 02.06.2012 - 16:12
fonte
17

Qualcuno deve essere il manager, ma nel caso della tua squadra, non penso che questa sia una posizione a tempo pieno. Assumere un altro sr. dev e fare di uno di loro il manager. Idealmente, quello che meglio si adatta a essere un manager e non necessariamente il miglior programmatore.

Il manager deve avere la decisione finale dove non c'è consenso, quindi la persona dovrebbe essere tecnicamente qualificata. La valutazione degli altri programmatori, delle riunioni e della gestione dei dirigenti è parte del lavoro.

Letture consigliate: L'anno senza pantaloni . Anche un grande progetto di software (WordPress) può andare senza direttori diretti, ma ci sono alcuni compiti (nessuno vuole fare / sono molto difficili) o richiedere l'integrazione di un gran numero di sviluppatori per lo stesso compito, può essere molto difficile senza alcuni controllo centrale.

    
risposta data 28.01.2014 - 19:36
fonte
12

La semplice risposta alla tua domanda è sì come altri hanno indicato.

Una risposta più completa ma più complessa alla tua domanda è indirizzare:

"Il management lo riconosce, ma le restrizioni del budget limitano la nostra capacità di reclutare altri membri del team"

Gestione dire "sì, lo riconosciamo, riconosciamo che" sono solo "parole" per farti sentire meglio. non ritiene che sia fondamentale per il successo dell'organizzazione, oppure sosterrebbero veramente effettivamente ottenendo qualcuno!

Altre cose a cui prestare attenzione (dato che c'è molta psicologia in questo) è quando la direzione ti dice cattive notizie, ma mescola in qualche modo uno scherzo, forse menzionando direttamente il problema, forse no, ma che fondamentalmente rende impossibile chiedilo (è una tecnica sottile e intelligente). Un altro da tenere d'occhio è una riunione di 3 ore in cui ti viene presentato il piano e in 2 ore e 55 minuti vengono chieste le tue opinioni.

Sii cauto nei confronti del management che "dice" la cosa giusta in contrapposizione alla gestione che "fa" la cosa giusta.

    
risposta data 24.04.2013 - 05:04
fonte
6

Nessun manager = Nessuna responsabilità = Mess a lungo termine almeno. Ognuno farà le cose come gli pare e il middle management non saprà con chi parlare o chi ha ragione e chi ha torto per un dato problema o richiesta. A meno che le attività siano così segregate e con poche o nessuna relazione, avere molti "piccoli manager" non funziona nello sviluppo perché ci sono tanti modi per svolgere qualsiasi compito e poiché la gestione richiede esperienza che uno sviluppatore impegnato potrebbe non aver acquisito. C'è bisogno che qualcuno veda l'immagine completa. Lo stile suggerito potrebbe funzionare per i team che forniscono supporto per applicazioni legacy o attuali ma non in fase di sviluppo. Per essere ottimisti, ci vorrà la tua organizzazione e alcune prove e fallimenti prima che questo funzioni abbastanza bene.

    
risposta data 02.06.2012 - 16:53
fonte
4

Concordo con le risposte sopra, ma c'è una considerazione importante.

Un "manager" è una posizione, ma pensa in termini di ruoli , un manager è qualcuno che ha certe responsabilità . Indipendentemente da quali siano queste responsabilità, negoziati con CxO, redigere rapporti, gestire le vacanze o persino riempire una macchina da caffè, la tua squadra ha bisogno di qualcuno responsabile per questo.

Pro - Può essere uno di voi, e questo potrebbe diventare un grande impulso alla sua carriera. Il resto del team otterrà qualcuno che non è "assegnato dall'alto", ma qualcuno che comprenda profondamente i bisogni della squadra.
Ovviamente, non dimenticare di negoziare quanto tempo impiegherà per le attività manageriali e cosa rimane per ciò che era solito fare prima.

Con's - È anche possibile che nessuno di voi desideri essere un manager. Non c'è niente di male in questo. Molti sviluppatori preferiscono la tastiera e altri sviluppatori, che "perdere tempo" con report, diagrammi e riunioni. Fidati di me, cinque minuti con il boss urlante ogni mattina è estremamente demotivante! :)

Quindi, vorrei riformulare la tua domanda in questo modo:
È possibile eseguire un team di sviluppo senza un gestore dedicato ? - .
La tua squadra è pronta per questo cambiamento? - Non posso dire.
Provalo. Vale la pena provare.

    
risposta data 02.06.2012 - 20:48
fonte
3

Attualmente sto lavorando a una piccola squadra senza un manager. Piccola azienda Funziona bene.

Il tuo chilometraggio può variare.

    
risposta data 02.06.2012 - 16:56
fonte
3

Hai bisogno di un capo tecnico e un manager, sì. Personalmente ritengo che la guida tecnica sia molto più importante, comunque. (Se non sei sicuro di cosa si tratti, è fondamentalmente la persona che distribuisce il lavoro e si assicura che tutti facciano ciò che dovrebbero essere.)

    
risposta data 02.06.2012 - 17:40
fonte
2

Un team di sviluppatori non ha bisogno di un manager se ogni persona è abbastanza matura per lavorare come una squadra e soddisfare le aspettative degli stakeholder.

Ci sono alcuni ruoli (ad esempio gli sviluppatori) che devono essere focalizzati su un problema che deve essere risolto e non preoccuparsi di altri fattori ambientali. Ecco dove avere un manager aiuta.

Avendo detto che qualcuno anziano che può aggiungere valore aiuta sempre. Anche un amministratore delegato riferisce a un gruppo di dirigenti (consiglio di amministrazione).

I miei 2 centesimi ...

    
risposta data 10.06.2012 - 00:47
fonte
1

Suggerirei che dipenda dalle battaglie che devono essere combattute per la squadra nell'organizzazione. Se ci sono problemi che ti impediscono di fare i tuoi lavori, allora il manager dovrebbe ordinarli.

Potrebbero esserci cose come garantire che le priorità vengano controllate e impostate in modo ragionevole, assicurandoti di avere l'attrezzatura, il software, ecc. di cui hai bisogno per svolgere il tuo lavoro. Dovrebbero essere i sostenitori del team nell'organizzazione.

Come ti impegni con il business, come decidi su cosa dovresti lavorare, chi determina quando sei "finito". Se l'organizzazione si occupa di queste cose senza che il tuo manager debba fare molto, allora è grandioso. Ma potrebbero esserci dei cambiamenti al di fuori della tua squadra e forse se una o due persone chiave nel business cambiano ruolo potresti trovarti in una situazione difficile.

Forse potresti scegliere un leader strong nell'organizzazione che può essere il tuo avvocato, ma non ha bisogno di partecipare alla tua gestione quotidiana, avvicinarti a loro e vedere se sarebbero disposti a mettere la tua squadra sotto di loro. (Forse lo hai già fatto con il tuo "gestore del servizio" di cui hai parlato.)

    
risposta data 03.06.2012 - 13:34
fonte
1

risposta breve: sì, può

Risposta lunga: ma dipende dalle personalità della squadra. Ovviamente, qualcuno deve decidere cosa stai facendo e quindi hai bisogno di qualcuno a cui fare rapporto - potrebbe non essere necessario essere il manager della tua squadra, ma qualcuno deve darti del lavoro da fare. All'interno del team, potresti aver bisogno di qualcuno per decidere le priorità e / o problemi tecnici, ma ciò può essere facilmente fatto da un responsabile della squadra.

Forse hai bisogno di unire il tuo team di sviluppo con un altro, hai un team di test > sarebbe meglio usare lo stesso gestore per entrambi, mantenendo la squadra di sviluppo semi-autonoma?

Mi sembra che il gestore dei servizi possa tranquillamente fornirti il lavoro che devi svolgere e anche controllare che si adatti alla qualità necessaria, e non ha bisogno di alcuna esperienza di sviluppo per svolgere questo compito - il software è uno strumento di business , soddisfa i requisiti o no, e di solito le persone migliori per determinare che sono gli utenti. Il responsabile del servizio fungerà da collegamento tra te e loro, e spero che continui a funzionare correttamente. Mi preoccuperei solo che non avesse abbastanza controllo sulle responsabilità della tua squadra, come se le cose iniziassero ad andare storto, finirai in uno stato infelice finché la direzione non lo farà (o, peggio, qualcun altro) responsabile te.

    
risposta data 03.06.2012 - 13:43
fonte
1

I team autogestiti non sono fuori dall'ordinario. Di solito richiedono metriche di prestazioni chiare per creare responsabilità generate internamente. La tua organizzazione potrebbe avere questo, ma se non è possibile generare ulteriore personale basato su risparmi sui costi, forse questo non funzionerà. L'altra sfida è che il tuo nuovo capo non sembra qualcuno che sappia come ricompensare il talento.

Nel bene o nel male, sembra che tu abbia bisogno di un allenatore di giocatori. Qualcuno che sia in grado di gestire il team, sia di esibirsi in esso. In un gruppo di 4, questo è certamente fattibile. In un gruppo di 8 o 10, non lo sarebbe. La sfida è identificare chi dovrebbe essere questo allenatore giocatore. L'impostazione predefinita è quella di renderlo il tuo miglior programmatore, ma vuoi necessariamente legarlo con l'amministratore? Non c'è una risposta dura e veloce, se non dire che le organizzazioni ad alte prestazioni trovano il modo di non costringere tutti i loro migliori tecnici a diventare manager.

    
risposta data 04.06.2012 - 01:08
fonte
1

Il manager tende ad essere il collegamento mancante tra l'organizzazione e il team di sviluppo.

  • Si assicurano che il tuo lavoro sia pertinente e soddisfi i bisogni del organizzazione.
  • Rispondi alla gestione superiore
  • Gestisci la pianificazione in modo che il progetto sia in orario
  • Assicurati che i tuoi bisogni per il progetto siano risolti.

Squadre più piccole, con piccole responsabilità potrebbero funzionare senza un manager designato. Ma man mano che le responsabilità aumentano, avrai bisogno di qualcuno che gestisca tutti questi rischi e problemi.

E dato il tuo setup, qualcuno del tuo team finirà col fare il ruolo di manager anche se non sono designati come tali. Di solito le responsabilità distribuite non funzionano bene. Dipende molto da come è distribuito e dal tipo di persone coinvolte.

    
risposta data 11.06.2012 - 10:13
fonte
1

I vantaggi di avere un manager dipende dal ruolo che stanno giocando per la tua squadra. Quindi, si tratta davvero del ruolo necessario per il team:

  • Hai bisogno di qualcuno che abbia l'autorità per risolvere le controversie tra i membri del team e mantenere il team focalizzato sulla fornitura di lavoro di buona qualità in tempo?
  • O hai bisogno di qualcuno che fornisca una copertura aerea come menzionato in una risposta top? Gestisci i programmi, decidi le priorità, intervieni tra il management superiore e il team, ecc.

Quindi, hai bisogno di questo? Le persone nelle posizioni che hai notato possono fare questo per te? Se è così, allora stai bene. In caso contrario, probabilmente sei diretto verso il disastro.

Fonte: esperienza personale con progetti di gruppo e team gestiti e non gestiti.

    
risposta data 29.01.2014 - 01:11
fonte
0

Penso che i team di Flat siano sempre un problema a meno che tu non metta un tizio al comando per mandare un gruppo di ingegneri dello stesso livello o simili.

Come menzionato da S.Robins, SE tutti i membri del team sono ben disciplinati, quindi mettere un manager può essere un inutile collo di bottiglia qui. Alcune delle piccole aziende in cui ho lavorato hanno vincoli di potere uomo (a causa di vincoli di budget, tra le altre ragioni) e quindi tendono a mettere un gruppo di pochi fresher / junior in una squadra piatta con un ragazzo sopra di loro gestendoli .

Se il gestore "1 livello superiore" non è in grado di gestire le persone, questo si ritorcerà contro. I giovani / principianti che iniziano la loro carriera sono estremamente competitivi - cercare di stabilirsi saldamente il più presto possibile nella squadra e qualcuno ha bisogno di tenere a freno le persone a volte in modo che la loro competitività non danneggi la cooperazione.

Il problema di avere una squadra piatta è che con il ridimensionamento del progetto dovrai inevitabilmente lasciare che uno o due ragazzi facciano un po 'di più, prenditi un po' più di responsabilità. A questo punto dovrai creare una gerarchia ben definita e mettere definitivamente in piedi un Manager appropriato per ricevere chiamate e gestire le persone perché molto spesso quando ci sono promozioni all'interno dello stesso gruppo c'è sempre un gruppo infelice.

L'altra cattiva idea che vedo in molti piccoli Cos è quella di mettere il più anziano in termini di designazione o esperienza come manager. Oppure il ragazzo tecnicamente più abile del gruppo viene promosso al ruolo di manager. Non ho mai visto questo lavoro.

Ritengo che qualsiasi team composto da più di 4 persone avrà sicuramente bisogno di un manager nelle prime fasi del suo tempo se il progetto ha un buon ridimensionamento. Idealmente una persona tecnica con capacità manageriali, una buona comunicazione dovrebbe essere responsabile di determinate decisioni.

    
risposta data 23.04.2013 - 10:04
fonte
0

Lavoro per un'azienda in cui adottiamo pratiche agili, in particolare Scrum. Funziona alla grande su tutta la linea: i team di sviluppo e la direzione esecutiva sono tutti contenti. Ottengono quello che vogliono.

  1. Tutti gli ingegneri riferiscono a Engineering Manager. Engineering Manager è un ruolo estremamente tecnico e funzionale, con il ruolo che richiede di ottenere più business per la divisione. Questo ruolo è equivalente a Product Owner.
  2. Il project manager è un ruolo separato, simile a un mischia master, ed è solitamente un appaltatore per un tempo prestabilito (da 12 mesi a 18 mesi, senza estensioni per il contratto)
  3. Il project manager - scrum master - è completamente responsabile per le attività non funzionali e non ingegneristiche

Questo ha funzionato meravigliosamente, poiché il team di sviluppo si concentra sugli aspetti ingegneristici, gli analisti di business / i proprietari dei prodotti si concentrano sugli aspetti del business. Il project manager è responsabile per il tracciamento delle attività, il reporting e altri compiti tipici dello Scrum Master.

Il middle management è esternalizzato e non vi è alcun percorso di crescita dal middle management al top management. Le opportunità di crescita derivano dal team di sviluppo o dal ruolo di analista aziendale per il responsabile tecnico e non dai ruoli di supervisione.

La nostra azienda crede fermamente che il middle management non sia un valore aggiunto importante per un'azienda, ed è preferibile affidarlo a società di consulenza esterne.

    
risposta data 29.01.2014 - 00:54
fonte
0

Un punto che vale la pena notare è che, indipendentemente dal fatto che designino una persona come manager, è probabile che uno di voi diventerà il manager "di fatto", probabilmente la persona con più esperienza / tempo servito.

Soprattutto perché questo viene fatto come misura di riduzione dei costi (es. non pagare un manager, assumere uno sviluppatore invece) piuttosto che pensare attraverso una ristrutturazione, sembrerebbe probabile che il management più alto continui a lavorare come hanno fatto in precedenza, solo trattando con le persone che conoscono meglio (vale a dire il servizio più lungo).

    
risposta data 15.04.2016 - 14:38
fonte

Leggi altre domande sui tag