Un numero sorprendente di problemi di qualità, scalabilità e carico si sono verificati su un'applicazione che attualmente supporto e che inizialmente non avevo scritto. Per fortuna ho nuovi progetti che ho fatto da zero per mantenere una parvenza della mia sanità mentale.
Il team originale era composto da 20 sviluppatori (la maggior parte con insiemi di competenze obsoleti), senza documenti relativi ai requisiti aziendali o ai tester di controllo della qualità, e gestiti male fin dall'inizio in maniera a cascata. I primi giorni della produzione furono un incubo imbarazzante che prevedeva la correzione di un fragile codice procedurale con correzioni ancora più fragili. Successivamente sono state aggiunte funzionalità che sono state integrate in un modello di dati che non è mai stato pensato per supportarle e non è raro vedere lo stesso codice duplicato 10 volte e vedere risorse non essere chiuse in modo sicuro e query ORM che raccolgono decine di migliaia di entità solo buttare via tutto tranne una manciata.
Sono solo io ora e ogni volta che si presenta un nuovo problema, riscrivo un modulo secondo standard migliori e lo rendo MOLTO più stabile, ma la direzione ha bisogno di una spiegazione adeguata sul perché tutto ciò si sta verificando.
Sembrano scioccati e perplessi all'idea che questa applicazione sia di scarsa qualità e che affoghi nel debito tecnico. Fortunatamente comprendono il concetto di debito tecnico e mi supportano nella mia ricerca per sradicarlo e mi supportano e mi apprezzano molto, ma mi sento come se continuassi a incolpare il team originale (che è partito per rovinare un altro progetto in un altro divisione).
La linea di fondo è che non voglio essere "Quel ragazzo" che si lamenta sempre degli sviluppatori del progetto prima di lui. In precedenza ho visto questo atteggiamento da parte di persone della mia carriera che personalmente sentivo ignoranti e non consideravano le circostanze e le influenze progettuali che incoraggiavano le cose a essere come erano.
Di solito vedo questo atteggiamento di incolpare il team precedente per la cattiva progettazione e implementazione da parte di sviluppatori junior idealisti che non hanno avuto le esperienze di vita che più membri senior hanno avuto e di cui hanno beneficiato.
Ritieni che esista un modo migliore, forse più semplice, di segnalare questo tipo di problemi alla direzione senza fare un passo sulla reputazione della persona / squadra davanti a te?
bad-code
perché il codice sta effettivamente causando bug e problemi. L'ho etichettato bad-programmer
perché temo di diventare uno accusando la squadra precedente, una scusa stanca e cliché che tutti abbiamo sentito prima. Per quanto riguarda i primi tre paragrafi, forse non avevo bisogno di essere così descrittivo, ma volevo dipingere un quadro accurato della mia situazione immediata e dare la storia di ciò che ho raccolto finora.