Se un reparto software ottiene costantemente nuove persone, (1) è davvero facile lavorare o (2) è un duro lavoro, e la società sta sprecando un'enorme quantità di denaro, pagando i programmatori per mesi prima di aver imparato il sistema abbastanza bene da essere effettivamente competente con esso.
Se il lavoro del tuo amico è ovunque vicino (2), il capo del tuo amico è un idiota. Sui progetti difficili, un programmatore esperto e veterano vale più di dieci programmatori verdi. Con i programmatori verdi, non è proprio lo sviluppo del software ... è la R & D. Trascorreranno il 2% del loro tempo a scrivere codice e il 98% del tempo a cercare, a rielaborare il progetto, a cercare di capire perché il programma non funziona correttamente quando apportano alcune modifiche e test dei bug.
Direi al tuo amico di lasciare la compagnia. Il capo pensa di aver capito tutto, ma in realtà è solo un cretino che rende tutti infelici. Quando il capo uomo si rende conto che il suo reparto di sviluppo / manutenzione del software è in rovina, sarà troppo tardi ... l'intera compagnia crollerà come un mazzo di carte e sarà lasciato ad affrontare gli azionisti, suo capo, ecc. La compagnia avrà quello che potreste chiamare software "nave aliena" - il guscio fumante di ciò che un tempo era impressionante, ma nessuno sa come risolverlo perché nessuno sa come funzionasse.
Potresti anche suggerire che il tuo amico cerchi di convincere il suo capo ad accettare un esperimento mentale. "Hai appena perso il lavoro come capo, e ora sei uno sviluppatore, ecco la tua scrivania e ora inizi a programmare." Quando il suo capo si lamenta che non sa come, il tuo amico può dire "Oh, sei nuovo, eh? Non sai come funziona, vero? Beh, puoi leggere questi 10 libri - assicurati prendi appunti, a proposito - e quando hai finito, puoi leggere la progettazione del progetto, quindi il codice, quindi puoi guardare tutte le riunioni che gli sviluppatori hanno avuto quando hai creato il software, e poi puoi leggi le loro e-mail e poi il codice ancora una volta. Quando hai finito con tutto questo, ti permetteremo di armeggiare con la tua copia del programma - per vedere se puoi lavorare con il software senza rovinarlo. Quando avrai finito, sarai pronto per scrivere la tua prima riga di codice. Ci vediamo tra sei mesi. "