Tommy is a remote software engineer turned founder. His previous company was backed by 500Startups, a well-known Silicon Valley tech accelerator. He’s currently working on an educational platform for people to learn about cryptocurrencies and how to trade them via a crypto trading simulation game called Altcoin Fantasy.
In my opinion, being a software developer is the best job in the world. One of the reasons is the flexibility — all you need is a laptop and you can work and live anywhere in the world. I’ve had the pleasure of working from the back of an RV with a beautiful mountain backdrop in Utah to pushing code while on a white sand beach in Thailand, overlooking crystal clear turquoise waters. I’ve worked for many years as a remote developer and have also had the opportunity to work with other remote developers in that time. While many people talk about the things you need to do as a remote developer, no one talks about the things you shouldn’t do. Today, I’ll share my top 5 things you shouldn’t do if you plan on being a successful remote software developer.
1. Don’t treat remote work any differently than if you were going into an office
A lot of people confuse the concept of working remotely with having unlimited freedom to do whatever they want. This is not the case at all. The developers I know who have been able to successfully transition to being fully remote always have work at the back of their minds. Though they may not be physically in the office, they are still very committed to their jobs and the success of the company. Just because you’re remote doesn’t mean you have less responsibilities than your peers who are in the office or that you should act any differently.
A good example of this is meetings. Oftentimes, working remote means you’re on a different timezone and there are certain times where you may have to take meetings while you’re on the go, but the best remote workers I know schedule their meetings in a quiet, office friendly environment to show they are serious about the meeting.
The most often cited benefit to working remotely is being able to roll out of bed and work in your pajamas. This detracts away from adopting a professional mindset. To structure your work day to feel more like you’re going into the office, take a walk around the block of your place to mimic “commuting” to work every morning and dress up in office attire to simulate working in an office environment.
I personally believe that being able to work remote is a privilege, not a right. Therefore, you need to constantly make sure you are earning the privilege by working just as hard, if not harder, than if you were working in the office.
2. Don’t do just the bare minimum
It’s easy to be distracted by a new surrounding and therefore be inclined to prioritize leisure over work. The best remote developers I know are cognizant of this danger and ensure that they don’t let it affect their jobs. To show you’re engaged don’t just do what’s minimally required for the job.
Devote some spare time to help out the company with any side projects and/or any processes that can be streamlined. Are the tests on the build server failing intermittently? Devote some time after work to investigate and fix it. Learned a new framework while working on a feature at work? Take some extra time to prepare some slides and volunteer to give a lunch and learn to the team. Or perhaps you can leverage your situation to help out the team. If you are on a different timezone than the rest of the team, you can offer to be on standby to support any production issues.
The great remote developers are curious problem solvers and they always looking for ways to improve things.The point here is to show the rest of the team that you are engaged and not just a warm body on the team. To earn the trust and respect of the team, the best remote devs take on more than just what is required to show the rest of the team that they care very much about their role. This also prevents you from being forgotten or passed over, which can sometimes be a danger of working remotely.
3. Avoid staying stagnant — Don’t stop learning!
Being remote has its benefits. However, when it comes to knowledge sharing, a lot of that happens during face to face interactions and collaborations. Being remote hinders this. Though there are tools to help with pair programming, I find that information sharing and transfer is still best shared with in person. With this in mind, it’s easy to see that remote developers have a disadvantage when it comes to keeping up to date with the latest and greatest developments and technologies. In order to be on top of things when it comes to new technologies, great remote workers spend their off time polishing their skills and honing their craft. Whether it’s spending a few weekends a month learning about new concepts such as machine learning or cryptocurrencies, going to hackathons/meetups and learning new tools and skills, or spending some time writing technical blog articles for Hackernoon =), do not stay stagnant.
You might be tempted to explore the world in front of you, but the best remote developers know that in order to continue to enjoy their freedom, their skills need to be in demand in order for them to continue to be digital nomads, so do not stay stagnant!
4. Avoid losing track of time
Let’s face it — procrastination is something that we all deal with. As a remote developer, you have a ton of freedom to do whatever you want. However, this will be one of the biggest double edged swords you wield as a remote worker. Left unchecked, this will erode productivity and undermine the trust with your co-workers and superior.
A great remote developer is frank with their assessment of their productivity and employs strategies to cope with any loss of time due to unproductive things. One strategy that I employ that works amazing well is the Pomodoro technique. The Pomodoro Technique is a time management method developed by Francesco Cirillo in the late 1980s. The technique uses a timer to break down work into intervals, usually 25 minutes in length, separated by short breaks of 5 minutes. Throughout this 25 minute of uninterrupted work, if there is anything that pops out in your head, instead of acting on it and becoming distracted from your main focus, you jot it down on a notebook and come back to it after the pomodoro is over. This way, you are training your brain to stay focused.
5. Don’t under communicate
Teamwork is all about communication, and when you’re a remote worker, this is especially important because you may be disadvantaged when it comes to team communication. However, the great remote software developers I know realize this and try to overcompensate by communicating frequently and consistently. A general rule of thumb here is to err on the side of more communication rather than less. Here are a few specific examples that great remote developers use to ensure they are always communicating to the team:
- Come to meetings on time (or even a couple minutes early) and don’t have distractions in the background. Always show your webcam and share your screen to show full transparency.
- Try to participate in remote code reviews. If that’s not possible, at least comment in your Pull Requests to ensure the other party know your motivation when it comes to design decisions and/or things to look out for.
- Let your team know if you will be out of the office via Slack (or whatever your team communication app is) — including when you’re on your lunch break or running errands.
Remember that communication is a key cornerstone of building trust in a team, so a good remote worker always puts this in the back of his/her mind. A great remote worker is a great self manager — remote workers have tasks and goals, but they rarely have their superior prioritizing their workload for the week. They need to manage their own work and keep track of their own time. Got any other things to avoid? Comment below!