Productivity Life Hacks for Software Engineers (and All Knowledge Workers)
Tags: productivity, programming, career, heroku
Published: 2021-01-12 18:23:46

Everyone seems to be strapped for time these days and desperate to get more done in less time. I'm in the same boat.

Enter "life hacks": simple tricks to make your life easier. Or, questionable bits of productivity advice from strangers on the internet with hit-or-miss results.

As gimmicky as productivity life hacks can be, they really can help when the advice is grounded in science. Understanding the psychology of your mind at work allows you to tap into your hidden potential. The trick is not to work more – instead, it's to work more meaningfully.

Below are five ideas to get more out of your work day. So grab your shovels, because it's time to dig in.

---

## 1. Work less, but in deeply focused blocks of time

Study after study has confirmed this simple truth: If you want to get more done, [working longer hours is not the solution](https://hbr.org/2015/08/the-research-is-clear-long-hours-backfire-for-people-and-for-companies). Instead, we need to learn to work more deeply. Cal Newport highlights this concept in his aptly titled book, [Deep Work](https://www.amazon.com/Deep-Work-Focused-Success-Distracted/dp/1455586692). In it, he argues that the ability to think deeply is becoming increasingly difficult to develop and also increasingly valuable.

An example of deep work could be thinking through how to architect a new software feature. Contrast this with shallow work like checking email, which often does not require a lot of mental effort or concentration.

When you are performing deep work, you enter a "flow" state, to use the term coined by Mihaly Csikszentmihalyi in his 1990 book, [Flow](https://www.amazon.com/Flow-Psychology-Experience-Perennial-Classics/dp/0061339202). When someone experiences flow, they will often report being entirely present. Their sense of time is altered. Concentration deepens. There is a perfect balance between their skill level and the difficulty of the current challenge. When we are experiencing flow, we are happy and we are productive.

So, what are the obstacles stopping us from entering flow state every day? For starters, Newport states that you can only handle about one to four hours of deep concentration in a day before you’re drained. So we can't be experiencing flow all day. But we can *and should* be able to experience flow often!

Part of the problem lies in our work schedules. If you're like most knowledge workers, your day is riddled with meetings, many of which probably could have been an email. Meetings themselves aren't inherently bad, but when they're scheduled throughout the day leaving only 30-60 minute blocks of time in between, productivity plummets. It takes time to get into the zone, and 30 minutes simply isn't enough time to accomplish anything meaningful.

![Dilbert comic on useless meetings](https://dev-to-uploads.s3.amazonaws.com/i/ywx9rn0i3ok28x2ztw75.gif)
<figcaption>Dilbert - Scott Adams</figcaption>

Paul Graham's famous essay, [Maker's Schedule, Manager's Schedule](http://www.paulgraham.com/makersschedule.html), outlines the problem beautifully: Managers operate in one-hour blocks, but makers operate in half-day blocks. Meetings don't disrupt managers' schedules, but a meeting scheduled in the middle of a maker's day can blow their whole afternoon.

The solution? Block off time in your schedule for deep work. This is your time to focus and to get work done. Treat it like an actual meeting, and don't let people schedule over it. When you do need to attend meetings, try to schedule them for the beginning or end of your day so as to not create interruptions. You might even consider creating "office hours" for when people can stop by to ask you for help.

And if you initially struggle with working on only one thing for a given period of time, try a [Pomodoro](https://en.wikipedia.org/wiki/Pomodoro_Technique) timer. The Pomodoro Technique helps you chunk work into intervals (typically 25 minutes long) followed by short breaks. Its purpose is to time-box your tasks while encouraging you to focus on only one thing at a time without distractions. You can be low-tech and use a physical kitchen timer for your sessions. Or, try one of the many free Pomodoro timer apps available online. [Here's one I built](https://pomodoro-thawkin3.herokuapp.com/) and hosted on [Heroku](https://www.heroku.com/).

---

## 2. Take care of your body

This shouldn't come as a surprise to anyone, but if you want to be productive at work and have energy for your day, you need to take care of your body. *[I write, as I take another sip of my Mountain Dew...]*

It's all too easy to stay up late binge-watching your favorite TV show, then wake up and eat junk food throughout the day, all while sitting hunched over in your chair as you strain your eyes staring at your monitor. I struggle with many of these problems myself. So, let's look at some of the benefits of maintaining a healthy lifestyle when it comes to work productivity.

Why do we need sleep, anyway? Why shouldn't you routinely stay up late into the night coding? After all, time spent sleeping is time *not* spent getting work done. But, it turns out that [sleep is crucial in retaining what you learn](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3768102/). It's during slow-wave sleep (SWS) and rapid-eye-movement (REM) sleep that the information you've learned is consolidated and stored in long-term memory. We sleep in cycles, so a short amount of sleep or a restless night of sleep means less time spent in these phases. To that effect, it is counterproductive to consistently spend late nights working and studying without giving your brain adequate time to process and save all this new information. [Lack of sleep](https://www.hult.edu/blog/how-sleep-deprivation-affects-work-and-performance/) can also lead to irritability, the inability to focus, and lower productivity, which hurts your work performance as well as your [relationships with your coworkers](https://www.heroku.com/podcasts/codeish/12-mindfulness-at-work).

[Exercise](https://www.heroku.com/podcasts/codeish/special-episode-active-for-good) is also important, not just for your body, but for your mind. Numerous studies show that exercise is linked to reduced stress, higher work performance, and increased creativity. Conversely, [sitting for long periods of time](https://pubmed.ncbi.nlm.nih.gov/25886270/) is correlated with lower work output and poorer mental health. So next time you're feeling an afternoon slump, rather than reach for the caffeine, try taking a short walk.

---

## 3. Take breaks

Working non-stop or long hours doesn't actually make you more productive. In fact, breaks are an essential part of any knowledge worker's day. When you take a break from a difficult problem, your brain enters a [diffuse mode of thinking](https://fs.blog/2019/10/focused-diffuse-thinking/) during which it solves problems in the background. This is why it's so common to have a sudden stroke of insight after a game of ping-pong with a colleague or while showering in the morning. So if you're feeling stuck on a problem, try standing up and walking around for five minutes before coming back to your desk. You may be surprised to find new ideas flowing through your mind to help get you moving in the right direction.

![Hey are you sleeping - comic](https://dev-to-uploads.s3.amazonaws.com/i/67t93okjssi1xpwigybv.jpg)
<figcaption>Reddit r/ProgrammerHumor post</figcaption>

Breaks also allow you to casually interact with your co-workers. Google and other like-minded companies have intentionally designed their offices to facilitate these kinds of encounters by placing [micro-kitchens](https://99u.adobe.com/articles/16408/how-to-build-a-collaborative-office-space-like-pixar-and-google) filled with snacks throughout their offices. Each micro-kitchen contains different treats, which means that you may need to visit a different floor to find your favorite items. This leads engineers to bump into sales reps, or marketing heads to run into customer support technicians. These chance encounters with people outside your normal bubble can lead to fascinating breakthroughs and creative ideas.

---

## 4. Remove distractions from your environment

Have you ever tried to focus on a difficult task in a loud environment filled with distractions? Imagine trying to solve a bug in the middle of a rock concert. Not an ideal work environment, right? And yet, we can often unintentionally create workplace environments for ourselves that are filled with distractions. Do you have email notifications turned on? How about Slack notifications? Does your phone or smartwatch ding or buzz every time you get a text? How many tabs are currently open in your browser? Is your desk cluttered with papers? All of these things create small interruptions that can derail your productivity.

In Adam Alter's book [Irresistible](https://www.amazon.com/Irresistible-Addictive-Technology-Business-Keeping/dp/1594206643), he notes that "by one estimate, it takes up to twenty-five minutes to become re-immersed in an interrupted task. If you open just twenty-five emails a day, evenly spaced across the day, you'll spend literally no time in the zone of maximum productivity. The solution is to disable new email notifications and to check your email account infrequently" (*Irresistible*, pages 109-110).

![Dilbert comic on interruptions at work](https://dev-to-uploads.s3.amazonaws.com/i/59hi7fuu4il40jsgjx0r.png)
<figcaption>Dilbert - Scott Adams</figcaption>

This highlights an incredibly important point: There is a cost to each interruption, and it's much greater than the time the interruption itself takes. A quick 30-second interruption can cause you to lose your train of thought, setting you several minutes back. So consider temporarily disabling Slack messages while you're in the zone or silencing your phone during your most productive hours. These simple practices will allow you to maintain your flow state for much longer periods of time.

And if your coworkers can't take a hint that when your headphones are on you're trying to focus, feel free to send them this:

![Jason Heeris comic on interruptions](https://dev-to-uploads.s3.amazonaws.com/i/336isvkzm4gkvjxxqd64.png)
<figcaption>Why you shouldn't interrupt a programmer</figcaption>

---

## 5. Take time to “sharpen the saw”

Finally, take time to "sharpen the saw." This term, coined by Stephen R. Covey, is the last habit in his book [The 7 Habits of Highly Effective People](https://www.franklincovey.com/the-7-habits/). To quote Dr. Covey: "We must never become too busy sawing to take time to sharpen the saw."

It's easy to fall into the trap of only completing task work during work hours. After all, you're on the clock, and your employer is paying you to be there, so you should be "working," right? However, that type of thinking is short-sighted. It's like trying to cut down a large tree with a saw for hours while never taking time to [sharpen the saw](https://www.heroku.com/podcasts/codeish/39-evolving-alongside-your-tech-stack). The time you spend sharpening the saw is time *not* spent cutting down the tree. But with a sharper saw, the more effective your cuts will be. You'll actually be able to cut the tree down in less time than it would have taken to cut the tree down had you not stopped to sharpen the saw. This life hack applies to lumberjacks and programmers alike!

![No thanks, we're too busy](https://dev-to-uploads.s3.amazonaws.com/i/kf7ap3kh86g41nue2dqv.png)
<figcaption>The danger of choosing not to take time for learning</figcaption>

[Good employers recognize this truth](https://www.instructure.com/bridge/taxonomy/term/56?newhome=bridge&page=2), and they actively encourage employees to spend a few hours each week doing some intentional learning. Don't feel guilty about taking time to read an article or watch a video tutorial during work hours. When you do these things as part of your deliberate skill-sharpening practice, you'll become a far more effective engineer than you would be if you solely focused on task work 100% of the time.

So if you feel like you struggle with writing unit tests, go watch a [Pluralsight](https://www.pluralsight.com/) course for two hours on unit testing with [Jest](https://jestjs.io/) (or whatever testing framework is relevant to your programming language).

If you are trying to learn [React](https://reactjs.org/), go read the docs – the [React docs](https://reactjs.org/docs/getting-started.html) are actually really good!

Don't just slog through things. Be deliberate in what you are trying to learn.

---

## Conclusion

Being more productive isn't about working more – it's about maximizing your results in the time you do have. So if you find your work productivity is lower than you'd like it to be, give these life hacks a shot – after only a few weeks, you may be impressed by how much more productive you've become. And remember, as the old adage goes: work smarter, not harder.