3 ms·
Some 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 envir
by alangpierce 9y ago
Some 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.