This article is aimed at helping software developers determine if they are well suited to being a remote software developer.

Working remotely is becoming more and more accepted in the workplace. At this point, many people in the tech industry have probably worked remotely in at least some minor capacity. Maybe you’ve worked remotely a day here or there, or perhaps you even work from home a few days week. Remote work is awesome and can completely transform your life, providing you with more control and freedom over your day. The question is, how do you know if the full time remote dev lifestyle is right for you?

The Issue

In my experience, permanent remote work is a completely different animal than part time remote work. For example, if you work remotely 2 days a week, that means you still have face time with your colleagues around 60% of the time. Perhaps it’s possible that you enjoy working remotely 40% of the time particularly because of that in-office 60%. Maybe you’re work-style depends on the occasional pair programming session or talking face to face with a more senior developer. Or who knows, maybe you really just love that water-cooler talk.

Given this, how can you decide if you are ready to become a true remote developer?

Perhaps you could read some articles about the pros and cons of being a remote dev. Here’s one that I wrote about 5 Reasons Why I Love Being a Remote Software Developer.

Or maybe you could perform some deep introspection and try to determine if your personality and work habits are well suited for extended remote work.

Those methods are great and can certainly be very helpful in helping you make the decision about whether to work remotely.

However, it’s entirely possible that the decision to work remotely means having to leave your current job for a new role. That’s a huge risk to take when you might not be entirely sure that a fully remote role is right for you.

So the real question is, how you can you mitigate that risk.

The answer –> Remote work simulations.

The idea here is that you want to try and simulate the process of working remotely before committing yourself to a remote role.

How can we do this?

Grab some friends or strangers from reddit and get to work on a project

Maybe you and a few friends have an idea for a new startup or maybe you have found some like minded people that just want to build something cool and useful while trying to understand this whole remote work thing.

Regardless of the motivation, this is a great way to gain experience working remotely. The more seriously you take it, the better of a “remote work” simulation it will be. This means that all work on the project, from start to finish/maintenance mode needs to be remote. This should help you understand the in and outs of remote work, whether it fits your with work style, and maybe a little bit about how it affects you mentally.

A key point is to incorporate the types of standards you have in a professional environment. For example:

Version control

USE IT! End of story. For any project that’s about more than just playing around/testing some new tech, you should be using version control, preferably git. Do things the right way.

Code Review

Use some form of code reviews/pull requests.

Project Management

Using a project management solution like trello or asana is great. Not to mention, being organized should make things easier and more efficient. Create milestones, write up issue cards, and maybe even do standups.

Create a Slack channel

Communication is probably the most pronounced difference between working in an office and working remotely. Most discussion happens through slack or an equivalent messaging platform. It is definitely important to get used to this.

Looking at all of the above, you’ll notice that most of these things involve asynchronous communication. This can be even more true when you have developers from different zones. In general, there’s a lot less, or sometimes virtually 0 direct communication. It’s a big shift and will definitely affect the way you work.

By doing this, you should have a much better sense of whether living the remote lifestyle is the right choice for you.

I do realize this isn’t always achievable. Even if you have a lot of friends or can find some people online, it’s pretty hard to get people that are motivated and prepared to seriously develop an app outside of work/school over an extended period of time.

One alternatives is becoming a maintainer/regular contributor to an open source project. Or, if you’re current job doesn’t have a clause prohibiting moonlighting, you could try searching for an hourly freelancing role.

Hopefully this article helped provide you some ideas to help see if remote work is right for you. Please feel free to share your thoughts and comments about this article and anything about remote work in general.