Skip to content

[SE-4874] Introduce Project Cells

Adolfo R. Brandes requested to merge arbrandes/project-cells into master

This is meant to introduce Project Cells as a new cell type.

Motivation

As OpenCraft grew, it became necessary to further distribute managerial roles and responsibilities among cell members. This was done to alleviate bottlenecks that were affecting the ability of cells to function: for instance, increasing the recruiment rate by assigning a part-time Recruitment Manager to each cell.

This was not without drawback, though. Coupled with an increase in demand and an ensuing capacity crisis, together with the fact that members are already expected to work across multiple epics, this led to several cases of clashing priorities and unhealthy competition for developer time. This, in particular, for large projects. There was an increase in stress and reduction in productivity, causing projects to stall.

The Project Cell is thus created as an experiment in insulating both projects and developers from such thrashing. To continue with the biological metaphor, it's like a cell that has specialized in a single function, losing some flexibility and longevity in the process, but becoming a lot more efficient at its job.

An Experiment in Specialization

The pros and cons of specialization have long been a topic of discussion at OpenCraft, many developers expressing a desire for more focus. But the way generalist cells are structured, this has been difficult to even experiment with.

At the individual level, it would be impractical for a developer to work exclusively for months on frontend tasks in an epic, and then to be expected to handle infrastructure fires on a totally different client.

At the cell level it would be even tougher: not only are projects that require the full attention of a 10-person cell few and far between, even if a generalist cell were to take one on, what would happen at the end of the project? Even just a budget reduction would be traumatic. There is no foreseen mechanism for a generalist cell to dissolve, or for members to easily move to other cells.

Enter Project Cells.

Note to reviewers

This PR has already gone through quite a few significant iterations with Xavier, but we don't expect you to read through all the previous comments. Nevertheless, apologies in advance if by any chance the response to your suggestion is a curt "this has been discussed before and your suggestion would go against a prior decision". 😅

Edited by Adolfo R. Brandes

Merge request reports