For as long as we can't read each other's minds there will be "knowledge silo" problems. And yes, all code and all documentation is shared. For sharing designs, we use google docs. For documenting code already written, we use markdown and jupyter notebooks where things are hairy or test data has to be synthetic.
Note that I said "loose partitioning". Team members are expected to be able to make forward progress on their own in areas they don't work on as the main thing they do, but review code for. Maybe not at the same speed, but at least they can fix minor issues and bugs. Anyone can change anything in the code base as long as the original author of the design approves the PR. The understandable desire for territoriality is ignored as a matter of policy.
And none of what we do could be described as "simple". It generally ranges between "insane" and "frustrating", sometimes both.
Note that I said "loose partitioning". Team members are expected to be able to make forward progress on their own in areas they don't work on as the main thing they do, but review code for. Maybe not at the same speed, but at least they can fix minor issues and bugs. Anyone can change anything in the code base as long as the original author of the design approves the PR. The understandable desire for territoriality is ignored as a matter of policy.
And none of what we do could be described as "simple". It generally ranges between "insane" and "frustrating", sometimes both.