Qual è il ruolo dello sviluppatore web senior nella squadra? [chiuso]


20

Con un team di altri 3 sviluppatori web ho il titolo di sviluppatore web leader da un anno ormai. Questo è il mio primo lavoro da protagonista.

Sono piuttosto impostato su quali sono i miei ruoli da parte della direzione. Sono curioso di sapere cosa fanno gli altri sviluppatori di livello senior. Sono principalmente curioso di sapere quali sono le responsabilità delle altre persone come sviluppatore principale / senior in altre organizzazioni; come ho incontrato lavorando solo in una piccola / media azienda.

(a) Cosa ci si aspetterebbe da uno sviluppatore web senior / principale di un'organizzazione (indipendentemente dalle dimensioni)?

(b) C'è una differenza tra il leader dello sviluppo web e lo sviluppatore web senior?

Ho esaminato alcuni thread e ne è stato discusso solo uno quando dovresti definirti uno sviluppatore senior, ma non discute in modo completo i ruoli di ciò che uno sviluppatore senior dovrebbe fare con il suo team.

Risposte:


22

Il punto di vista del project manager

Sei il punto di contatto unico (o predefinito) per tutto ciò che riguarda il lato tecnico delle cose. Ci si aspetta che il lavoro degli altri sviluppatori si muova per pura forza, dando l'esempio o qualunque sia il metodo.

Punto di vista dello sviluppatore non principale

Sei il modello di riferimento. Aspettati che gli sviluppatori meno esperti ti guardino e ti facciano domande tecniche quando sono bloccati.

Pensare

Se stai davvero chiedendo a Internet di definire il tuo ruolo / lavoro, fermati. Parla con il management per una vera risposta.


5
+1 - "Pensa" ... o per dirla in altro modo, l'unica definizione del ruolo di "sviluppatore web senior" che è rilevante per te è la definizione del tuo manager.
Stephen C,

9

Hai due ruoli principali come sviluppatore principale: essere un sostenitore del tuo team con il lato commerciale della tua attività e fornire una guida tecnica al tuo team.

Come avvocato, dovresti aiutare a comunicare i requisiti al tuo team, respingendo quando il lato aziendale (che si tratti di gestione, project manager o addetti alle vendite) fa richieste o richieste non realistiche e, in generale, si occupa di tutto ciò che impedisce al tuo team di scrivere codice.

Come mentore tecnico, devi aiutare il tuo team a prendere buone decisioni, assisterlo in caso di eventuali problemi tecnici e indirizzarlo verso soluzioni adeguate. Dovresti incoraggiarli a migliorare le loro capacità e ad essere un pioniere assoluto nel seguire gli standard di sviluppo adeguati.

Ancora più importante, devi essere un modello di ruolo impeccabile. Il tuo codice dovrebbe essere di altissimo livello, i tuoi progetti dovrebbero essere consegnati in tempo ed essere della massima qualità. Quello che fai sarà molto più importante di quello che dici.

EDIT: Un'altra cosa. Devi essere proattivo con problemi tecnici. Non aspettare che la tua squadra venga da te con problemi. Sii consapevole di ciò su cui stanno lavorando e vai da loro se impiegano troppo tempo, se sai che stanno affrontando qualcosa di complicato o al di fuori del loro set di abilità di base, o se sembrano frustrati. Ascolta quando le persone del tuo team iniziano a discutere di problemi tecnici senza di te, e interveni se (e solo se) ritieni che stiano iniziando a deviare da una soluzione decente, o se si muovono in cerchio e non realizzano nulla.


5

Bene, spieghiamo ... la leadership .

Tutti gli errori della tua squadra sono ora tuoi di cui dare la colpa.

Lo stesso vale per i successi, ma in realtà si tratta di sviluppo di software, il successo è modesto, difficilmente avrai problemi a gestire un eccesso di successo.

Concentrati su quegli errori. Evitali, minimizzali, cerca di tenerli sotto controllo.

E non diventare prepotente, la tua squadra fa più errori se lo fai .


4

IMO il ruolo è di orientamento. Sei stato in giro per il blocco, quindi se un altro sviluppatore (non junior ma non senior) ha una domanda o si imbatte in un problema nel modulo Foobar, sei il ragazzo giusto per chiedere "Sto cercando di fare X con Foobar, qualche idea? ". Dovresti anche comunicare gli obiettivi e gli sforzi del team alla direzione , schierandoti con il team su questioni tecniche (ad esempio, se tu e il team pensate che un progetto richiederà 4 mesi per essere eseguito, non cedere e dire al CEO che sarà fatto in 1 mese, quindi costringere tutti a fare gli straordinari). Dovresti anche essere responsabile di assicurarti che il codice sia di qualità adeguata e che gli altri membri del team stiano facendo le cose nel modo giusto e non solo tagliando la spazzatura che sta per crollare lungo la strada.

Ovviamente è tutto teorico. Dipende dalla squadra; Ho lavorato con "anziani" che non sapevano nulla di alcuno sviluppo moderno negli ultimi 5 anni ed erano "Smithers" per il senior management e dicevano "Signore, sì signore!" a qualsiasi esigenza, non importa quanto ridicola, soffocata la creatività degli altri membri del team, e ha incoraggiato un ambiente di lavoro molto scarno invece di uno di costante apprendimento e artigianalità. Ho anche lavorato con sviluppatori senior molto competenti che hanno assunto un ruolo attivo assicurandomi che le cose fossero le migliori possibili e che non fossero mai state sottoposte alla pressione della direzione.


