Inspired by this lovely blog post by Colin Ross of Buffer app, I thought I'd document my day as a remote developer.
I work on the central time schedule but live in the mountain time zone so I work one hour (and a bit earlier) than others here. This is great for me because I am a chronic early riser and get the best work done between 6:30 and 11 am everyday. I typically wake up between 5:50 and 6:15 every day, take a quick shower and head down to my home office (in the basement) that I've built. This basement works great for our family because we have a 2 year old in the house and the I can be completely closed off from what is going on upstairs. At this point I'll start the coffee machine, or it will turn on auotmatically if I've rememebered to set it the night before. As that is getting ready I start my laptop.
Before I take a sip of coffee I'll do a quick check of email to see if any conversations or issues came up over night. If they appear urgent I'll work on them right away or email someone else who can look at the issue. Otherwise I will also check Github for any updates on tickets and respond accordingly.
After email I try to get settled on a single task that I know needs some serious thought. Early in the morning like this I am in my zone and I can get a lot of work done and it is often a time when traffic is low in IM so I'm not distracted too much. On a typical day I'll get the vast majority of my productivity out of this 3.5 hour chunk of time.
Around 11 or whenever my zone gets too distracted I'll go for my daily run/walk. I usually go and run around my neighborhood for about 45 minutes and then do some small weight lifting before I take a shower. I'll usually go and make a quick lunch that I'll eat while working or responding to emails. I don't personally find taking a lunch break to relax or watch TV does me much good. I much prefer to take that time to get outside of the house and excercise.
My afternoon's seem to have the bulk of my meetings, so if there are any today I'll sit in those. If not, then I get started trying to get into an afternoon zone block. If I can achieve that, this zone can go far beyond 3 and stretch until amost 5:30 or so before I'll give it a rest. Midway through the afternoon I'll also go grab some tea and try to relax my mind to regain focus. Long drawn out coding sessions, even ones in the zone can push you past reasonable working limits.
I like to spend this last part of the day explicitly not coding. If there are any admin tasks I've been putting of, I do them now. Otherwise I spend this time catching up again on email (I often dont' have mail.app running during the "Zone") and respond to outstanding GitHub issues and discussions. This is also a good time to catch up with co-workers on what they've been working on throughout the day to see if they need help (or if I could use theirs) on a project or task.
At this point its time for dinner and playing with my daughter. I try not to take any work emails or tasks after this time because I know I'll never get these moments back. Occasionally it does happen, but I work to keep work at work.
Hope you enjoyed going through a typical day of a remote developer!