I've worked in a private office for years as a software developer, but recently we tried working in a shared team room. The goal was to measure if it would increase communication, collaboration, and productivity.
I found the shared space to be extremely distracting and decreased overall productivity.
While at times it was easier to collaborate, it was very difficult to find time to focus on a hard problem and experience flow.
One of the developers on the team has a habit of snapping at people and that raised the anxiety of the entire room. However, this really brought to attention that this developer's attitude needs to be addressed as it is always affecting the team, it is just much more clear now.
What are your thoughts?
I personally prefer a private office and having the ability to close my door when I need to really focus on something. I always prefer to pair program using a tool like Live Share from my own PC, so that we can both navigate the codebase at the same time.