Healthy Software Engineer Guide
As we all know, Software is eating the world. That means that more and more people decide to work as software engineer, QA engineer or product owner. The diversity regarding the peoples personalities’, skill-sets’, skin-colors’, sexual orientations’ and genders’ increased dramatically. The widespread stereotype of the overweight software engineer with glasses, pale skin and no social skills is quickly becoming a thing of the past.
As cloud computing became ubiquitous, traditional software development processes had to yield to a new way of developing and operating software, called DevOps. Although this change in paradigm is generally beneficial, they also lead to increased stress levels as software must be able to run reliably 24x7. Simple eCommerce web-shops became as critical to operate as nuclear reactors.
This increase in software engineer’s cortisol levels led to a paradigm shift in their lifestyle. Many people working in the tech industry aren’t nerds who are obsessed with code, but they are simply smart people, using their skills to enrich their lives well outside their professional domain. That includes taking care of your body as much as you take care of your mind.
This is not just about special chairs to support back problems, it starts with a work ethic which uses automation, smart solutions and to do more with less. It is about using your body as tool to grow professionally, hence you have to give it the support it needs to make you stay focussed and mentally clear for many consecutive hours.
To get to the stage where your work output becomes smart, you need to sleep smart, you need to eat smart, you need to meditate for improved focus, you need to exercise, and you need to set aside time for social life and fresh air. You need to have fun at work and in your life as a whole. Going the extra mile in a smart and efficient way becomes much easier when your body is healthy and balanced.
The following bullet point list are my personal pillars for building a remarkable career as a software engineer or any related position in the tech sector. You might disagree with one or the other item, but consider it a blueprint to build your own principles on how to grow professionally.
Don’t stay awake to binge-watch a whole series or the latest episode of
Your brain works on different types of nutritional elements, such as vitamins, proteins and carbohydrates.
It consumes over 20% of your energy for a body mass of only 2% of your whole body.
Consuming vegetable rich food, but also meat, fish, nuts and whole-grain carbs will help your brain to function properly.
It doesn’t mean that you can’t eat sugary or otherwise unhealthy food, as long as it stays the exception not the rule.
So yes, you can have a delicious Burrito once a while.
Try to stick to the golden rule - if you see commercials for it, avoid it.
Regarding your daily vitamin requirements, it’s best to check with your doctor for any deficiencies first before taking supplements.
This article gives a good primer on brain food and a healthy diet: https://healthybrains.org/pillar-nutrition/. (TLDR; Eat like the Italians do).
The gist of it is to eat whatever makes you feel productive, healthy and doesn’t lower your energy levels.
You are sitting a lot, quite a lot. Public media considers sitting as severe to your health as smoking. As I wouldn’t go that far (according to more serious research papers serious research papers, widespread conclusion stays that sitting too much without exercise will do you harm in the long run. So don’t just commute from your office desk to the couch. Instead, set aside at least 30 minutes of time during the day for walking, running, gym, yoga, Karate or whatever activity you prefer. You don’t need to become an athlete, but increasing your fitness level also increases your energy levels, which means you can think faster, have more focus and more energy to push through the challenges of your work day. In addition, it has the benefit of balancing out the negative effects of sitting.
Ask for the best chair your employer can get you. If you are working from home, organize one yourself and don’t be thrifty as it highly affects the health of your back muscles, tendons, and even internal organs. It is less about which chair you choose, but given the discovery made above (i.e. you are sitting a lot), select one which you find comfortable sitting in for many hours. The chair is adjustable to your body weight, height and arms lengths to have the correct distances to monitor, keyboard and the desk. This video gives a good introduction on where to place your desk items in relation to your chair.
Get the best tools money can buy. If you are 50% faster with a mechanical keyboard (which I am), then get yourself one, but not without considering the options first. Also consider one or more bigger screens to get more overview and insight on what are you working on and what is going on in your codebase. Get a powerful laptop, learn your OS inside out, learn to optimize it and run it. Once you have a software setup to your convenience, make a backup of your software setup in order to be able to quickly restore it on a different laptop should yours fail. Just like with infrastructure which runs services, you don’t want to risk a lengthy downtime as you have to spend time to restore it manually.
- Alcohol and Caffeine
It is fine to drink alcohol, but if you notice any side effects, such as decreased energy levels during the day or sleeping problems, avoid it. Caffeine is a stimulant and should be used wisely. Don’t have 5 coffees just because you feel more productive, while it is later cannibalizing on your precious sleep. Studies show that any caffeine intake after 2 pm can affect your circadian rhythm and natural sleep (see bullet point ‘Sleep’).
- NO Drugs
I know that micro-dosing is a thing, but it’s a battle with your dopamine levels many people have lost.
Regular meditation allows you to stay more focused and mindful on what is going on in the present moment. It’s a practice essential for supporting mission-critical software which is supposed to run 24x7. When an incident occurs, you want to be fully alert and in the present moment, able to analyze and address the problem at hand. Meditation can make the difference between reacting impulsively during a system outage and calmly responding to the problem and being the hero of the day.
Reading is to the mind what exercise is to your body. A study published in 2015 shows that children who grew up surrounded by books stay in the education system substantially longer.
In turn, staying a year longer in the education system results in an increase of lifetime earnings by 9%.
The information density in books is much higher compared to videos or audio content. So if you want to ingest as much information as possible about a specific topic, reading is most efficient. I suggest getting a Kindle (Amazon de | Amazon en ) as it allows you to carry thousands of books with you at all times.
For recommendations on inspiring books to read, see my Bookshelf.
You can’t really move forward in your career as software engineer when you cannot communicate efficiently and clearly.
That is, be precise, don’t leave out information and learn to articulate your thoughts on a problem so that others can join in and support you.
Software engineering isn’t purely writing code but finding solutions to problems.
If are not able to convey these problems and your solutions in both written and spoken way, you won’t be able to collaborate with peers effectively.
Another important fact related to communication is to let your team, your manager, your product manager,… know what they can expect and what you are up against. Over-communication is usually better, especially in remote settings.
- Lunch break
Eating lunch at your desk keeps you in your problem-solving mode, and you don’t really step back from your problems but keep pondering about them. My experience is that many problems are solved after a break, as you are able to let your subconscious mind deal with it.
Learn to save money and don’t overspend. Consumption keeps you side-tracked on what actually matters in life and usually leaves you less time to improve yourself. Focus on building up wealth. Don’t look at money a means to consume, but a means to create and extend your freedom in life.
It is quite possible to regularly encounter people who will drain your positive energy and attitude towards life. A strategy is to deal with these people from a perspective of positive attitude. If the problem persists though, you might have to consider cutting these people out of your life completely, especially when they try to sabotage your efforts to improve yourself.
Keep in mind that end up being the average of the 5 people you spend most of your time with, so anybody in your inner circle with habits contradicting yours might lead to worse results regarding your goals. For example, if you surround yourself with people who smoke, you run the risk of smoking as well. They substantially influence how your life is led, making you prone to jeopardizing your health and your success.