Is there anyone here who likes open offices more than a floorplan divised into smaller rooms? I ask because I've worked in an open office setting as a developer for years (the place is otherwise nice) and thoroughly despise it as a workspace. Yet some people don't seem to mind it. I don't mind serendipity. The problem is I serendiptously overhear everyones discussion which is incredibly disruptive for deep work.
Factories have huge machines, whih create added value. They have a good reason for loud noises and need for ear protection.
Offices, on the other hand, are places where people come to create added value by mostly by thinking (if they are programmers).
Are there people who enjoy the bustle of open office while trying to untangle a decade old piece of C++ spaghetti? Whose work output it actually improves?
I'm trying to figure out if the open offices are bad mostly for everyone or just for someone like me.
I prefer open offices. You get a pretty significant echo chamber effect on articles like this because people who don't like it turn out to comment.
Personally, I have no difficulty with noise (I prefer working in coffee shops to at home), and being able to easily start a design discussion with 4 or 5 engineers when necessary is extremely valuable. I totally get why some people don't like it though.
"Being able to easily start a design discussion with 4 or 5 engineers" means "easily break 4 or 5 engineers out of their flow" along with "easily create a distraction for the other 15 engineers within earshot of the easily-started discussion".
I'm fine with coffee shops over home (and did the same in college), but coffeeshop noise is "white noise" -- whirring espresso grinders, a blur of conversations between people I don't know about things that aren't going to activate my distraction monkey.
Maybe it depends on the domain. "Flow state" makes sense for something like a startup where single coders are writing huge diffs on their own. I work on a huge codebase where "figuring out what code to write" occupies dramatically more of our time than "writing code".
What is your definition of "huge diffs"? For me, the process of reading some library documentation, reading existing code, and producing, say, 50-100 lines of quality code to require enough concentration that it's hard to focus in an open environment without losing my train of thought.
I think that is a difference. I have never worked in that kind of environment.
When I was at a large defense contractor the work was broken down into such small chunks that each engineer was essentially off on their own working on their piece of the system. In fact, that was the way all engineering, not just software engineering, was done there. There might be a point where two or three people would need to discuss an approach, but that wasn't the majority of the time.
The company I just finished at works multiple small contracts simultaneously. Because of the small scope it was very common to be the only person working on the code for a particular project, though there was more collaboration than at my previous company.
The place I am going seems to be more like what you describe, so it will be interesting to see if my opinions of open office layouts change after that.
You do realize that people like you are why we don't like open floor plans right?
That "easy conversation" is not scheduled, and now I need to stop what I am doing, listen to you for an hour, and still finish the rest of my tasking on time.
That depends on the person. I like when other people come to my desk and ask me for help on a whim, even when I'm in the middle of something. It doesn't destroy my productivity, and often it even gives me ideas how to make my work more useful. I do respect when other people don't want to be interrupted, though.
"and being able to easily start a design discussion with 4 or 5 engineers when necessary is extremely valuable"
I honestly do not understand this statement. Are you trying to say that if you were in cubes, you couldn't do that? You couldn't ask people to come over and talk something out? And are you stating that your design discussion is more important than whatever they're working on?
I'm a developer who recently moved from a large open space to a small quiet room with just a handful of people. To me it feels like a big downgrade. I loved the constant chatter in the open space, and I was much more aware of what the whole team is concerned with. I felt that it was very important for setting my work priorities right. Meetings and emails are much more restrictive than just sitting next to everyone whose work interacts with mine. And it didn't impede my coding at all, I could always put on some noise (SimplyRain) and tune out.
I'm a developer who recently moved from a large open space to a small quiet room with just a handful of people. To me it feels like a big downgrade. I loved the constant chatter in the open space
I'm going to guess that there's some individual variation in preference for quiet / noise. I'm the kind of person who can't really get deep work done, like writing proposals or novels, in noisy, busy environments. I look at all the people, listen to the sounds, and generally can't get into a state of flow.
That being said, I've met lots of writers who say they can't work in quiet rooms because they need some stimulation or they go nuts. Lev Grossman, for example, has talked about writing most of the Magicians trilogy (the first one is good! https://jakeseliger.com/2009/08/28/the-magicians-lev-grossma...) in coffee shops.
I suspect that on average most people would be better served by quiet focus, but that a fair number would not be.
If this is true—anyone doing industrial organization research may have a research topic here—I don't know how it would be implement organizationally, especially because offices and layouts are almost instantly going to be linked up with status and hierarchy issues, and most people will want the higher status option, regardless of whether it fits them well or not.
Coffee shops are very different; the noise is not that of colleagues but of random strangers. The effect can be almost like white noise. Colleagues talk about things that you can't help but get involved with.
I despise it as a workspace as well. Some people don't mind as much, but I haven't met anyone that's openly enthusiastic about it.
I got a pair of Etymotic In-Ear Headphones[0] which have kept me sane for several years now. They have interchangeable tips with a NRR on-par with foam plugs. Worth every penny in an open office.
I prefer open. I've never seen cube farms or offices that have a decent amount of natural light.
Also, I seem to be the minority in comments, but I don't mind people talking around me. I don't use my ears/hearing to code, so it doesn't distract me nearly as much as chat windows or anything visual on my laptop. I suppose the real issue is people having interesting conversations around me... But I have headphones and music if I need to concentrate (I probably only wear them for 1-2 hours a week to block out conversations).
Every week one a new article like this is posted, and every week the comments are overwhelmingly "open offices are bad". Every week I meet more people like me who don't comment because they don't feel strongly about protecting open offices, and would like the people who are upset by open offices to find their comfortable place.
There really are quite a few of us who don't mind open offices... I'd guess it's probably a majority of people... We don't really want to impose on others...
My only real concern is that the people who want their own offices tend to also have seniority and want natural light... I've seen these people carve out their own personal paradise, while blocking other's ability to have a good working environment.
Context: Mid-thirties, Sr Engineer in Seattle who has worked for small startups (< 10) up to Amazon.
My solution: Ability to concentrate is a teachable skill. Every skill-based sport has to teach players how to focus on the goal and ignore the distraction (hence my assertion that Golf isn't skill-based). We use enough sportsball analogies in coding, so I'll add another.... Coding in an office is like batting against a pitching machine.
I think there are very different experiences and expectations on what the craft of software engineering is like. Different tasks and organizations require different time budgets for e.g. collaboration and deep work.
My coding has very little to with sport-like activity and is more like the task of a lone clocksmith (although we have a team, individuals have quite large chunks of codebase carved for themselves).
For some problems I am straining on the edge of my working memory capacity.
The problem with the distraction avoidance is that it demands mental resources. If there is some benefit in training working in a stresfull environment there could be a sound proof room for such a purpose where employees could go for a limited time to train. The inverse of large open office/small quiet room pattern.
At first level there could be just white noise in the room. Once that is mastered as an added stimulus the feet could be placed in a bucket of icewater. At the next level the room is filled with monkeys. Etc.
As someone who has done lone-wolf development, let me tell you that so many issues go away once you develop a well-functioning team to work on problems collaboratively.
My initial reaction is that there seems to be much bigger issues with the way your company is structured. The words you're using ("lone", "carved", "straining on the edge") suggest a stressful situation where each individual carries their own weight... If that's the case, I can certainly see why you'd be upset by someone else impeding your ability to work. I wouldn't last long in an environment like that, either pushing it to be more collaborative, or just leaving.
I can't imagine any coding that isn't improved by adding collaboration (a great starting point is code reviews... make PRs early and get opinions on rough-cuts). If you don't have this in your current environment, I highly encourage trying to kickstart it... you're really missing out on a great way to remove stress, improve quality, and have more fun.
Sorry, I was perhaps not quite precise enough. I agree that collaboration on complex technical topics is wonderfull. There is quite a lot of collaboration and we do have a great team. The system is divided to many components and each of those components has usually only one or two active developers.
The inherent technical complexity of the components is such that sometimes a feature needs days of coding - thus the 'more locksmith, less of a ballgame' analogue. I should have perhaps pulled some other analogue.
I've worked in a 2-person office, in a cubicle, and in open office plans of various sizes. I personally prefer the open office format. It makes the team feel more cohesive, it makes me able to jump in to problems that are happening, and it's never stopped me from doing work that requires deep concentration. And if I really wanted to, I could book a small conference room or go to a corner booth somewhere away from my team and work there, but I don't ever feel the need to.
My biggest problem with moving to a corner or meeting room is that I lose my desk and with it, my nice keyboard, mouse and two huge monitors with everything laid out nicely on them. Instead I have to switch to a 13" laptop screen, a chiclet keyboard and a touchpad. That shift is hugely jarring.
You don't need an open office for the team to work in the same space. A team room is not a gigantic open office. It's a big room with walls. I loved working in a teamroom. I get instant awareness what everyone else is doing in my team - the actual claimed benefit of an open office - with no downsides. An open office has several teams and one is forced to be aware of their doings as well.
I genuinely enjoy working in open office after working in both settings to the point that I would never never work in a company that is not open office aganin. All the noise points are valid here though.
For me personally, I like it because:
- Better/Faster communications. I can ask and answer questions on the spots vs. scheduling a meeting. This is gaming changing. For the same type of question, I can get answered within 10 mins vs more than 1 day. This is a HUGE productivity boost.
- Better team culture. Sitting next to each other make the team much closer. More likely to go to lunch/dinner, hang out, and become friends outside of work. This will give people empathy to each other and more willingly to help/unblock you.
For the noise issues, I get around it by blocking heads down time in my schedule and find a quiet corner in a office.
I recently started working in an open plan office, and I was fairly apprehensive going in after seeing the many many rants about them here. And indeed, my environment has all the worst of people's complaints and more, but it's... fine?
I dunno, I just don't feel particularly unproductive. I thought maybe I just didn't have any point of comparison, but then I had a few days working from home and it didn't seem massively different.
A lot of people here are talking about flow, but I don't really feel the need for concentration for the majority "tactical" level coding, and when I run into sufficiently complicated "strategic" level problems, I find it much more effective to discuss them than to try and solve them on my own.
Yes, I prefer open offices. It makes the office feel more alive and interesting, and I'm less likely to get distracted since I know other people can see my screen. I have no difficulty concentrating because of noise, in part because my office is super quiet usually--people know to grab a meeting room if they're going to have a long conversation. In the past when I worked at places without easy access to meeting rooms, I just used headphones more.
Factories have huge machines, whih create added value. They have a good reason for loud noises and need for ear protection.
Offices, on the other hand, are places where people come to create added value by mostly by thinking (if they are programmers).
Are there people who enjoy the bustle of open office while trying to untangle a decade old piece of C++ spaghetti? Whose work output it actually improves?
I'm trying to figure out if the open offices are bad mostly for everyone or just for someone like me.