At a certain point it just doesn't make sense to over-optimize for productivity, when the sacrifice (being pleasant & accessible to coworkers) isn't worth the gain (more focus time coding).
Sometimes it seems that we're over focused on efficiency as opposed to effectiveness. And I get it, because it's very hard to "be both". You can either spend your day coding away solving problems or you can spend your day discussing with people figuring out what the problem is. Both pursuits have clear failure modes; you can spend a lot of time trying to understand the problem better without really getting anywhere and you can spend a lot of time solving the wrong problem. How do you know when you have the right balance? 50/50?
> How do you know when you have the right balance?
Find the right balance by understanding the needs of the whole business, the needs of your department, and the needs of your specific team, and your manager’s expectations of you. Then balance all that with the work assigned to you, deadlines, etc. And then align your day to day work with what the business is telling you is most important.
(This is also how average engineers can put themselves in positions to be promoted ahead of “rockstar engineers”. Companies promote and elevate employees who have the most positive impact on the business, not people who have the most impact on the codebase)
Agree. I think the key distinction this post misses is between being effectively collaborative and adaptive to others’ communication styles (the fatwa against the naked “Hi”) vs. producing back-pressure against organizational dysfunction (a norm that throwing a vaguely titled hour on a dozen folks’ calendars w/no preliminaries or agenda is acceptable).
At a certain point it just doesn't make sense to over-optimize for being highly interruptible, when the sacrifice (productivity) isn't worth the gain (satisfy outdated notions of office etiquette designed by extroverts who want to vampire other people's attention unnecessarily).
Agree, especially when no one writing code, or managing anything, has a meaningful measure of their "productivity," or how removing or changing variables might "optimize" it. People talk about optimizing their productivity as if they had a meter on their desk showing a number, but it just comes down to subjective experience and mood.
People who act like their time has so much value they can ignore and talk down to their co-workers end up with no professional contacts worth anything when they get laid off. "I had my head down coding, I didn't have time to socialize or make friends." Optimal for an hour, maybe, but a losing strategy in the long game.
A well-functioning organization would not devalue people who are more judicious about their use of time, preferring productivity over unnecessary socializing.
But while what you're describing does not describe a well-functioning organization, it's definitely true in practice. People who buck the silly social dynamics in office cultures will be perceived as less productive whether it's true or not and are frequently devalued.
A knee-jerk response to what I just wrote of course will be maybe those people just can't see the real value of all these allegedly silly office rituals, but before you jump to that conclusion, consider the possibility that it's at least equally likely that the people perpetrating the rituals are overvaluing them.
The point is all of these social dynamics and office rituals should be open to being reexamined every so often to see if they're truly adding the value people think they're adding so they don't devolve into rituals people do because they're rituals. Keep the good ones, ditch the useless ones, and be proactive about objectively evaluating which are which.
The organization doesn't devalue people. Other individuals feel put-off and alienated by people who act the way the author of the article describes. Like it or not personal relationships matter, reducing friction matters, and small talk and the apparently wasteful social rituals can add to team and organization cohesion. Lone wolves, high-performing or not, get perceived as not team players, not someone willing to help others even with small things, hostile to routine human interaction.
Some workplaces go too far in one direction or another. I would prefer working in a more casual and friendly environment even if that meant engaging in idle chit-chat and signing birthdays cards, rather than a workplace where everyone had to shut up and pretend to optimize their performance. In my long career I have always found jobs and freelance work through friends and former work colleagues, and a big part of that comes down to them perceiving me as someone they enjoyed working with and hanging out with, not just someone who optimized my productivity and told them to buzz off because I had to write more code.
> People who buck the silly social dynamics in office cultures will be perceived as less productive whether it's true or not and are frequently devalued.
Younger, I would have agreed with your sentiment. Now, I appreciate good coworkers. If I don't have a socialisation outlet during the day, it's just draining and I burn out faster. If you're a person that is just a grumpy Gus isolated in their cubicle, you can make your team less effective and undermine the team spirit.
This is where I feel like management fails. To build a team you need to really pick personalities that work well together and honing and tuning the group composition is something that managers can do. Put the introverts together. Put night owls together. Parents are more understanding of taking something to over to cover for someone because they need it sometimes too.
This is a phenomenal general rule and can be expanded well beyond engineering and social norms:
At a certain point it just doesn't make sense to over-optimize for productivity, when the sacrifice {insert impact} isn't worth the gain {insert output}.
When you interrupt mental work, you just doubled that person's effort. At a minimum. Now tell me it's not worth it. Managers don't care because it"s not their effort.
Don't be fooled by the use of the word "optimize" which suggest some minimal gains over the current situation. In the short term you double the effort of that person/team, in the long term you will get frustration, people asking for huge raises (to reflect the effort) and then people just quit.