Code is collectively owned. Any developer can change any module at any time.
Benefits
- Improved Team Unity: Eliminates factions and hierarchy.
- Reduces Duplication: Shared logic between different modules in the project through shared access.
- Balancing Specialization & Generalization: While specialization increases productivity in a specific area, generalization fosters growth in technical knowledge and team support. Aim for a balance between the two. For example, a backend specialist may be responsible for a story that requires changes in both the frontend and backend. Ideally, the general knowledge is broad enough to solve the task on his/her own, but if not, pairing up with a frontend specialist can be done to solve the problem and expand frontend knowledge.