Ways to improve mental health for software developers
techcrunch.com
techcrunch.com
Some of the passive suggestions are better, such as making time off or other resources available. Trying to force anything or intervene even with games or other interruptions is wrong imo. Even an invite "that the whole team is doing" feels like pressure. At a minimum it's an interruption and another context switch. I'd personally rather take that hour to walk and get some fresh air, so I'm not focusing on my screen for an unrelated thing.
I know everyone's different but this is how I feel when I hear or read about this kind of thing. It reminds me of something I heard a long time ago "you may have the right message but be the wrong person to deliver it". Let work be work and let people recharge with family and friends if they prefer.
I'm in the same boat. That, and also the bright artificial lights in our huge open space. There's almost no natural light in the whole building which I find extremely disturbing. Luckily we can work from home almost full time now. Hope we won't go back to normal.
Instead of that, you’ll get HR peddling their Modern Health subscription that they’re paying unknown amounts for.
I understand where you are coming from though. I was depressed in my 20s and my inner dialogue was all about how bad I must appear to other people. It prevented me from relaxing in the company of others completely, and made me interpret their comments in a negative way.
You get out of that by gaining self confidence. You have to have the mindset to not let other people's opinions bother you too much. So for example, what if that guy you mentioned think you look not happy on camera? Maybe you don't but you have no obligation to look like anything. You can put a picture of a rabbit instead of yourself. You can say your camera is broken.
It all comes back to having the confidence to do these things because that is freedom. If you don't have the confidence to go your own way because you want to, you are a complete slave to the behavior of others. They decide how you feel. Just stop it. Walk your own path in life. Start practicing tomorrow by turning off your camera.
Good luck.
A good-faith way to look at it would be to see it is this way - sometimes, things bother us and we don’t feel like telling other people about them because we don’t want to bother them. When this person asked you if everything was alright, I believe they meant to say “hey if there’s anything bothering you, I’m open to talk about it okay? No judgement”
Our analytical minds play tricks on us very often. It can take any situation and make a bad faith interpretation of it.
Employers can choose to make you an amazon warehouse worker who is given zero slack inside a windowless room with no AC and no ability to socialize with your fellow workers, or to give you slack so you can have water cooler discussions and hang out time to get to know people better vs. faceless voices in a zoom call. Doing these things are not an either-or proposition.
No, these are not supposed to be additional work hours on top of the normal work.
> My employer or coworkers are not who I look to for improvements with mental health as I feel it is a very personal topic
...and yet we spend 40+ hours a week in contact with this people. Not to mention the emotional attachment to the meaning and outputs of the work itself.
Mental health is not something that we can offload to our spare time. Just like workplace safety.
> I wish there was more respecting boundaries
Respecting boundaries is not incompatible with talking about mental health - actually it's the opposite.
What if my boundary is not wanting to talk about it?
>Mental health is not something that we can offload to our spare time.
Why not just give the employee more time to fix their own things if they so desire, rather than pushing employers to fix it. Clearly some prefer the former, some prefer the latter.
Considering the article talks about "autonomy" multiple times, it is a little baffling that "keep 40+ hours but spend some hours on your employee's health" is the sole solution pushed.
- Eliminate crunch time due to management's bad planning
- If crunch time is "unavoidable," apologize and pay me for it. 1.5x for every hour over 40 would go a long way towards making me not resent the blundering middle managers that got us into the "we have to release yesterday" situation
- Know what's important; when everything is "top priority," nothing is, and your developers have no idea what they should work on next
- Weekly team meetings are for positive reinforcement, not "things are looking fine but we gotta keep pushing." That kind of "motivation" is extremely heavy on the mind
- Remind us that sick days are for both physical and mental health and encourage us to use them if we need them
these sort of “leaders” best quality is that their management style dies with their generation, if we try hard as a group to kill it.
We should be very thankful for a lot of the stuff they did for us.
Also, I'd rather work with the average "boomer" than most people who deride "boomers".
Can we please not point the finger at whole categories of people simply based on their age?
I don't actually believe this is natural anymore. This must be orchestrated. Somewhere, some group is cynically pushing this narrative. Are they luring eyeballs by pushing divisive articles? Are they distracting from bigger problems? I don't know, but this feels fabricated.
Any business looks for results. Media companies will do whatever brings in results. What brings in results? Sowing discord and division because that’s what keeps people coming back. How do we sow division? By making strawmen of anything we don’t understand. When a millennial says “boomer” and when a boomer hears “boomer”, they are talking about completely different things. But the word “boomer” gives us the illusion that we’re all talking about the same thing and that the other person truly is out to “get us”.
These are unfortunate tricks of the mind that are being used to serve our short term ego-gratifying needs. If any progress is to be made, we need to rise above these petty squabbles by focusing on what’s important and not what someone else tells us is important.
People in charge should be in charge, communicate well and strong, if they fail they compensate for it a bit, and acknowledge people's effort when things are harder.
This doesn’t really work in practice.
You’d think that forcing the company to pay more to hit a deadline would be a disincentive, but instead it makes crunch time forgivable because the company is paying extra for it. “What are you complaining about? You’re getting time and a half to work those extra 20 hours!”
It also does nothing to address the core problem of overwork leading to burnout. If anything, it lures people deeper into burnout because for many people it’s hard to turn down extra money.
Finally, I haven’t seen good results from offering crunch time pay incentives for many reasons, but the most unexpected is that the incentives are very lopsided across the team. An experienced developer who has young kids at home may not be able to stay late, but an inexperienced junior straight of college with nearly zero external obligations may be able to put in 80 hours of poking around the codebase while racking up huge paychecks for contributing very little. Worst case, the seniors end up with even more work because they have to go back and rework a project that was done by juniors working crunch time while their usual senior/mentor peers were unavailable. The incentives of extra hourly crunch time payouts get weird very quickly.
Treat software engineers like they actually know something.
If an engineer thinks something is a bad idea, actually listen to them instead of pretending to listen. It amazes me how many companies see software engineers as extremely low tier, but I think a lot of that stems from most engineers lacking direct involvement with decision makers and other personnel.
This is why I am pessimistic about the concept of having project managers act as an interface between engineering and the rest of the company. On one hand, it relieves engineers of a certain amount of responsibility but the tradeoff is that now one or two individuals have an incentive to do things to please both parties at once. The result is that no one really knows what that engineer guy Al actually does around here.
Perhaps a lot of problems around engineering morale would go away if we eliminated the middle men and only engineers themselves to interface with the rest of the company and advocate what they think makes sense rather than what makes sense to a project manager who will only do what results in the least amount of hassle for them. It would be up to the engineers themselves to make sure they aren't culturally segregated and made low tier.
If you're an engineer and your company gives the sales people their own desks while you have to share a desk, consider how much that company actually values you.
My problem with your solution is that, practically speaking, engineering managers often end up being glorified vice project managers because of the number of meetings they end up in. As a result, they can be significantly disconnected from the actual technology being used and the perils they are fraught with that can cause complications when implementing even simple features.
At least an EM knows something about engineering. And an EM is a role that indeed should exist in some capacity, whether or not that's the exact title they are given.
What I believe would be better is for engineering teams to be involved in the early to middle stages of planning and pre-development, and for either an EM or team lead to have the authority to prevent product owners and other departments from applying undue pressure on individual engineers. That should be the primary role of a lead, and they should otherwise step out of the way and let engineers speak for themselves since they are the ones working directly with the software and APIs being used.
Otherwise, we end up with a similar problem to the one I witness, which is that the EM in your approach would end up being incentivized towards diplomacy more so than serving the needs of either side. A leader-as-an-interface shields both parties from each other but also facilitates alienation. An EM that works in tandem with the engineering team can make sense, but standing between engineering and other company operations to me is an anti-pattern. Middle men are better off not existing at all even if it means having no EM or PM. All they do is remove power from both sides rather than become involved on an as-needed basis.
Let's put aside for a second that there are many lackluster programmers who happen to also be expensive.
The idea that there's "tech companies" and then there's the rest of the economy doesn't make sense, and probably has always been a false dichotomy. Small companies to BigCo fundamentally run on technology. Small hiccups in that technology cause gigantic interruptions. Until we are automated out of existence, they can't get away from us engineers.
One might say that software engineers are glorified digital plumbers. While there's a lick of truth to that statement, this is ignoring the fact that you wouldn't necessarily hire a plumber rather than a structural engineer when designing and constructing a building. Just as a structural or civic engineer must do research and calculations for every single job they are tasked with, software engineers necessarily must research and solve unique problems 99.9% of the time. You can't train a software engineer to do one thing repetitiously as what could have been done with a Ford assembly line worker. In software, there is simply no equivalent to being trained to turn the same bolt hundreds of times a day and that becoming your only job.
This isn't to say that there aren't repetitious aspects of the software developer's job. Many projects share certain qualities (ex. CRUD apps), and some repetition results from the role of a developer being overloaded.
I believe you are mistaken in suggesting there are no "rockstar" programmers. While I would shy away from such a cringe term, though rare they are, I've encountered a few "rockstars" in my time. They tend to do at least 80% of the work, perhaps 90%, by virtue of their cognitive capacity and ability to adapt. Do they make proportionally more than most other developers? Of course not. At best they are viewed as liaisons for their respective teams.
I am by no means saying that developers should be the backbone of a company. Although that can and does happen, and my have benefits, developers aren't necessarily qualified to manage or make high-level decisions that will take the business in different directions. Arguably, the hierarchs of companies are of a higher tier than developers because, while the developers are navigating, ultimately those hierarchs are the ones at the steering wheel, to use a somewhat flawed metaphor.
On the other hand, developers aren't of equal value to the janitorial staff. They aren't equal value to sales or customer service. They aren't even equal to design teams, since design teams usually can't ship a product themselves, and a product with poor design that does its job well is far better than a Figma document, which on its own is essentially nothing.
And yet many companies privilege these other departments over engineering, sometimes even when their core product is software. To put it bluntly, while there certainly are some excellent companies out there that treat engineers properly, too many companies mistakenly view software engineering as a necessary evil and as something that can and should do anything that is thrown at it because they themselves often aren't of the engineering mindset themselves. Most people get educated, "finish" those educations, and thus fail to understand that engineering can't possibly work the way they've treated their own specialties.
There is simply no reason why mid to senior level software developers can't be more closely involved with in pre-development and actually be listened to. My hypothesis is that having engineers sectioned off while a project manager or team lead acts as the sole interface with the rest of the company simply doesn't cut it, and it results in the demoralization of engineers because their voice is rarely heard or respected. Engineers think they don't want to be involved with the rest of the business, and while there's a benefit to avoiding possible distractions from coding, this non-involvement comes at an unseen cost.
> In command and control structures value is given by position not by contribution.
While that is true, and to a large respect is inevitable, that doesn't mean that its logical extreme should play out.
No matter what, power politics always emerges. It even emerges among engineers themselves. I'd go as far as to say it's a law of the universe.
Yet what happens when that law is amplified to such an extent that one party loses too often? They become alienated and demoralized. Not across the board, mind you. I am not suggesting that all or even most software developers experience these mental health issues because of where they fall in typical corporate structures. But when the problem exaggerates itself, even reaching its logical conclusion (which I have experienced myself), enough people can lose their sense of self worth that no amount of money can compensate for it. In the worst case, the personnel that companies lose are the rockstars, so to speak.
To expand on that last point, I myself have experienced being taken to the far end of the spectrum. I once worked for a team that went from having their own offices to a room with their own desks, to a bigger room with shared desks, and finally to a supply closet in the center of a building with no windows. All the while, sales and HR all got their own desks and cubes and were given frequent recognition even though this company's business was selling software. We went from being treated like experts to being sectioned off from the rest of the company and not being consulted for anything. This all happened within a year, and the first people to go were the ones with the most talent (fortunately one of them ended up at Apple and has been there for years now).
Yes, that's an extreme example, but this plays out to a lesser degree at many companies. Those whom are solving fundamental problems are often viewed as less than they actually are. By no means am I trying to glorify software development, because there's a banality to it at the same time. But it's not nothing. In fact it's the closest thing to reality that exists in companies that sell digital products. Without solving problems with logic and mathematics, everything else is just fantasy.
Businesses will have a better chance at achieving excellence and adapting to problems if they cut out the monkeys in the middle and allow engineers to be involved earlier in processes. Though sadly the vast majority of businesses are actually disinterested in excellence of any kind since excellence conflicts with the traversal of power structures through politics.
If businesses fail to hold on to software developers and struggle to hire new ones, it shouldn't be a mystery to them why they are facing that struggle. Maybe developers are more important than some of the traditional roles that they venerate.
So no, I don't agree that we deserve to be treated as low tier as we often are.
It was obviously bad in 2004 with public exposes, and it is still the same today: https://ea-spouse.livejournal.com/274.html
Game development will improve its working conditions when nobody wants to work for a game company, until then they will be underpaid and overworked compared other software development types. There is a crazy hot hiring market elsewhere in the industry, do your part by walking away.
No. Send me a compensation for working hard to launch your project and order me to rest for a week. I'll figure out what to do to unwind, don't you bother yourself with this -- it's on me and I'll handle it.
The difference [among people] that you speak of is very closely correlated to age and life/work experience. I've known people who realized that work is duping them to have almost no personal life and to cheer for other people's success... at 24 years old (quite impressive IMO). I myself finally started catching up with that fact, as dumb and slow as I am, at 36. And yeah, others learn it at 70.
It's OK to be ambitious and build a lucrative career (or an empire). The key factor here is knowing when to stop and/or how much % of your waking time you should be dedicating to work. Life is not all about work, never was, never will be. There's a good reason humans were hunter-gatherers for likely tens, if not hundreds, of millennia.
I was suffering horrible from anxiety and panic attacks and that honestly made things worse. I felt relieved to be able to talk about it and then got the rug pulled right out from under me.
The shortage is more in mental health professionals who take insurance. If your willing to pay full fee and then submit a super bill to your provider to get part of the cost back, you'll find therapists fairly quickly.
Its rough and incomplete. Would be great to get some feedback on this.
I've not finished it yet, but I can say I was a bit... wary because it hadn't been touched in ... 18 months I think? No shade on the author there - putting your work out there is great.
I'm only about 15% through it so far, but it's not bad.
I havent had the mindspace to continue working on it since the startup I cofounded has taken off due to covid. Context - We provide medical diagnostic tests B2C in India.
I have been told that Google is no longer doing this. Is my information incorrect?
Sure, you could do a 20% project, but you would still be judged only on what you accomplished in you regular role.
It seems insane that they would not recognize it.
https://en.m.wikipedia.org/wiki/Side_project_time#Google_imp...
> Founders Sergey Brin and Larry Page advised that workers “spend 20% of their time working on what they think will most benefit Google”.
I can’t imagine the founders would encourage that line of thinking and then not reward people who created benefit for Google from it.
I can believe that if you worked your regular role at 80% and did a 20% project that yielded no benefit that you would be judged only on your regular role (which also seems “whelp, that’s fair enough; no sense penalizing someone for trying. We’ll just judge them on what they did accomplish.”)
But the average engineer working on an average side project will not do something like that. Especially not during a quarterly review cycle. So then your accomplishments working 80% are compared to those working 100%.
I never worked with someone who had a 20% project during my 3 years. I did try to start one myself, but gave up after 1 day.
Atlassian; not Google.
Not sure if it's still happening.
> Some of the foundational building blocks of our software world were built by people who knew one another only by mailing list or IRC channel. Software was built, but, perhaps even more importantly, strong connections were made.
With this in mind it seems silly many software companies are stubbornly insisting work-from-office.
Yes. We know.
I can’t speak for anyone else but what improved my mental health was recognising my distraction techniques for what they were, and addressing the root cause of those (e.g drinking in evenings to numb how utterly pointless this existence sometimes can feel; and solving it by learning to do stuff with my hands — in this case carpentry)
I doubt you’ll gleam much wisdom from such an article. Maybe do some meditation, cut down on the booze and find something unrelated to work that makes you happy and just accept that work occasionally sucks for everyone..
Anyway, ymmv