As software engineers, we're kind of spoiled in many ways. For the most part, we get to enjoy higher than average compensation, pretty good work-life balance, and a slew of interesting things to work on. The technology sector as an industry is a great place to be, and many developers plan to spend most of their working lives in it.
But there are certainly some downfalls to being a software engineer. Though intellectually stimulating, it's certainly a pretty sedentary endeavor. In addition, having access to a constant stream of stimulation can be pretty bad for our brains, as many people have begun to anecdotally discover.
The average software engineer will wake up, go to work, and sit in a chair all day, staring off into the deep edges of the internet or some text editor. They might also be on their phones during both ways of the commute, and then play video games or watch TV long into the night. This pattern can be disastrous to your health over the long term.
Here are some ways to ensure sustainability if you're looking to optimize your mental and physical health, ensure that you remain at your best long into your career.
Disclaimer: I AM NOT A MEDICAL PROFESSIONAL AND THIS ADVICE SHOULD NOT BE MISCONSTRUED AS MEDICAL ADVICE IN ANY WAY. THIS IS PURELY ANECDOTAL BASED ON WHAT'S WORKED FOR ME. PLEASE SEEK A PROFESSIONAL FOR HELP IF NECESSARY.
Bad sitting and working postures can cause back and neck aches to occur. Constant sitting in one position is harmful, but unfortunately this is a necessary evil in our profession.
The soft discs between vertebrae dry over time, and these discs can put pressure on nerves, inflicting great pain. Aside from constant breaks and walking around as much as possible, here are some other things to try.
Deadlifts - many of my friends who are in the business complain about wrist and back problems all the time. None of them regularly do deadlifts. Deadlifts are a classic exercise where you bend over and pick up a weight, using your forearm/wrist and posterior chain muscles. Here's a book with good explanations on deadlift form. Start off light, perhaps once a week, and ensure that you have someone watching your form to ensure you're doing it properly.
Yoga - Yoga helps your muscles relax so you can be more resilient. I highly recommend simply going on Youtube, getting a mat, and following some routines-- your body will thank you. Note that the harder poses take a while to build up to, so be patient!
If you're a knowledge worker, you likely spend hours upon hours scrolling and typing, leaving your hands and wrists in awkward positions. The
Deadlifts - they help here too. It's odd that one exercise could prevent so many issues, but soreness and pain in your wrists and back can often be attributed to lack of strength. The reason is because many gripping/typing/steering motions are highly repetitive, causing weakness and stiffness in your wrists and fingers.
Note: Wrist pain symptoms can vary, but carpal tunnel syndrome, a very common neurological condition, is due to excess pressure in your wrist that causes swelling. Often the underlying issue is a medical condition, but it can be exacerbated via overextension. There is no research indicating that strengthening your wrist helps prevent carpal tunnel syndrome.
Forearm/wrist stretching - Stretching is recommended to increase flexibility in those repetitive motions. I'll do these stretches a few times a day, whenever my forearms/wrists are feeling stiff.
This is very common problem. We stare at screens for most of the day now-- aside from getting glasses, what can we do?
This one is easy to solve-- look into the distance frequently. It helps a lot to be seated near a window. The rule of thumb is: every 20 minutes, stare into the distance for 20 seconds. For me, it's probably more like every 2 hours, but just changing how my eyes are working has helped greatly.
We're now going to move on to some mental health tips. Again, I'm some random guy on the internet, not a medical profession.
As developers, we spend our days thinking up elegant solutions to tough technical problems. But how often are you able to truly stop this thinking when you want it? After work, is your brain still revving its engine-- except now, there's no tough challenge to solve, and you begin to ruminate on unnecessary things? (I wonder what that dude I see once a month in the hallway thought of my shirt.)
This happened far too often when I first became a developer. I realized I had a tedendency to carry "code mode" into situations outside of work, and found myself unable to control my monkey brain.
Mindfulness Meditation has made the biggest difference here by far. You're training your mind to shut off by focusing on the present mode. Your brain cannot concentrate on two things at once (though we certainly try), so when you stay in the
now and enjoy your sensory inputs, your thoughts simply pass through. I highly recommend Why Buddhism is True for a rational argument on this concept.
Again, we as developers have it (for the most part) pretty good. But take one look at forums for developers, and you'll see that many people expressing their dissatisfaction with their careers. Of course, we as humans have every right to not be content with things, but it's not uncommon to see an engineer making low six figures groaning about not making half a million. Or complaining about the free food in the office cafeteria. Or making it to the position of their dreams and then suddenly looking for the next better opportunity.
Again, you have every right to be unhappy, but if you find yourself chasing after "something better", you may be experiencing the "grass is greener" syndrome.
What I've found to work best has been practicing stoicism. You can think of it as weight-lifting for the mind. On a daily basis, you are reminding yourself that bad things can and will happen to you, but things can always be worse. Thinking about how things could be worse will surprisingly help you appreciate what you do have.
In addition to sitting too long in one spot, we as developers are prone to thinking about one thing for too long. This can cause us to become mentally tired, and make it hard to think. Usually sleep and relaxation will resolve it, but brain fog and fatigue can often linger for a few days.
Cardio - I've recommended it here before, but cardio is incredibly beneficial to mental health in a myriad of ways. Whenever brain fog creeps up, a quick 30-45 minute run will get me in the zone again.
Green tea - There's a cacophony of benefits to green tea, but the mix of both stimulating and relaxing chemicals seems to put me in a good place and help me focus.