I think that there's a tradeoff between software engineers being able to work well on this specific problem, and knowing which problem is a good problem to work on. The first benefits from being isolated; the second from having the rest of the team nearby.