4

Sono uno sviluppatore senior e ho diversi contatti tecnici con cui lavoro. La differenza è che sono i project manager tecnici. Se c'è un conflitto tra gli sviluppatori per un problema tecnico, decidono cosa fare. Se le cose sono in ritardo, decidono come affrontarlo. Hanno la responsabilità di assicurarsi che le persone addebitino il loro tempo per progettare, che vengano richieste più ore se necessario, che vengano assegnate nuove attività, che vengano eseguite revisioni del codice (in quanto senior posso fare le revisioni del codice), ecc. Come senior, In genere mi vengono assegnati i compiti più difficili. Come senior sono consultato e mi aspetto che faccia da mentore alle persone junior. Anche i responsabili tecnici fanno tutto questo, ma hanno il potere decisionale e la responsabilità per il successo complessivo del progetto. Come senior, sono responsabile solo della mia parte del progetto.


2

Potrebbero esserci diversi punti di vista, come menziona Jonathan sopra.

Come sviluppatore senior, puoi impostare le decisioni sull'architettura per il tuo gruppo e agire come rappresentante del tuo team per riunioni di gruppo di sviluppo di livello superiore. Puoi anche servire come mentore e dirigere le attività tecniche dei membri del tuo team.

Spesso, potresti anche essere un collegamento con la gestione del progetto e gli utenti aziendali. Aiuterai a decidere come e quando consegnare i risultati del progetto e potresti avere l'opportunità di negoziare le priorità degli elementi del progetto a lungo termine.

In breve, il tuo ruolo è quello che scegli di farne, dati i limiti stabiliti dalla tua direzione (sia tecnica che commerciale).


2

Altre persone hanno trattato l'aspetto di base della leadership di questa domanda, quindi cercherò di focalizzare i miei punti sulle domande dirette poste:

(a) Cosa ci si aspetterebbe da uno sviluppatore web senior / principale di un'organizzazione (indipendentemente dalle dimensioni)?

Mi aspetterei un individuo con un carattere forte e una base di conoscenze tecniche. Mi aspetterei qualcuno che non solo demolirà le idee, ma proporrà nuove idee per sostituire quelle che ritengono carenti. Mi aspetterei qualcuno che non spinga o maltratta gli sviluppatori subordinati ma cerca di trovare modi per motivare, insegnare, guidare ogni individuo. Mi aspetterei qualcuno disposto ad assumersi la responsabilità e la proprietà di progetti, concetti e decisioni. Non è necessario applicare "Sì-uomini" e "fiori da parete". Un senior / lead deve essere in grado di gestire le persone con la stessa efficacia del codice ... eventualmente anche meglio in alcuni casi.

(b) C'è una differenza tra il leader dello sviluppo web e lo sviluppatore web senior?

La differenza principale che ho osservato è di portata e non l'ho mai visto scritto da nessuna parte. Un lead è in genere responsabile della produttività di un singolo team. Un anziano può essere responsabile di più squadre, una sola squadra o nessuna squadra. Un lead dovrebbe aiutare i suoi sviluppatori subordinati a raggiungere i loro obiettivi nell'ambito di uno specifico progetto o incarico. Per subordinato intendo semplicemente sviluppatori che sono stati assegnati a un progetto per il quale il responsabile è tecnicamente "responsabile". Trovo spesso di essere il capo di progetti in cui molti degli sviluppatori sono uguali o hanno più anzianità di me, quindi non è scontato che il piombo sarà il membro più "senior" del team. Dato tale ambito di applicazione, uno sviluppatore senior è qualcuno su cui l'intera organizzazione può contare per avere le conoscenze e l'esperienza necessarie per aiutare chiunque. Un senior dovrebbe essere un modello (come ha detto qualcun altro) per qualsiasi sviluppatore dell'organizzazione e dovrebbe anche aiutare gli sviluppatori junior con problemi tecnici.

In breve, per me: un vantaggio aiuta. Un anziano insegna.


2

Gli sviluppatori Web senior possono essere visti come la persona che può affrontare un problema, trovare varie soluzioni e implementare il meglio per conto proprio. L'esercito di una persona in un certo senso. Mentore sviluppatori junior per aiutare a migliorare le prestazioni complessive del team. Potrebbe anche essere portato a sfruttare l'esperienza in vari pacchetti software, poiché in alcuni casi ci si può aspettare che il senior sappia davvero qualcosa di meglio di altri sviluppatori. Generalmente le competenze che lo sviluppatore ha utilizzato per il massimo beneficio che può essere una combinazione di tutoraggio, consulenza, codifica, progettazione e creazione di processi.

I principali sviluppatori web possono venire in un paio di forme diverse nella mia mente. Il capo di un team è il capo amministrativo ed è chi farebbe una revisione generale delle prestazioni, essere consapevole di quali progetti è assegnato uno sviluppatore e gestire alcune pratiche burocratiche e allo stesso tempo essere uno sviluppatore una volta fatto. C'è anche la guida per un progetto che è dove l'attenzione della persona è molto più ristretta in quanto è proprio per questo progetto che questa persona ha la responsabilità di far rispettare gli standard e le pratiche all'interno del team. Quindi c'è la domanda: qual è il vantaggio principale? Un progetto o un gruppo di sviluppatori dal punto di vista amministrativo?

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.