Nel mio primo lavoro come sviluppatore di software, il mio team ha utilizzato Agile / Scrum per gestire il flusso di lavoro del nostro progetto e ha funzionato abbastanza bene. Ho avuto dei mentori esperti che mi hanno messo sulla strada giusta - devo loro un grande debito di gratitudine. Ho lavorato lì per alcuni anni, poi sono passato a una nuova opportunità un paio di mesi fa.
Avanti veloce al mio attuale lavoro. Lavoro in un'università sotto la direzione di un professore. Dato che sono in un'università, quasi tutti i programmatori sono studenti (sono economici e abbondanti!) Il mio capo ha esperienza di gestione, ma non con lo sviluppo del software, e il team del software non è sempre in prima linea nella mente del mio capo . Queste condizioni hanno creato l'ambiente perfetto per la creazione di software di qualità molto scadente. I progetti software sembrano funzionare in modo un po 'disonesto, non hanno alcuna idea di progettare e hanno impiegato alcune pratiche davvero spaventose. So che le cose potrebbero andare meglio.
Voglio implementare un processo di sviluppo per aiutare tutti a seguire la strada, aumentare la qualità del codice e distribuire software più stabile. Non sono sicuro da dove cominciare.
Sto non cercando, per dire, per le risposte come "Usa Scrum", "istituito un consiglio Kanban", o "Date un'occhiata a agile!" (anche se le idee sono apprezzate). Più specificamente, spero di ottenere informazioni su come implementare un processo di sviluppo per questo ambiente di lavoro. I dipendenti di solito lavorano da 1 a 2 anni prima di passare, sono generalmente inesperti e le riunioni quotidiane di standup che includono tutti sono quasi impossibili da programmare.
In che modo si promuove la qualità, l'efficienza e la comunicazione in un simile ambiente di lavoro?
Aggiornamento: dopo aver letto alcune delle risposte e dei commenti, ho pensato di fornire qualche informazione aggiuntiva.
Io non mi considero un maestro nell'arte di sviluppo del software, ma io sono abbastanza esperienza per riconoscere cattiva programmazione quando lo vedo. Posso determinare se uno sviluppatore ha talento o no dopo aver trascorso solo un minuto o due a lavorare con loro. Sono a mio agio con le mie capacità di trovare un modo per risolvere in modo intelligente un problema , tuttavia, l'area in cui mi manca davvero l'esperienza è la gestione dei progetti in cui sono coinvolti altri sviluppatori (motivo per cui sono qui per chiedere a tutti voi meravigliose persone consigli).
L'ho fatto sembrare come se ogni studente che entra in questo ufficio sia un completo idiota. Ci sono state alcune uova cattive qui, ma la maggior parte degli studenti che ho incontrato sono intelligenti, vogliono imparare e appassionati del lavoro. Alcuni stanno appena iniziando, e non sanno cosa non sanno. E va bene. Quando ho iniziato a programmare, non stavo meglio!