The first case -- the one I hated -- had a) long rows of desks, b) bright overhead fluorescent lights, c) a lot of noise due to being in a large room with sales/marketing, d) a lot of visual distractions due to people walking up & down the aisles, and e) few available areas to go to collaborate away from your desks.
Now, I'm also in an open office, but I find it quite livable, because: a) my desk faces the wall, for fewer visual distractions, b) the room is comfortably lit (ie, not too bright), c) it's a smaller room with only engineering and is generally quieter, d) there are enough areas to go if you need to collaborate.
All this is to say that, while the evidence is that open offices generally suck, there's probably a number of ways to ameliorate their problems to some degree without having to resort to private offices. I don't think I'd prefer an office to my current setup, actually.
 I think this element is underrated. In fact, I'd be curious to know if there's a verifiable correlation between brightness levels and how loud people tend to talk. There's something about a dim room that seems to induce people to lower their voices.
 Small, but not too small. There's a sort of sweet spot. I was once in a room with 3 other people and it was maddening because it was generally quiet but every little noise -- coughing, swallowing, etc... -- was seemingly amplified by the overall quietness to became hugely annoying. (An inverse concept explains why I can work quite well in a coffee shop despite the background din.)
I'm sitting here feeling stunned that anybody could ever want their desk facing a wall, as the implication (in terms of any "open plan" environment) is that their back is facing, well, nothing. IOW, somebody can walk up behind you unnoticed. Me personally, I hate that with a passion. I'd pay money to have my desk facing out with my back to the wall, just so nobody can walk up behind me.
Might as well sit in a box then. :)
No way this is real marketing image.
I'm not a code monkey. I don't sit alone in an office all day hammering out code. If that was what expected of me, I would change job.
So, not exactly open floor plan, but not separate offices either. I think that's perfect.
Sure, just keep your collaboration out of my concentration. That is, "Alice and Bob collaborating" may just be keeping Joe from getting any work done. It's easy to lose track of the effect of your collaboration in any open environment. Doing it in an office with a closed door eliminates that problem.
I'm not a code monkey. I don't sit alone in an office all day hammering out code.
Having an office does not in any way imply that you're supposed to "sit alone in an office all day hammering out code".
My point? So many factors are at play for a healthy office.
Code review seems pointless at a company with a defined code conventions.
I don't mean to disrespect you, but either you are you are very green or are living in a completely different universe of software engineering than I am. It's interesting to hear this viewpoint.
But yeah if I was just churning out CRUD apps then I'd probably be more productive on my own.
I think too many developers have a "shut up and let me code" mentality that ironically hurts their progress in any collaborative effort.
I used to work in a small open office where one guy would constantly hold debates with everyone. It was pretty hard to stay out of it, and very distracting.
Now I'm in an office with a similar layout and staff, but it's like a library. There's the occasional group discussion or banter, but not enough to bother.
I've worked in finance my whole career, so it's all open plan, lots of screens. Never had my own office, people always needed (well so they say) to be accessible.
And all it takes is two chatty hires to ruin it (as a chatty person, I'm fine unless someone encourages me). If they kept a lot of private meeting rooms when they changed the floor plan, you have a good chance of convincing the chatty people to fuck off to a room if they want to talk, but most places don't do that. They use open floor plans to reduce costs, and then there are shortages of meeting space, kitchens, ventilation, and bathrooms.
The sales pitch of sitting in a group is that you can ask people questions and get an answer, but it's based on bad information about recovery periods after task switching. And as a lead I've been crippled by the inability to get candid answers from junior and midlevel engineers, and being unable to negotiate agreements with senior engineers by hashing out our disagreements in private where I can steer the conversation toward addressing their personal concerns instead of general ones. We should be concentrating on finding a compromise or promising more functionality so they're happy, so that it's two or three advocating for an idea when it's time to discuss it as a team. Instead it just gets shit on while I'm stream-of-consciousing it in the middle of a bunch of myopic people, leading to more confirmation bias and reaffirmation of the status quo.
[Edit] And good luck healing a rift between QA and dev if the QA folk have to wander into the lion's den to talk about an issue. I have only been a lead once in an open office plan (working on #2), because half of my skill is in knowing more about what's going on by liaising across functional or personality boundaries. Half of the rest is in fixing unidentified pain points, which often requires hearing from people who don't like to be a bother. Open plans don't encourage candor, they crush it like a bug.
Steve Job's line, as reported by Jonny Ive IIRC, about ideas being fragile and needing space to grow really hit home when I figured out I'm doomed to be in open offices until the pendulum swings back.
I currently work in the former environment (but everyone is like that guy), and it's super noisy and distracting but also fun.
It is more fun though, to have a constant debate. Just not productive.
Almost every open office I've worked in has been super loud and disruptive, but one of them that happened to have high ceilings and very soft, warm lighting turned and turned out to be the fantastic. Something about the space gave the room a kind of library-style hush, which I think helped create a feedback loop compelling people to speak quietly and move longer conversations into closed rooms.
I think there's also an element to establishing the culture of how you interact in the open space early on, I think even with the hushed atmosphere of the room itself, it only worked because people had been talking quietly and taking louder conversations into private rooms for as long as they'd been working in the space. Pulling back from a culture of having a boisterous open space to a quiet one is, I think, much harder than doing it from the get-go.
However, the ability to move your desk at will makes open space work well, assuming you have enough space to work with. If your desk is on wheels and your company lets you, you can just relocate: Find a quieter spot to work, or go sit next to a few people you're working closely with for a while.
But the combination of open offices and assigned seating is terrible. It feels like preschool. I prefer to be treated like an adult at work, not a child or a slave.
Of course, cubes or offices would let us have the best of both worlds, but ...
A lot also depends on the people that work around you.
If everyone respects one another, then it's usually OK.
However, there is often at least one person who talks and talks and talks for most of the day (and somehow keeps their job), and at least one person who talks VERY LOUDLY on the phone all day (because they're far away, so obviously you need to shout to be heard?!).
However, most of our engineering team is remote and if they're not in one of our locations, we give them pretty much what they'd like to build their own home office or go to a coworking space.
For me, I'm actually nomadic, so I tend to work from wherever I'm staying or end up in cafes a lot of time. I still get the support I need if my work "station" isn't optimal.
TL;DR Stack Overflow provides private offices, but is really flexible, especially given its remote policy.
I asked for a do-over and they said no. Oh well...
This is second hand, could be wrong.
To contribute to the broader discussion; SOME teams here still have offices, but it's a dying breed. I consider myself very lucky that I found one that did, and it was certainly a factor in my choice.
If I want some noise, I'll work from home (I have a 3-year old.)
The down side is that IBM's management has recently done a 180 on remote working and is now "strongly encouraging" me to move to one of their offices and work in a cubicle.
I'm pretty sure they won't actually fire me for not moving, but any promotion is probably going to be harder to come by until things (hopefully) swing back in the other direction.
Or I'll just retire. The benefit of living in Ohio is that I can save like 40% of my salary and still live comfortably. (And lease an office for $225/month!)
Did this not affect your role: http://www.nbcnews.com/business/business-news/ibm-tells-its-...
I said "no", got a new job lined up, and then about 4 months later, they decided not to fire me (they apparently did let go of some people, I was an exception).
I don't recall the exact phrasing, but it was at least hinted that I shouldn't expect a promotion. I never received any of it in writing, it was all phone calls from the start.
I did get a 5% raise a few months later, though.
It didn't work out so well for a colleague of mine who was on the design team. Despite several other teams within IBM trying to hire him, the company stayed the course and let him go. I don't know the full details, but I do know that he's a world-class web/mobile engineer and we're definitely worse off for loosing him. He's in Pittsburgh, if anyone is looking for someone there (or remote): https://www.linkedin.com/in/joshuabsmith/
Half of the company has gone full open office, and the laggers (who didn't get redone before the last CEO suddenly quit) seem to not be changing. I could wander elsewhere in the building to work once in a while, but eventually people would start questioning where I am.. and I'd be missing out on my single monitor and ergonomic seating. I work for a modern company with 30 year outdated office structure... At least its feeling that way today. Yep, right there -- there's the envy!
This is the fist time I've worked in a cubicle. I rarely see sunlight, although I recently was moved about 5 feet closer to a window (with walls still in the way). I used to either work outside (in other occupations), or at varying locales. It's new to me to be tied to one place, bathing in fluorescent lighting.
Recently the company took offices away from people and moved them into cubicles, including management. The open office spaces have more private sections to tuck into for the day, they're just bookable.
The only people who have offices are managers or C-Level executives. Currently I sit next to a door that is constantly opened which really kills my productivity.
I discussed this a little in my "Notes on Distributed Teams" presentation here:
Here's how my personal home office looks:
(Shameless plug, here are the positions we're hiring for, if you're interested! https://news.ycombinator.com/item?id=14902227)
For the company:
* less office space expense
* bigger talent pool
* low cost benefit
* increased documentation
* encourages the trend towards outcome based management (as opposed to butts in seats)
* more control over their work environment
* more control over their time
* no "commuting" subsidy for their employers
* arbitrage payscales and standard of living
* working vacations become possible
I work 1-2 days a week from home and it's a great balance. It gives me time to really get stuck into things with minimal distraction, and be more flexible with time. That said, the days in the office are really useful too - nothing beats sitting with other people physically when you need to communicate.
But I agree, time off the grid is important and at least some of your vacation days should be non working.
I've done some longer trips with my family (4-6 weeks), and working remotely has allowed us to take those longer trips when I didn't have six weeks of vacation. I would typically take two weeks off, work three or four days, take another two weeks off, work a few days, etc, etc.
In my experience, incompetent management won't do a good job of leading a team in any circumstances (remote or non remote).
I think you also need to hire differently for remote. People need to be self-motivated and self-sufficient.
I think this is true, but I think that most hiring managers would prefer to hire for self-motivated and self-sufficient regardless of the role location. But maybe I'm too optimistic.
If the biggest issue I have with a direct report is that they require a bit of attention to keep them focused and productive, then that's a high-quality employee I'll be very happy with.
Unfortunately I think so.
I would expect that a larger talent pool maybe the case for smaller cities
There are 3.87M software devs in the USA in a population of 325 million: https://www.census.gov/popclock/ https://en.wikipedia.org/wiki/Software_engineering_demograph...
Call it a density of 1% across the USA.
San Francisco has a population of 870k, round up to 1M.
If you assume that SF has a software engineer density 20X what the US does, then they have approx 200,000 engineers available for hire.
Assume that only 25% of software engineers are good for a remote job. That means that you'd have 960k engineers available for hire remotely, almost 5x the pool of SF.
Yes a lot of assumptions above (and there's also a skills matching and discovery issue), but I think that illustrates the size of the talent pool for remote hiring. And that doesn't include software engineers who aren't residents of the USA.
I am, as they say back East, breaking your balls a little. (-‿)
That's precisely why you have offices. Real estate is extremely cheap there compared to tech centers such as SF/ Bay Area.
Immediately prior to this, as a junior member of a non-IT/IS-department rapid development group for a utility company, I was relegated to whatever cubicle they could find to stuff me in, usually on the periphery of the call center area. This is also where they'd stick the COBOL guys they'd had to hire back as consultants, along with others who didn't fit into any of the (many) union contract workflows.
(I was a listed as a line-item in the same cost code group as a rented photocopier or scanner, meaning that for most of my tenure there I had ZERO contact with anyone from HR. It was glorious.)
What's more important is company culture. Does your company expect you to accept interruptions at any time for any reason, no matter how trivial? Is your manager willing to run interference when suddenly every new employee in every department shows up expecting that you'll handhold them?
You can have an office with a bad company culture; you'll find that your office door is always full of lurkers, or you'll find that you can't walk between your office and the bathroom without getting mobbed with "urgent" requests that need your attention immediately.
What's more important is to ensure that management avoids distractions, that newcomers in other departments are trained, and that processes are established and followed when needed. Handholding should not be required from any engineers; instead mentoring and process refinement goes a lot further than a door that you can close.
On the other hand, its good to have open working areas available when they are appropriate. In Bell Labs, we'd often congregate near the railings overlooking the Holmdel atrium while our build finished or downstairs in the large open seating areas.
There are people in all three areas, usually the same ones. There is no one size that fits all. Just let people choose.
Not sure what the coverage would be about, really.
Is it as simple as that or there's more to it?
In my opinion, my building/group/whatever does it wrong by jamming so many bodies in the same room together. There's 26 desks here in a room that looks as though it could comfortable fit about half that many. I've since adopted big sound-proof headphones and a wall of monitors that eliminate most distractions. But the biggest annoyance to me is that there's constantly a line for the bathrooms. Too many people for what the building was originally designed for, I think. Assuming we better limited the room capacity, I could likely tolerate this just fine.
OSHA regulates the ratio of employees to toilets ("water closets"). Check this table  and file an OSHA complaint  if the requirement isn't met.
A certain online retailer of books and counterfeit electronics has slightly larger bathrooms and a similar layout in its new buildings, but worse gender equality. They may actually be in violation.
(It's not clear the exact algorithm one should use in counting a mixture of multi- and single-person restrooms, but I would presume it's something like, count all the men that can use your male restrooms, count all the women that can use your female restrooms, and take everyone left over and see if they fit is your unisex restrooms.)
And I bet if you bring it up during the process it wont help at all.
To clarify, I'm not familiar with your usage of the word "cabin" in this context.
Kind of useless for me though, because I spent almost 90% of my time in a lab (and a large portion of engineers spend most of their time in a lab). The lab is a large noisy room. with people next to each other. It was a good deal though; if I had stayed past my internship and gotten comfortable enough to write a lot of code before wanting to test it, I could've spent more time in my office.
It is working well. People mostly are heads down getting their work done. So add Windward Studios to the list where all developers get offices.
My first team started off two-to-an-office (unless you had something like 5 or 6 years of seniority, in which case you'd get your own office), but they moved to open offices when their building got remodeled.
The open offices that I did see at Microsoft were actually pretty nice - they were discrete spaces with room for ~25 desks and 2-3 meeting rooms attached. Certainly better than the spaces I've seen at startups, but still not close to individual offices in terms of pleasantness.
As for a reason, I suspect it's the same reason they unified dev and test into a single discipline. "Because that's what Facebook does."
If the employer were to cover the full cost then you can be quite sure they'd want a great deal more control over where the employee was based, and if the employer could rent an office for several employees then they probably would. At that point the job stops being remote and becomes an ordinary office job. That's how these things work.
In other words, not this fuckin' nightmare...
...but more like a range going from this...
...and even this...
Right, its definitely not the ISP monopoly/duopoly
I mean, most "programmers" don't work for software companies; many of them are employed by banks and insurance companies. It's natural for that to be treated weird there.
But this is also not true, see e.g. Facebook, Google.
I've been in software for 30 years, and I only remember interviewing at one company in the Boston area that had private offices for most engineers -- Stratus, back in 92.
Oddly, I had my own office when I was working in IT at 17, but now it's harder to find.
I'll report back what they say.
I just recently was working in an open office and the difference between daytime and evening (after everyone else left) was dramatic.
Or at least on the Verona campus. It's been a while since I've been around those parts.
But he had a very peculiar look to his face, like a charicature. So when we would spin round in our chairs to discuss something, he'd be talking to me about something very serious about work and I would start to giggle.
He would say "what why are you laughing?" And I would have to say things like "in sorry something you said just reminded my of something funny"
I had a really hard time maintaining a straight face around him - I felt so bad about it.
Now this: https://www.bizjournals.com/sanjose/news/2017/08/08/apple-pa...
"Apple staffers reportedly rebelling against open office plan at new $5 billion HQ"
Glad I wasn't the only coder there who utterly despised the move to the open office design.
I once was at a place were designers always had the last word (maybe because CEO was an architect), hence their new offices looked like a much cheaper version of Starbucks. With fewer couches and the few walls that made it were all made of glass.
The company is no longer around. These days just nearby their old offices brings back horrible memories.
Some tasks require isolation. Writing is one of them. I reckon programming is similar.
I don't get this; this happened at my workplace too, until we installed a coded lock on the restroom (which was otherwise accessible to anyone in the building). What kind of boor has a professional job but can't piss in a foot-diameter hole and is too lazy to clean up when he does so?
Please don't ban my account, that's true and anecdotal - 75%+ of my coworkers in that department were Indian so maybe it was just the odds.
No reasonable idea of civility (https://news.ycombinator.com/newsguidelines.html) would include "anecdotes" about the grossness of other races' or nations' bathroom habits. I'm flummoxed that this became necessary to state explicitly, but I guess everything happens if you moderate an internet forum long enough.
PS: Seriously, free coffee is more important to me than an office. I like open working environments.