Want to Be a Remote Software Developer? — Avoid These Things
Want to Be a Remote Software Developer? — Avoid These Things
Tips for being a successful and productive remote software developer.
Join the DZone community and get the full member experience.Join For Free
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 at 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 worked 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 fewer responsibilities than your peers who are in the office or that you should act any differently.
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 overwork. 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.
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, 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 amazingly 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 five 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 with 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 on your Pull Requests to ensure the other party knows 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.
Opinions expressed by DZone contributors are their own.