Software development, at its best, is a creative effort. Developers need a certain level of comfort to produce quality work. Tedious tasks, burnout, distractions, and too many meetings can affect productivity even at the best times.
However, health is more fundamental, almost at the lowest level of the hierarchy of needs, which includes mental health. Software developers need their minds to be in good shape to do the work they do, and sometimes when things are not going well, we can see it in our colleague’s code even before the real problem is communicated.
The distributed nature of remote social dynamics makes this more difficult. It can be harder to notice when a colleague is going through a difficult time. When we’re not in the same place, it’s harder to spot who’s late, who’s leaving early, or who just seems a little… flat.
Now that many of us have gotten used to working remotely while others are partially or totally back in the office, it is vital to prioritize communication, especially for those in leadership positions. Especially when it comes to mental health, it’s better to say something early and find out that everything is OK than wait for someone to reach the breaking point.
Seek employees’ autonomy
What workers at home value most is flexibility, especially when the job is more in the manufacturer’s schedule as a software developer.
One set of tricks that can help you do your job better is working out at the gym at 11 a.m. after an early start at the office or putting dinner in the oven before the last meeting of the day, for example. This ability to have a little more “life” and work benefits your well-being, especially when you’re going through more complicated things.
In the book Drive by Daniel Pink, he explains how autonomy, mastery, and purpose are the main drivers of motivation. Motivation, recognition, and trust are key to the success of software development work. Having the power to contribute to a broader goal using your skills is very rewarding, and for startups, where there is generally more freedom to choose and prioritize work, this can be very satisfying for developers.
However, 58% of security and development professionals say they’re currently experiencing burnout, so be careful when setting realistic expectations for your software developers. Those expectations must be carefully established, especially when there are flexible working hours and it is easy to let large projects take over.
Provide ongoing training
Developers are lifelong learners; they must be because the industry changes quickly. They constantly invest in themselves, their knowledge, and their skills.
As an employer, you can also invest in them as individuals. Some companies offer generous training or leisure budgets. You don’t need to allocate a budget, but you could set aside one day a month for your developers to learn something and help yourself on the textbook rack or ask someone for a one-hour tutorial.
Motivate your employees to make their own choices
Rewarding developers with money doesn’t always work as a motivator, but giving them time and trusting them to use it for something other than direct product engineering work can significantly impact them.
Google uses a famous approach of giving 20% of a worker’s time to spend on anything he finds interesting. It even produced some valuable products, but the main point is that developers felt involved and reliable at work. Atlassian is also famous for doing something similar, with all employees working 24 hours on projects of their choice, producing surprising innovations and improvements that would otherwise never have occurred.
Many developers devote much of their time to open-source projects. I’ve had some attempts to explain this to people from other professions, and it turns out that the hacker culture is puzzling.
However, developers identify strongly with this world, and 91% say open source is in its future. Giving developers permission to contribute to open source can make them feel more valued. These open-source communities can be an important part of a developer’s social and support networks and identity, which is critical to their overall well-being.
The modern workplace has much to learn from open source in the way we allow others to participate alongside us in projects. Open-source projects are a reasonable model of how a truly remote workflow can work.
Some of the basic components of our software world were created by people who knew each other only through the mailing list or IRC channel. The software was developed, but perhaps even more importantly, strong connections were established.
Today’s remote software teams, whether remote by choice or circumstance, have much more impressive tools. Collaboration and source code control mechanisms are now more than just a mailing list; we can all be in constant contact via text, audio, or video chat. We can even pair programs remotely using screen sharing or tools like VSCode Live Share.
However, all this connectivity can generate additional stress and notification fatigue. Remember that software developers are different; one person’s work style will not be the same as another. Open-source projects work respectfully with everyone’s time and without much expectation that a person is present at a specific time rather than within an expected time window.
For remote teams doing advanced technology work, scheduling as few meetings as possible that leave long periods to think, and setting expectations about how quickly someone is expected to respond to Slack’s messages, can help provide a quiet working environment.
Promote balance between work and life
Even after three years since we started working from home, checking your developers’ needs for infrastructure replacement is not a bad idea. Hardware, software, and routers are quickly outdated, and even office equipment wears out. So if your compensation includes home office maintenance, be straightforward with your employees. If not, start considering it in your budget.
Take the time to socialize together at work. Hopefully, building shameful corporate teams is a thing of the past, but some simple online games can lighten the mood. For example, if your company offers an EAP (employee assistance program), ensure all your employees know about it and how to access it. It doesn’t hurt to remind managers that programs are there for them, not just those on their teams.
When it comes to mental health, a startup can be a tough place to be. They are fast-paced, with frequent changes and many plates to keep spinning. The best practice is to care for each other, not just that managers take care of the staff who report to them. We can all do our bit by looking out for others and caring for ourselves.
When we burn, there are warning signs before it happens. We need to find ways to make our work sustainable in the long term and something we do along with our healthy lives. It’s easier said than done, but busy companies need to take the time to remind their employees that they’re important.