Collective Ownership

Version 1.13 by chrisby on 2023/12/28 12:20

Code is collectively owned. Any developer of the team can change any module at any time.

Benefits

  • Improved Team Unity: Collective ownership eliminates factions and hierarchy through equal access rights to the code.
  • Reduces Duplication: Shared logic between different modules in the project through shared access.
  • No Bureaucratic Hurdles: Not having to ask and wait for permission to apply constructive code changes saves time.

Specialization vs 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. Example:

  • A backend specialist may be responsible for a story that requires both frontend and backend changes. Ideally, the backend specialist will have enough general knowledge to solve the task on his own, but if not, he should be paired with a frontend specialist to solve the problem and expand his frontend knowledge. If the task is still too complex or difficult, the next options might be to reassign the task to another developer or get help from the team, and this decision should be made transparently and collaboratively by the team.