When I started working remotely a few years ago, I had to reinvent my routine. While the remote life offers plenty of benefits, such as more free time, no commute, and flexible working hours, not everything is perfect.

Particularly in the beginning, remote work was hard for me. Initially, I was unfocused, working long hours without being as productive as I could be. I started one task, then switched to another one, then switched to another one still. I worked ten hours on tasks I could have done in four.

But eventually, I found a process where I overcame those initial struggles. That's what this article is about: how I stay productive and focused as a remote software developer.

Disclaimer: everyone's process is different. What works for me might not work for you. The only way to find out what works for you is through trial and error.

How Do I Work?

To better organize my working hours, I first had to understand the most important variable in the remote work algorithm: myself. I realized that remote work wasn't just about my job, it was also about figuring out how my mind and body could work together efficiently. That meant answering these questions:

  • When should I wake up?
  • When and how much should I work?
  • When should I eat?
  • When and how much should I exercise?
  • When and how much should I sleep?

I took my time finding the right answers. I wanted to create a working routine where I could deliver my work and still have enough free time to enjoy my life.

I tried out many different arrangements. For example, I noticed that I'm not a morning person. I prefer to work in the afternoon and the evening. That's why I save challenging tasks for later and reserve my mornings for exercise, grocery shopping, or admin.

This only works because my working hours are flexible and I don't have morning meetings. If I did have morning meetings, I would have had to find a different arrangement.

Here's another example: I have five meals spread throughout the day. Each meal is a long break in between my Pomodoro cycles (which we'll talk about in a bit). Because I go to sleep after 11 PM, I try to get everything done by about 10 PM, so I don't get restless when I go to bed. Note that this doesn't always work and I sometimes find myself on my phone at midnight 😀

I Love a Todo List

I'm a big fan of the classic todo list, which has accompanied humanity since we could scribble things down on sheets of papyrus and which has now evolved to find itself inside our smartphone or computer. I use Trello for my todo list and have a board with a list for every day of the week as well as a board for all the tasks I have to do in the future.

A Trello board
My weekly Trello board (I'm from Brazil, so it's in Portuguese)

For every task I complete, I add a green OK label. This is how I track my day's progress. During the weekend, I archive my lists and use a script to generate next week's days. Once those lists are created, I pull tasks from my future task board into what I need to do for next week. This is how I know what's scheduled for next week, which in turn helps me organize my routine.

What Does My Workday Look Like?

My weekly todo list splits each day into cycles, which I call Focuses. It doesn't get specific. I make a more specific list for what I need to do during the workday. Because I work in sprints or iterations, I have a good idea of what I need to do during each Focus. I also make sure my work is divided into tasks that can be done in a relatively short period of time (e.g. two hours).

In terms of working hours, I read that working eight focused hours or more a day can quickly lead to burnout. Six hours a day works best for me, i.e. six Focuses. One Focus is like a Pomodoro cycle except that it's one hour long with ten minutes of rest in between. That works well for me, although sometimes I work two or three cycles without a break.

The cycle of six Focuses a day works great because it's flexible. I can do two cycles before lunch and four after lunch. Or six cycles after lunch. Or three cycles after lunch and three at night. Lots of possibilities! I try to fit my tasks neatly into one or a few Focuses.

If I finish sooner than expected, I use the remaining time to do something else. If I don't finish in the allotted time, I take a little bit of time from the next Focus. If a task is altogether harder than I thought, I squeeze in an extra Focus. If I don't finish in time that day, I note down where I stopped and start where I left off the next day.

Everything I do fits into a Focus: developing, planning, meetings, discussions, etc. The only things that I always forget to put in are digging through Slack and reading other people's conversations, but I don't mind 😀

How Do You Keep Track of It All?

If I can delegate something to a third party, I will! I use Toggl Track to measure how much I work. I have a label for each Focus (1, 2, 3, 4, 5, 6, and extra) and I create Toggl projects for things like my job or personal projects.

An image of a Toggl setup
Toggl works great for tracking time

In summary, every day I try to complete six Focuses. Then I'm free to do whatever I want. These days, I manage to stay focused quite well, because there's a defined beginning and an ending, and because I know what I need to do during each Focus.

This is what works for me. I hope it has given you some ideas as to how you could organize your workday. I'm sure things will change as time goes by, but I'm always willing to change something if it no longer works for me. What's most important is that you experiment and figure out what's right for you.