Recentemente nella mia azienda è stato suggerito che uno sviluppatore dovrebbe concentrarsi (e solo uno) in una funzione. Ciò significherebbe qualcosa come impostare lo sviluppatore al di fuori della normale routine di squadra, rilasciandolo di alcune altre responsabilità (riunioni e simili) e questa persona sarebbe l'unica responsabile della funzionalità, la tecnologia.
Per la cronaca, utilizziamo SCRUM in SAFe e abbiamo sviluppatori a tempo pieno per team, condividendo QA e proprietari di prodotti tra i nostri due team (Android e iOS).
Anche se sono d'accordo sul fatto che ciò aumenterebbe la produttività a breve termine, ho la sensazione (e penso di averlo appreso nell'università) che questa è una cattiva pratica per molte ragioni:
- La revisione del codice perde valore.
- Condivisione della conoscenza minima.
- Incremento del rischio.
- Perdita della flessibilità del team.
Ho ragione o non è affatto una cattiva pratica?