Dopo aver letto questo , ho visto che sembra esserci molto disaccordo su come i team agili dovrebbero essere strutturati all'interno di un gruppo di sviluppatori con capacità diverse (ovvero quasi tutte le squadre). Tutti i migliori sviluppatori dovrebbero essere messi nelle proprie squadre e ricevere il lavoro con la priorità più alta? Ciò assicurerà praticamente che le attività più importanti vengano eseguite. Allo stesso tempo, ti ritroverai con le squadre "meno che perfette" che accumulano crediti tecnici, anche se si tratta solo di compiti a bassa priorità. D'altra parte, i team distribuiti equamente potrebbero avere il vantaggio di rendere i vostri sviluppatori in ritardo un po 'migliori, ma hanno il potenziale per demotivare i vostri battitori più pesanti. Inoltre, se si mescolano un sacco di buoni schemi di progettazione con una serie di terribili anti-pattern, si può davvero finire con qualcosa che potrebbe anche essere un insieme di anti-pattern. Tutti i team hanno i loro potenti codificatori e i loro programmatori non così potenti, quindi come dovrebbe essere affrontato?