A benefit of graduating and then entering the workforce right in the midst of COVID-19 is that the transition to working remotely from home was a lot easier. I had been taking my classes at home for my last 1.5 semesters, so I was used to the discipline required to stay motivated and productive in a non-office setting. There are some changes engendered by this pandemic that will persist for many years, however, and I think that some that graduated when I did will rarely, if ever, work in a traditional office, at least for the next ten years or so. For those that are in my position — transitioning from remote learning to remote programming, we are actually in a much better place to succeed and contribute to our companies because we never had to acclimate to being in an office, having in-person meetings, water-cooler conversations, etc. Still, it’s possible for everyone to experience burnout regardless of their coding background and experience, and the isolation of the work-from-home environment can definitely contribute to it. As a precursor to what I do to prevent it, I should say that no matter what your mental health needs to be put above anything else; those that are dealing with these issues need to prioritize them and take the time to relax, decompress, and do whatever it is that you love. My boss is very on top of these things, and wants me working only 30 hours a week, but if yours isn’t please take advantage of the flexibility afforded by working from home and take an hour or two a day and do whatever it is that brings you happiness.
Your work environment
I remember when I moved out of my parents home and into a small apartment with my girlfriend, my setup was just a desk and a laptop. I would normally start the day there, in my extremely uncomfortable desk chair, get sick of it, and migrate over to the couch. Well, if I was sitting on the couch, I might as well turn the TV on for some background noises. And, if it’s Jeopardy, I’ll be learning things too, so I’m still being productive. Working from home brings with it new and absurd ways to justify putting yourself in unproductive environments, and these excuses happen more and more often when you don’t put effort into your work environment. When my girlfriend spilt a glass of white wine on my keyboard, that was the final straw. My typing speed fell down to around 10 WPM, and I was driving myself crazy. Your work environment doesn’t need to be expensive — mine is definitely middle of the pack, with a 27′ monitor, a Ducky keyboard (would recommend, although my LEDs were unnecessary), and a Logitech gaming mouse. For those without the means to do it, whether it be freelancers, hobbyists, or startup developers taking equity in lieu of pay, you can realistically buy yourself all of these things for $200, maybe less. Psychologically, when I invested in my own productivity, it paid its own dividends. Since I spent $500 on this setup, I might as well use it.
Set a timer
When I begin my day I set a timer for two hours, and then I take a half-hour break. I repeat this process until I’m done with my work, or it gets to be the end of the day. This provides structure for me to do my job, similar to an office setting. Staying disciplined and adhering to the schedule is hard, but you’ll find it’s rewarding once you get to the end of the day, and the half hour breaks are long enough that you can go take a walk, take a nap, play a video game, read a book, without questioning whether or not it’s worth the trouble.
Set extracurricular goals for yourself
As fun as programming can be, even developers have things they like more than programming. Everyone has hobbies, but during the pandemic my leisures, social, physical, or otherwise, largely regressed from my everyday life. Setting goals for these leisures helped me stick to them and improve at them, which offers a sense of fulfillment and wholeness different from succeeding at your job, and just as important. For me, I wanted to get back into shape after spending a year and half in complete inertia. Walking sounded like the right thing to start with, so I try to get 10,000 steps every single day. I’m not perfect at it, but achieving that goal is a way for me to hang another hat on the day. I also go to my local gym and play basketball for around 45 minutes in the morning, just to get a good sweat in once a day, and at the end I shoot 25 3 pointers and see how many I can make. You’d be surprised how something as little as making 19 out of 25 3 pointers can invigorate you for the rest of the day. I guess what I’m trying to say is that having a diverse set of interests and activities that you can set goals for will help you in your work as well. Motivation is a holistic concept — finding it anywhere will help you with everything you devote your efforts to.
As a last resort, reset your computer
If you are really feeling burnt out and unmotivated, reset your computer. I know it sounds weird, but there’s something oddly cleansing about starting from scratch. Make sure all of the files and projects you care about are backed up, wipe the hard drive, reinstall the operating system, and experience the satisfaction of seeing nothing on your Desktop, Downloads, Applications, etc. For me, it’s like a got a brand new computer. Now, don’t be doing this every week, because the time required to reinstall some of your applications, like XCode, for example, will make it not worth your time, but if you are really feeling on the edge of burning out, there’s something very calming and relaxing about getting your computer back to where it was before. Recloning all your repositories, logging into all your important accounts, reconfiguring your favorite IDE, are all things that you can just check off your to-do list without thinking much.
These are the things that I do to prevent me from burnout. If anyone else has any other tools they use to stay motivated, please sound off in the comments! This is by no means an exhaustive list, and I’d love to see what everyone else thinks.