3 ms·
If as an engineer your only Job is to write code based on perfectly written functional specs, then open offices may not be the best. However, In larger project
by SethMurphy 9y ago
If as an engineer your only Job is to write code based on perfectly written functional specs, then open offices may not be the best. However, In larger project communication and transparency is an as important part of the job. While many people are more comfortable alone, you are part of a team and not just a coder. I find it selfish for people to feel their alone time is more important than learning how to work as a team. Noise canceling headphones do wonders when you need to focus.
- phkahler 9y ago>> I find it selfish for people to feel their alone time is more important than learning how to work as a team. Noise canceling headphones do wonders when you need to focus. Wow. That's a fairly narrow view you have there. The core work of engineering is done individually. People having ad-hoc meetings next to you ruins concentration and it's not just the noise. It's the visual distraction as well as a psychological distraction - you may wonder if something pertinent to you is being discussed and you should stop and participate. The notion of "just put on headphones" and it will all be better is - to use your own word - selfish. How about some degree of privacy by default. In a traditional cube farm you can have 1 or perhaps 2 people stop in for discussions and go to a conference room for larger discussions that involve the team. I guess the simplest way to show how wrong it is: in most open offices, the management still get offices. Sure, they have reasons like a need for private discussions (people conflicts, compensation, etc) but they could just grab a conference room for that stuff right? Nope, they hate being in the open too.
- codyb 9y agoHm. Maybe I'm nuts but I have literally no idea what desiring a private and quiet space for concentration does to ruin a persons ability to work as a teammate. My coworkers love their noise canceling ear phones. That's great. What I'd love is to not hear their ratatat as they drum to their music. And I do not fault them for that, because I love to ratatat to my own music when I'm listening to it as well. A place to be myself while I work, what an odd concept.
- alangpierce 9y agoSome examples: Wanting a private and quiet space means you won't be there to provide help for the new person who has spent all day fighting with their dev environment or trying to understand an area of code that you wrote. And if two people who sit near you are trying to solve a difficult problem that you've already solved, then you won't be able to overhear and chime in with your solution. Focus is certainly important, and can help you be super-productive if you have a well-defined task and are already comfortable with the code you're working and your tools. But I think newer people at a company are in an opposite situation; they're overwhelmed with complexity and need collaboration and guidance to be productive, and they can level-up much faster by hearing the problems people are working on around them.
- codyb 9y agoIf someone pings me I'll be right there for them. Setting up development environments absolutely sucks but it's usually a one time thing. Pair programming is great and I'd never advocate a development environment where senior engineers weren't available to mentor junior engineers. But I also think tenacity is a huge part of our job. My first job as a junior engineer had me working with a fellow in Israel, I'd get two hours with him in the morning and then he'd cut out due to the timezone difference. My colleagues were consistently impressed that I'd produce despite this. One time my code didn't work, I sat there for eight hours until I realized I was missing a space in my jquery selector. It was simultaneously a moment of relief and a more existential questioning of "what the hell did I get myself into?". At the end of the day, if you're paying a premium salary for a senior software engineer, while you shoukd encourage mentorships, you should make sure that individual has the environment they need to produce high quality, maintainable software. Putting them in an environment where people are talking about football is not the way to accomplish that.
- alangpierce 9y agoMakes sense. Some thoughts: * Agreed that (too many) discussions unrelated to work can be frustrating. My experience is that the vast majority of conversations I overhear are work-related and at least a bit relevant to me, but I imagine different office cultures are different, and it also probably depends significantly on how you arrange seating. * The tradeoff between asking questions and figuring things out by yourself is an interesting one, and I think people start their careers in different places. My personality is more on the shy side, and for a long time I was worried about wasting people's time, so I would spend a very long time on any given problem before asking for help, which hurt my overall productivity. Having an office environment where it feels normal and welcome to ask questions would help people like me quite a bit. But I understand that some people are on the other end of the spectrum and give up too soon and end up asking more questions than they should. * Another thing that I think differs from person to person and from office to office is how much you expect work to be a source of social connections. At one point I moved from a "social" office to one where people quietly focused on individual work all day (and where it felt very difficult to start a conversation, even a work-related one), and it was much more lonely than I would have liked.
- steego 9y agoIn a larger project, communication and transparency are managed by moving people into rooms that are optimized for focused collaboration. You don't put everybody in the same room so people have to expend energy to tune people out they're not collaboration with. It's silly. Regularly schedule time to collaborate and do it in a focused way. A good work environment should provide places where you can collaborate and focus.
- Jefro118 9y agoI don't think it's generally about selfishly wanting alone time, it's understanding that a lot of people can be far more productive when they have some space and quiet to get work done, free of constant distractions. The more intense focus the work requires the more true this is. I would agree that it's not good for engineers to want alone time to the point where team communication significantly suffers, but a lot of open offices swing the balance too far in the other direction where it's hard to write code that requires you to carve out blocks of working memory in order to get things done. Also, I've yet to find noise cancelling headphones that are so effective that an open office wouldn't bother me at a all and I don't want have to listen to loud music to block out other noise - that's distracting in itself. That's not to mention visual distractions as well. I think ultimately there has to be a balance between space to focus and low barriers to communication, many companies handle this by letting people work from home, Apple I imagine has the budget to find an even better solution.
- ape4 9y agoNot so great for blocking speech. https://productivity.stackexchange.com/questions/7213/do-noise-cancelling-headphones-block-human-speech-and-pa-systems https://productivity.stackexchange.com/questions/7213/do-noi...
- TeMPOraL 9y ago> While many people are more comfortable alone, you are part of a team and not just a coder. I find it selfish for people to feel their alone time is more important than learning how to work as a team. I can't imagine a project which would justify so much "collaboration" that you have to have everyone in the same room, next to each other, all the time. If you design your project right, you end up with each team member having a well-defined piece of work isolated behind (broadly understood) interfaces, so for most of the time they can do their actual work alone. You can do meetings and design sessions and watercooler chats to sort out what has to be done and what is the division of responsibilities, but at some point people need to actually sit down and write the code. This is a lone-man job (barring pair-programming). If you need to constantly "collaborate" while coding, you're doing something wrong.
- SethMurphy 9y agoTo be clear, I work in a very well designed, but not perfect, open office space. If somebody needs to speak with me, I am always available and consider it a strength I do not isolate myself. While my personal velocity is affected by this (hence the use of the word selfish, a descriptive but not derogatory term), the team as a whole does better for it. We do have rooms for collaboration for all meetings and ceremonies, and the desks are in octagon arrangements to minimize visual distractions. The point is that isolation is just the most obvious, but not only way to have a good environment to solve problems in.