Managing Career Risk as a Remote Developer
When it comes to developers, there’s the regular kind and then there’s us. Managing career risk as a remote developer is an important concern. I’d contend it’s a far greater one than for our in-office counterparts living in a major metropolitan area.
Until that day when remote work becomes the regular kind, we’re going to have to do some extra legwork to mitigate our career risk. Fortunately we have a number of tactics to accomplish this goal. And on the current remote work transformation trajectory, the inherent career risk of being fully remote should only decrease as time goes on.
Assumptions
This post will apply best to remote developers who want to:
- Remain remote, without going back in-office
- Be compensated based on US major metro area rates
- Continue to develop or do technical work
- Have consistent work without long gaps of unemployment
Career Risk
There are three main career tracks for remote developers: FTE(Full-Time Employee), Freelance, and Entrepreneur. While FTE and Freelance will mostly be developing for someone else’s business, Entrepreneurship will involve leveraging your coding ability to create your own product or service.
Each of the three have their own risk and difficulty profiles. We’ll focus on FTE and Freelancing here as it’s likely to be most relevant to the most people.
FTE
The easiest and most common remote arrangement is almost certainly the FTE route. You either start in-office and convert this job to full time remote or get hired as full time remote from the jump.
The risk of working FTE though can be a problem, however. I think it’s helpful to think of yourself as a business. You offer Java development and consulting services for various forms of compensation including money, paid vacation, and other benefits.
As an FTE the business of you has a single client. This client likely pays you a salary for roughly 40 hours of work in a week. If you work more than 40 hours you likely won’t be compensated for it.
The upside of working FTE is you will get paid reliably every two weeks or thereabouts. While your upside is hard-capped at your salary, ignoring bonuses, so too is your compensation downside. You’re not going to get paid less one year because you mostly did support compared to another year where you mostly worked on valuable new features.
The downside of working FTE is you only have a single client. You are entirely reliant on this single client for your livelihood. If your employer has financial troubles, you risk losing your entire client base. So what might be better than relying solely on a single client?
Freelance/Independent
The freelance or independent model can help mitigate the risk of the FTE single client problem. In the ideal world as a freelancer you cultivate a number of relationships with different clients. In doing so you decrease your vulnerability to losing any one of them.
Unfortunately, this is difficult as a Java developer and even more so as a remote Java developer. Particularly as such a large percentage of Java development is done in the enterprise, it’s not easy to find clients in this space. At least not ones who are interested in short term engagements unless you have a very specific niche within the enterprise Java space.
Rather than working for multiple clients at the same time, you’re more likely to find success working serially. For example, working 6 month contracts at different companies will help build up your client list over time.
So while you may only work for one company at a time, if you lose your client, you’ll have a number of others at the ready. This requires much more work on your part to cultivate relationships and keep your sales funnel full. It’s simply not enough to settle in at one client and be lulled into a false sense of security.
The risk certainly feels greater as an independent. However, you’re likely just more attuned to it in this model compared to an FTE, though your risk profiles are not that different. An FTE is likely to feel much more secure than she should compared to you as an independent. Put simply, an independent more accurately estimates her risk compared to an FTE.
Mitigation Strategies
Effectively managing career risk as a remote developer requires mitigation strategies. This is far more important for remote developers than in-office ones. As our job choices are fewer that satisfy our one big non-negotiable, remote only.
Network
Building a strong network is an ideal way to mitigate risk. So what does a strong network mean? It means having connections with people who would actually hire or recommend hiring you.
This is in contrast to the shallow connections we find so common on LinkedIn or that result from one-off networking events. You may have 500+ connections on LinkedIn, but how many of them would actually stake their reputation on recommending you to an employer? If you’re like most people, not too many.
It’s both a blessing and a curse that LinkedIn makes it so easy to connect. The curse is we end up with hundreds of shallow connections that would do us little good if we’re actually in need of a client. If we want LinkedIn to be a good source of leads, then it’s important to cultivate relationships beyond the shallowness of a simple connection.
In short, a LinkedIn connection is merely an introduction. If it’s left that way, then it’s of little value. Given time is our most scarce and valuable resource, it’s likely to be more fruitful to develop a dozen strong relationships than it is to aim for hundreds of shallow ones.
Resume Adjunct
There are numerous ways we can provide potential clients proof of competence. These serve as a resume adjunct that is publicly available which also supports our credibility. Having an easily accessible portfolio of our work is a great selling point during client acquisition.
Github
One of the easiest ways to do this is to maintain our own public Github account. It’s the perfect place to build projects that demonstrate your expertise in a given tech stack. It’s also great for trying out new technologies rather than waiting for a current employer to start using them.
Additionally, by working on side projects on your public Github account, you are separating yourself from the pack. The pack of average in-office developers who don’t worry much about their craft outside of work hours. However, as remote developers, we need to be better than average. Moreover, showing our work is an important step in this process and Github lets us do this for free.
Open Source
The next step up the ladder is contributing to open source projects, both in difficulty and in impact I would argue. It’s one thing to put your own project on Github, but it’s a higher degree of difficulty to collaborate with a distributed team on an open source project.
To be perfectly up front, I’m not speaking from experience here as I’ve not yet contributed to open source. It’s definitely something I’d love to do and hope to do at some point. However, it can be a challenge to find the time between family, working a full-time job, side projects, blogging, and so on.
Attraction Marketing
There are a number of other ways to raise your profile and help with lead generation. Building a strong Stack Overflow ranking is one. Writing your own blog is my another one that I personally enjoy. The rise of podcasting is fully underway and it’s never been easier to start your own. LinkedIn is another good platform to distribute your content.
Ultimately these platforms can help us build credibility in our industry. Additionally, they can help us with lead generation and client acquisition. As the more people we can reach who can benefit from our services, the better insulated we will be against career risk.
Continuous Learning
Finally, any mitigation strategy should include a healthy dose of continuous learning. If we want to be a top performer, we must stay on the cutting edge of Java tech. It can be overwhelming, but it’s something we must do to stay at the top of our field.
I like to use several different platforms and media for continuous learning. The three main categories are video, audio, and written word.
Pluralsight and O’Reilly Safari are my favorites for video content. There are also plenty of other options such as YouTube. Josh Long’s Spring Tips and other videos are always good.
Podcasts are my preferred means of consuming audio content. Some of my favorites can be found here: Best Podcasts for Remote Java Developers. I’d also highly recommend the Pivotal Podcasts.
We have an endless amount of written content on the web. However, some of my mainstays are DZone and InfoQ. I also like the Pivotal Blogs for the vast array of Pivotal products, which are always relevant to our industry. TechCrunch is great for broader industry news too.
Summary
Managing career risk as a remote developer is crucial to our long term survival as non-standard employees or freelancers. Until the broader employment model embraces location independence, it’s vital that we actively work to mitigate our risk.
While both FTE and freelance arrangements can succeed when done remotely, they have different risk and difficulty profiles. FTE is generally easier to find remote only work. However, you are then entirely dependent on a single client. Freelance allows you to defray risk with multiple clients, yet it’s less stable and requires more work with lead generation.
The key to robust career management as a remote developer is having strong risk mitigation strategies in place. Building a strong network is very important. Focus primarily on developing strong relationships with your connections. These are more likely to be fruitful than having many shallow connections.
A strong resume adjunct is another beneficial strategy to employ. Whether via Github, open source, or an attraction marketing medium, it’s valuable to have public work available. This builds your credibility and ultimately makes you easier to hire.
The final piece of the puzzle is continuous learning. We have no choice but to drink from the fire hose so we might as well figure out a way to do it effectively. Pick your favorite media formats whether video, audio, or written content and find ways to work it into your weekly routine.