In an ideal world, each member of a team would have a perfect understanding of the work each other team member was doing. We only have the time and capacity to learn so much, though, so a tradeoff has to be made. Either everybody has a very limited understanding of everybody else’s work, or, for each piece of work, there are one or two specific people (different people for each piece work) who follow the work closely and develop a good understanding of it.

I think the latter is better. It’s much more effective at reducing knowledge silos, because it makes people much more prepared to take over the work should it be required.