Gestisco una piccola azienda composta da soli 2 sviluppatori. Stiamo costruendo un'applicazione molto grande per uno dei nostri clienti. Lo sviluppo di questo progetto è proseguito per 1,5 anni.
Ora questo cliente si è assicurato un'importante sponsorizzazione e sta organizzando eventi relativi a questo progetto. Quindi ora abbiamo una scadenza tra 2 mesi e non possiamo mancarla.
Stiamo pensando di aggiungere un nuovo sviluppatore al team e mi sto chiedendo cosa possiamo fare per aiutare la sua integrazione.
Questa è la situazione:
- Ci stiamo avvicinando alla soglia di legge di Brooks - il punto in cui aggiungere nuovi sviluppatori sarà controproducente .
- L'applicazione è relativamente ben progettata, ma l'implementazione è caotica in alcuni punti (specialmente il codice più vecchio).
- Ci sono test unitari solo per codice più recente. Quando è iniziato questo progetto, non abbiamo condotto regolarmente test.
- La documentazione e i commenti sono incompleti.
- L'applicazione è sia grande che complessa.
- Il cliente ha annotato quasi ogni dettaglio del suo progetto, in modo molto chiaro e "programmatore".
È una buona idea aggiungere una persona adesso? In tal caso, cosa possiamo fare per aiutare il nuovo sviluppatore a integrarsi nel team?
EDIT:
Lo sponsor sta organizzando un evento sportivo basato su Internet per la prossima primavera. Deve iniziare in un giorno specifico dell'anno. Non possiamo cambiarlo.
Ciò di cui noi sviluppatori (io sono uno dei due) è necessario:
-
Completamento dell'applicazione esistente (circa il 25% del lavoro da fare).
-
Creazione di un nuovo modulo, essenziale per l'organizzazione di questo evento (circa il 75% del lavoro da svolgere). Questo nuovo modulo non può essere sviluppato senza comprendere l'API del programma principale.
Non posso fare una stima esatta del tempo, ma siamo in una situazione rischiosa.