Ci può essere una soluzione alla domanda del titolo? Da un fatto reale, il racconto di come è andato il progetto di sviluppo di un sistema multichannel, ho capito che ci si può arrivare.
Uno sviluppatore e un project manager. Due ruoli che, a noi di Instant Developer, spesso capita di incontrare nello stesso ufficio (o nello stesso Zoom).
Ed è proprio da un incontro di qualche giorno fa con Marco e Federico, rispettivamente sviluppatore e project manager di una software house interessata alle nostre piattaforme di sviluppo, che ho capito qualcosa in più di questo tipo di rapporto.
Le scadenze
Non è frequente assistere ad una discussione così aperta. Dopo dieci anni di lavoro assieme, anche se i ruoli sono diversi e spesso in conflitto, Marco e Federico hanno dimostrato di essere veri professionisti.
Mentre parlavamo di aumento della produttività e accorciamento dei tempi di sviluppo, Marco, senza peli sulla lingua, attacca la categoria di Federico. Dice che, riguardo allo sviluppo di software, sembra che per la maggior parte dei project manager la parte più importante del proprio lavoro sia fissare la scadenza più breve possibile.
Invece secondo Marco ci dovrebbe essere prima un passaggio fondamentale. Cioè il project manager dovrebbe fare queste due semplici domande agli sviluppatori.
Quanto tempo serve effettivamente?
Oppure, se la data di scadenza non è prorogabile,
Che cosa riusciamo a sviluppare entro il giorno X?
“Beh, non è così semplice”, interviene Federico. I contratti non li firmo io e, se è necessario sempre accontentare i clienti, una soluzione dobbiamo trovarla.
La stima dei tempi
A questo punto è arrivata la parte forse più divertente. La discussione tra Marco e Federico si è accesa su un argomento che spesso è oggetto di una trattativa senza fine: la famigerata stima delle tempistiche.
E Federico ha preso come esempio un lavoro di un paio di anni fa, quello dello sviluppo di un sistema multichannel (app e relativo backoffice) per la prenotazione di servizi (ombrelloni, cabine, ristoro, ecc…) in uno stabilimento balneare. La stima più ottimistica per la consegna era il 10 agosto!
Quale poteva essere la soluzione? Non è stato semplice ma, sì, alla fine l’hanno trovata. E di comune accordo.
La partecipazione
Il primo passo, il più ovvio, è stato aggiungere uno sviluppatore al team. Federico ha dovuto lavorare molto per trovare non solo quello più adatto (la parte forse più semplice), ma anche quello che permetteva di mantenere i margini a livelli accettabili.
E a questo punto arriva la parte decisiva della soluzione individuata da Marco e Federico per il successo del progetto.
Hanno deciso di comune accordo di fare entrare il nuovo programmatore nel team di sviluppo del sistema multichannel per lo stabilimento balneare non solo come semplice esecutore della parte “mancante”. Hanno coinvolto infatti anche lui fin da subito nella definizione della stima arrivando al risultato che il cliente si aspettava.
Il coinvolgimento di tutti quelli che lavoravano allo sviluppo del sistema multichannel nella fase della stima delle tempistiche è, secondo Marco e Federico, una delle chiavi più importanti del successo dei progetti software perché produce questi risultati:
Tutti gli appartenenti al team si sentono più responsabili.
Il livello di motivazione e di soddisfazione di tutti aumenta.
Si ottengono effetti a lungo termine nei rapporti professionali.
Quindi è possibile mettere d’accordo sviluppatori e project manager!