Lavoro in una piccola squadra, in un'azienda di medie dimensioni, la maggior parte delle quali non è coinvolta nello sviluppo di software. Sono lo sviluppatore più nuovo e meno esperto e non ho avuto alcuna esperienza professionale o accademica nel software prima di iniziare, ma sono abbastanza soddisfatto di quanto sia rispettato il mio contributo e sono grato di essere stato preso sul serio in una fase così precoce della mia carriera.
Tuttavia, sento che dovrei fare di più con questa generosa quantità di tempo di trasmissione. Come squadra, sembra che abbiamo difficoltà a fare le cose. Mi piacerebbe essere in grado di suggerire qualcosa per migliorare la situazione, e penso che sarei ascoltato se fosse una buona idea, ma non saprei cosa suggerire.
Le cose che posso identificare come problemi includono:
- La specificazione dei compiti a portata di mano è scarsa. Ciò è in parte dovuto al fatto che la gestione è un collo di bottiglia e non abbiamo i soldi o le persone per impegnarci a elaborare requisiti dettagliati quanto vorremmo. In parte anche perché il software che stiamo sviluppando è investigativo e il metodo preciso non è chiaro finché non viene dimostrato e utilizzato per determinarne l'efficacia.
- Il Lead Dev è molto affezionato a ciò che definisce "prototipazione" al punto che recentemente ha iniziato a insistere sul fatto che tutto sia "prototipato", che al resto di noi sembra scrivere codice cattivo e darlo ai modellisti per giocare con. Non è chiaro cosa si aspetti di uscire da questo esercizio in molti casi. L'implementazione "effettiva" soffre poi a causa della sua insistenza sul fatto che le buone pratiche impiegano troppo tempo dalla prototipazione. Non ho nemmeno iniziato a essere in grado di districare questa logica distorta e non sono sicuro di voler provare.
- Ci si aspetta che i modellisti ci raccontino tutto sulla metodologia desiderata con dettagli precisi, e ci si è fidati completamente che ciò che hanno scoperto è teoricamente impeccabile. Questo non è quasi mai vero, ma non viene intrapresa alcuna azione per correggere questa situazione. Nessuno dal lato della modellistica solleva preoccupazioni in modo strutturato su cui è probabile che si agisca, né cerca indicazioni nell'applicare le migliori pratiche. Nulla è fatto anche per la loro passività.
- Ho cercato di spingere TDD nella squadra prima, ma ho trovato difficile perché è nuovo per me e mentre quelli con la supervisione del mio lavoro erano disposti a tollerarlo, nessun entusiasmo è arrivato da nessun altro. Non riesco a giustificare la quantità di tempo che dedico a spendere e non a rifinire le funzioni, quindi l'idea - per il momento - è stata abbandonata. Sono preoccupato che non verrà ripreso, perché a nessuno piace essere detto come fare il loro lavoro.
- Ora disponiamo di un server di integrazione continuo, ma è in gran parte utilizzato solo per eseguire test di regressione di più ore. È stato lasciato aperto il fatto che dovrebbe essere in esecuzione anche test di integrazione e di piena copertura, ma al momento nessuno li scrive.
- Ogni volta che sollevo il problema della qualità con lo sviluppo principale, ottengo una risposta all'effetto di "La funzionalità di test A è semplice, la funzionalità B è molto più importante per l'utente ma troppo difficile da testare, quindi non dovremmo t funzione di prova A '. Ancora una volta non ho fatto progressi nel tentativo di districare questa logica.
.... uff. Quando lo esprimo in questo modo, sembra molto peggio di quanto pensassi. Suppongo che, a quanto pare, questa è una richiesta di aiuto.