My remote work career started with a joke on social media. About two years ago I was following an interesting conversation on Twitter.
Someone shared a medium post about deep learning, my field of expertise, and the CTO of the remote-first company skymind.ai pointed out that this was based on work from one of their engineers.
Not only that, they had hired that engineer to maintain his open source project for them. I jokingly replied that if they ever needed me to work on my side projects, they'd know where to find me.
At the time I was just getting started with a lot of open source work and was intrigued by the idea of doing it full-time. I never thought this joke might lead to anything, but fast forward six months and I had an offer on the table. I then quit my old job and joined the team.
Transitioning into remote work wasn't easy at first; after all, I didn't plan for it. If you search the internet for "remote" in 2019, you get the impression that it must be a religious cult.
I see it as a trade-off. You gain a lot of flexibility, since many aspects of traditional work, like regular office-hours, don't make sense anymore. On the other hand, you become a work-time manager and have to put in place the structure you need to work at your best.
Working remotely is not for everyone, and you shouldn't put it on a pedestal just because it's new.
I think a lot of the advantages of remote work can be implemented on-site as well, but that takes a cultural shift and a new breed of managers. For me, remote work is an excellent choice at the moment, and I can see myself working like this for the next few years.
I'm working as a Deep Learning Engineer, which in my case means building and maintaining open source machine learning software. Most of what I do daily is publicly available on GitHub, which makes it easy for me to share my work.
Also, this way, I get a complete history of how I work and what I worked on automatically, which is worth more than any reference or bullet point on a CV.
Open source programs are an excellent place for remote culture since feedback from users comes in around the clock, and communication is mostly asynchronous. So it's all about getting the job done and not about when you sit at your desk. Also, having a globally distributed team certainly helps with coverage of various time-zones.
The world of artificial intelligence (AI) speaks Python, but many production systems do not. In my work at Skymind, I'm focused on closing this gap by providing tools that work well for both worlds.
The companies' view in that regard resonates with me on a personal level, since I've struggled a lot myself in the early stages of my career in shipping machine learning models to production.
Skymind has a remote-first culture, which in my experience is vastly superior to working remotely for a company which has a headquarters. In the latter case, you always feel left out, but in a remote-first setting, everyone is in the same boat.
Recently I've been working on bringing Google TensorFlow and Keras models to the Java Virtual Machine (JVM), accessing Java classes from Python, training deep learning algorithms on Apache Spark and making it easier to run and deploy your models with Python and Java.
The little time I've got left when not coding I spend giving talks and writing books. My new book teaches readers the method to build a bot that can play the game of Go. As the chapters progress, the bot becomes stronger and stronger.
I think it's very interesting that there are no machine learning prerequisites, but at the end of it, you understand how AlphaGo beat the best human players in the world.
It was a lot of fun writing this book, as it's very interactive, and I had a great co-author. Working in a remote setup certainly helped me to complete it. For instance, scheduling calls with editors in different time-zones are so much easier if you can shift your work hours to accommodate the meeting.
My routine is purposefully on the dull side.
I believe that focus is just the absence of distraction, not a muscle you need to train.
I have two principles that I follow and that have served me quite well. The first principle is to get two chunks of deep work every day, one in the morning, one in the afternoon. If I manage to do so, how I spend the rest of the day doesn't matter.
This way I don't have to stress out about an endless list of habits that usually end up being another stress factor for me. Of course, achieving this is not an easy feat, especially in a remote setting.
Tools can help, but for me, it's important not to cling to any particular routine, but instead be flexible to stay consistent with the principle.
The second principle I follow is to do one important thing and do it well, a personal twist on the Linux philosophy. You could understand this as not doing multitasking, which I do fully agree with, but what I mean by it is another aspect.
If you look at your daily workload there are usually things that you tend to avoid or keep postponing. Those are often the most important tasks.
Being busy and doing a lot of things instead is the easy way out. So what I do each morning is write down a top 3 list of things that really need to get done.
The number one pick is usually by far the most important. If I manage to complete this crucial task, it will be a productive day. I sometimes get push back when talking about this idea, but as a thought experiment imagine that every employee in your company did 200 things a year that bring the business forward.
In a regular week, the first three days I work from a co-working space, and the other two at coffee shops or home.
Starting the week off by working in an office-like environment helps me get into the flow after a weekend. Also, I try to fill these three days with lunch dates and (virtual) coffee breaks.
In a remote setting, it's easy to let the social aspect of your workday slip, especially if you're more of an introvert, but it pays off long term to be consistent.
Without imposing this structure, I tend to slack around too much and talk myself into needing naps or watching talks on youtube. This 3-2 split works pretty well for me and gives me the freedom to push running errands and other activities to the end of the week without losing productivity.
Tools come and go, but there are a few techniques that seem to stick with me.
Meditation is probably the first I should mention, as it has had the most significant impact on my productivity overall. It might be a little unusual to call meditation a tool, but I think of it as one.
I sit in front of a computer with internet access all day, so the distractions are endless. I had a colleague once who had at least 50 browser tabs open at any point in time.
That's a little extreme, but not unheard of, and I tend to do the same. To avoid "tab hell" and other strange modern phenomena, like lurking on social media all day, meditation has an immensely positive effect for me.
Another technique I employ when having a hard time getting started is the Pomodoro technique. I don't have any particular tool for it, as it's so simple: you work for 25 minutes, then take a 5-minute break, rinse and repeat. The breaks are the most important part.
Once I'm in the groove though, the 25-minute schedule becomes a little too restrictive, and I let go of it.
In any case, I try to take a more extended break every two hours if my schedule allows it, and it usually does, since I optimize for an empty calendar.
Really shutting down in the evenings and weekends is even more critical, as well as getting enough good sleep. In sports and increasingly e-sports it's an accepted fact that rest periods are as important as the training itself.
Not doing so might work for a while, but will wear you out and demotivate you sooner or later. For some reason, that knowledge still hasn't made it into businesses, where managers mostly still want you to do the equivalent of sprinting a marathon.
I've mentioned it before, but it's worth repeating: a distraction-free environment is key for me. Working from home makes this part easy. However, in co-working spaces and coffee shops, I wear noise-canceling headphones but don't listen to music.
The way I set up my work, staying on task is not an issue, but sometimes getting on task is. I've told you that I set out to do one really important thing each day, but sometimes it's difficult to get into the right mindset first.
In this case, I usually start doing something that is simple, small and work-related (cleaning my desktop or going through GitHub notifications) or I break down a big task into ridiculously small and almost trivial bits.
The goal is to get started with something that's so easy that it's impossible to evade. It always feels stupid to do this at first, but it also always works: after a while, I get the hang of it and carry on with the actual work.
Another thing that only works in a remote setting is to simply drop it all, call it a day, and pick work up the next day or later that afternoon. That's a preventive maintenance technique.
I've noticed that the days in which nothing seems to work are often the days preceding sickness. Taking a more extended break is simply more productive in this case than missing a whole week.
I rarely do this, but will make sure that the work gets done anyway, so it's really useful. In an office job, people would give you bizarre looks for doing this, although there's no reason to do so.
Read 42 answers from other remote workers
The thing I like most about remote work is flexibility, which is likely what almost everyone will tell you. Although my day is fairly structured due to the needs of my family, the flexibility I have within those boundaries is invaluable.
When we had children, I had to take many vacation days to run errands in my former job. Things like a doctor's appointment in the middle of the day are no issue anymore, which also means my need for actual vacation days has gone down quite a bit since I work remotely.
Nobody at work really cares when exactly I'm online. It's expected of me to do my job, not to sit down from 9 to 5. So that's a massive improvement over previous office work. It's one of the primary reasons I currently can't imagine to go back to a "regular" job anytime soon.
In 2018 we spent more than two months away from home. San Francisco and any location in Europe is still the about same time zone, which is all that matters (if at all).
We've sublet our house with Airbnb most of the time, so traveling has never been that cheap either. Some people tend to be a bit envious of this, so I don't usually talk much about the time we spend abroad.
Hopefully, when remote work becomes more normal, that won't be an issue anymore. Spending time away from home is cool for a while, but being a "digital nomad" is not as glorious as many make it out to be.
Most people don't get to experience what it means to be away for a long time, so they don't know how much traveling they really want to do. I'm grateful to know how much is good for me, and if anything I'd travel less in the next years.
Remote work also means not having to drive into work and not having to commute means more time with your loved ones and for other activities.
Maybe even more interestingly, you can live where you want, not where the job is. That means you don't have to go for the best compromise that's close enough to your day job, so your commute doesn't suck too much.
Lately, I see a lot of movement counteracting the rural flight we see globally.
I'm looking forward to what happens when moving to a big city isn't your only option anymore, and remote work plays a significant role in this.
So far the positive aspects of remote work predominate for me. However, individuals can make the maintenance of flexibility a challenge. For example, if someone else has an actual, physical meeting, however nonsensical it might be, it can be hard to argue that you need to sit down in a cafe and code right now.
At RemoteHabits we're always trying to improve our interviews, what question should we have asked Max Pumperla?
Max is a leading data scientist & engineer specializing in deep learning at the artificial intelligence company Skymind.ai. He is the author of "Deep Learning and the Game of Go," and Coursera instructor for "Applied AI with Deep Learning." Max is an active open source contributor and author of several popular Python packages.
Katerina fell into remote work by accident - she reveals how easy and straightforward it can be to make discipline a daily part of remote work.
Keep your remote working skills sharp—get notified when the next interview goes live!