Many developers dream of working remotely. In fact, 10,3% of developers regard the opportunity to work from home as a top priority, according to the 2018 Stack Overflow Developer Survey, which interviewed over 100 000 developers. Luckily, the number of remote workers is on the rise. US market research firm Gallup found an increase in remote workers between 2012 and 2016, from 39 to 43 percent respectively. Being a remote developer is highly desirable, due to flexible working conditions, but what are the best tips for being a remote developer?
Set appropriate boundaries
“One of the big problems remote workers have is not setting boundaries between work and home and mixing everything,” says Ivan Neto, who has worked for eight years as a remote developer. Don’t make your bedroom the office, or the office the bedroom.
Here are two alternatives to creating the psychological state of leaving home and going to work. You could either commute out of the bedroom to another workspace. If you can, make use of an office or a coffee shop. Alternatively, if that’s not possible, try and use a separate section of your place that is only used for work. Keep it free from distractions – e.g. TVs. Also, if you’re working from home, it helps if you get dressed in the morning – this demarcates your work from your personal life.
Choose clients wisely
There are a variety of ways you might work as a remote developer with clients, including:
- One-to-one, where you’re working for a single person.
- A company that has many remote contractors. (Check out the five best companies to work for remotely.)
- A company where you are the only remote worker and everyone else is on-site.
- You’re partly working remotely and partly on-site.
The main problem with all these situations is that because clients “don’t see you, some think you are a robot 24/7 living inside the chat app,” says Neto. Ideally, as time goes by you need to be selective and choose those clients who have experience with remote work. You also need to enforce reasonable boundaries upfront – for example, stipulating that you won’t work at inappropriate times like after 8pm or before 6am, or over weekends.
Of course things go wrong with programming and bugs surface, but you need to be able to say, “It’s too late now – let’s rather continue working on this tomorrow,” or negotiate a fair fee for after-hours work. Naturally, it’s better to discuss all these issues before starting the contract so that neither party is left feeling exploited and angry.
Ensure developer growth
Being a remote developer comes with unique challenges. One such challenge is learning how to deal with feeling stuck. In a formal office environment, it is easy to bounce ideas off of each other when you are in a jam. Informal water cooler discussions often lead to new directions. It is also easier to approach someone, because you can physically get up and walk over to them.
One of the challenges of working remotely is learning remotely 100% of the time. You can’t go to a pause area and discuss a problem with a colleague over a cup of coffee. While remote workers are seldom lonely, they can be alone. They are solely responsible for their own growth as a developer.
Some tips for developer growth for remote developers include:
- Setting aside an hour a day to learn something new.
- Use the online developer support community. For example, Stack Overflow attracts over 50 million developers on a monthly basis. You can ask your programming questions there, and you are almost guaranteed to have an avid user answer your question soon. Reddit Programming is also a good spot to bookmark. Alternatively, look at Experts Exchange, a paid site, and Quora, which is a Q&A site on any topic.
Stock up on the right tools
Ryan Wilcox has thrived as a remote software developer for the past 10 years. He recommends the following tools for the remote worker’s toolbelt:
- Headset: It’s vital to have the right office setup. You could be wearing a headset a lot for conference calls etc., so make sure it’s comfortable.
- Stable Internet connection
- Skype – good for conference calls, instant messaging with clients or chat rooms. You want to let team members or clients know when you’re working and when you’re away from your computer.
- SkypeOut – you can take and make calls from your phone to your Skype contacts. This is great if you’re away from your computer.
- Time Zone Converter – for working with clients or colleagues around the world. Try Time And Date’s World Time Clock or Every Time Zone.
- Bug Tracking Software – a software application that keeps track of bugs in software development projects. Here are 10 free and open source bug tracking software solutions.
Exploit the benefits
Lastly, make sure that you make full use of the benefits of remote work:
- Head to the shops for your chores when there’s no traffic.
- Take that afternoon nap if you’re feeling foggy. You can always schedule the missed time later in the evening or early the next morning.
- Go on that holiday. So what if you have to spend some of the time working – at least you’ll be in a new environment.
- Spend quality time with your family. If you have children, fetch them from school. Take your mom or your dad out for tea.
In closing, we’ve covered five tips for being a remote developer. If you want to learn programming skills to become a remote developer, consider HyperionDev’s online coding bootcamps in Full Stack Web Development, Mobile Development and Software Engineering.