Sono stato inserito in un progetto circa tre mesi fa, fino ad allora in fase di sviluppo da parte di un singolo sviluppatore recentemente assunto perché era in ritardo. Per essere onesti, il progetto è un'interfaccia per un dispositivo medico che ha un sacco di sottigliezze ed è relativamente complesso, quindi collocare una persona nel progetto che non ha avuto esperienza in azienda è stata probabilmente una decisione sbagliata dal punto di vista manageriale. p>
Ad ogni modo, una volta iniziato a lavorarci, ho capito che ... beh, non funzionava affatto. L'interfaccia utente era carina, ma in realtà non faceva granché, e quello che faceva non funzionava correttamente. Ancora una volta, per essere onesti, gran parte di questo era dovuto al fatto che questo sviluppatore non era adeguatamente preparato per scrivere un'interfaccia sul nostro dispositivo. Tuttavia, ho anche subito capito che il codice che era in vigore era fragile ed estremamente difficile da mantenere.
Ora non pretendo di essere il miglior programmatore al mondo. Lavoro con un sacco di persone molto intelligenti che sono sviluppatori migliori di me. Tuttavia, mi sforzo molto a scrivere codice che sia il più semplice possibile e robusto. Metto alla prova i miei assegni. Se vedo che il mio codice sta diventando disordinato e difficile da lavorare, lo cambio. Ho avuto alcuni colloqui con il mio collega nel tentativo di aiutarlo a scrivere un codice migliore. Questo è un po 'complicato perché a) ha più di 20 anni di esperienza nel settore e ho solo 5, e b) è stato assunto come un cosiddetto "esperto di UX" e altri lo vedono come un individuo esperto.
Detto questo, proprio non lo vedo. E 'un ragazzo molto simpatico ed è ragionevole, ma ogni volta controlla il codice che è fragile, funziona solo nei casi più ottimistici e 9 volte su 10 finisco per sistemare i bug nel suo lavoro. Il suo codice sembra dilettantesco e ovviamente non ha il livello di esperienza che ha affermato di avere quando è stato assunto. È arrivato al punto in cui le ore extra che trascorro refactoring il suo codice e la correzione dei suoi bug hanno preso un pedaggio su di me. Per come la vedo ho due opzioni:
- Non fare niente, rompi le chiappe per assicurarmi che questo prodotto si spenga in tempo ed è robusto e aspetta che fallisca in futuro (non lavorerò con lui a questo progetto dopo il rilascio iniziale).
- Dì al mio capo della sua esibizione. Il mio capo è un uomo ragionevole, ma mi sento in imbarazzo a prendere questo approccio. Non mi piace 'bash' (per mancanza di un termine migliore) i miei colleghi e non so come prenderà.
Quindi, questo è tutto. Ho provato a lavorare su questo con il mio collega spiegando perché la sua implementazione non funziona o come il suo codice potrebbe essere reso più manutenibile, ma continua a commettere gli stessi errori. Sono molto interessato a sapere come altri hanno gestito situazioni simili, in particolare le persone in gestione al momento. Grazie in anticipo per qualsiasi consiglio che puoi offrirmi.