The physical space we work in impacts on the way we feel, interact and how productive we are. Jan Banning has captured these wonderful photographs of Government Officials in their office around the world. Take a look at them and then stop for a minute. Imagine your ideal office … what would it look like ?
Perhaps your office reflects your culture ?
Or maybe your product ?
Our office at RedBubble
Or your design aesthetic ?
How about my ideal work space …
From an Agile perspective office spaces have an impact on a number of key factors.
- How it makes you feel.
- How it encourages positive social interactions.
- How it enable communication.
- How it manages distractions.
- How it enables productive development.
Lots of communication and a high level of development productivity are often in tension and balance needs to be struck.
I’ve worked in nearly every conceivable office environment over my working career. I’ve had a number of private offices, massive open plan call centre style environments and I’ve also worked in the stereo typical startup garage. There is a strong trend, particularly at larger companies towards open plan offices. I believe this is a mistake.
Private offices are great when you need focused time to get hard thinking tasks done, or you need to make phone calls or have lots of adhoc meetings – in many companies they are also a status symbol reserved for senior management. Small collegiate workspaces, typical at startups or creative agencies etc are perfect for idea sharing, collaboration and create a fun and friendly workspace. But they can also end up being being loud and distracting when it’s time to put your head down and write some code. I’m not sure large open plan environments are ever a good answer and here’s why – It’s about nodes and contracts.
A team of 3 people, has to maintain 3 lines of communication, or three social contracts. As the team grows to 5 people, the number of person to person, or node to node interactions jumps up to 10. That means more time spent keeping everyone in the loop and up to date. As the team grows to 10 the number of contracts is more than 40. Quite clearly this style of person to person communication isn’t very scaleable. Imagine an open plan workspace with say 100 staff, the social contracts break down. You loose the benefits of lots of connected personal communication between everyone, but you suffer all the negative impacts of noise, interruptions and distraction generated by that many people. It also becomes necessary to resort to all hands meetings and so-on as it’s not practical to run a standup with that many people.
So what does the ideal environment look like ?
I think the answer is the smallest possible number of people in separated but accessible spaces that still allow everyone working on the same ‘thing’ to work collaboratively together. What does this look like in practice ?
Here’s one very successful setup for us at Lonely Planet.
This is how our Lonely Planet Operating System team of 20 people works. It’s broken into 3 major groups of people, each working on their part of the project, or their ‘thing’. We have one big long bench where 8 developers work mostly in pairs, and near by them are some of their primary customers, the SMEs. We moved all the product, planning and generally loud talky people away a little bit. These guys are not far away, but it’s a big improvement from when they were dotted among the development team. There are a number of small meeting rooms and a dedicated quite working space with a few development machines and whiteboards etc. Finally there is a dedicated planning / war room which has whiteboard paint on all the walls, it has a constantly changing view of ‘the plan’, ideas for future development and the day to day agile board on it’s outer wall. There is of course regular communication between all three groups, but the primary and constant communication is restricted to on topic conversations within each group.
So small groups of people working closely together, quite spaces and shared spaces. You might need to think carefully about how to break down some of your big ‘things’ to ensure the number of nodes and contracts is sensible; and that, leads nicely into my next theme: Communication.