Freelancing is HARD
One of my clients put my contract on pause this month. They don’t have any work for me. Thankfully, I run a very heavy workload specifically so things like this aren’t quite the blow. But that’s not viable for many people (and arguably unhealthy for me).
…but the life of a freelancer is full of challenges and risk.
Sourcing Clients
Arguably the hardest part of being a freelancer (at least, from what I see a lot of people struggle with this step) is finding people to pay you.
I know it is a bit of a dead horse at this point, but networking is really key here. Most of my clients have come to me through my network.
But networking isn't about trying to find a job, or getting people to refer you. It's about adding value. For example, volunteering in the Hacktoberfest community created a connection that led to my role at Deepgram. Moderating Rythm created an opportunity to build their community tooling.
Open source contributions can also be a great way to network. But this is only effective if you commit. Making drive by contributions might seem tempting, but isn't really going to leave a mark. Having consistent, quality contributions to a specific project over a long period of time not only showcases your talent, but gives you important experience working in a team environment.
Losing Clients
The reality is, no matter how hard you work, you’re going to end up parting ways with clients. Maybe the project they had you working on is complete. Maybe they no longer have the funds to pay you. Heck, maybe you just weren’t meeting expectations. Whatever the reason, it does happen.
Unfortunately, at least in the U.S., you don’t have much of a safety net. You aren’t eligible for unemployment benefits, you’ll have a hard time proving an unjust termination… So really, you need to have your own safety net. Whether that’s a significant amount of savings, or even an adjustable workload that can handle the loss (I, for one, tend to do around 80-100 hour weeks so there’s never a shortage of work).
However you choose to handle it, being a freelancer can very much be “feast or famine”, and you’ll want to be prepared for that.
Financial Concerns
Aside from having a solid nest egg to fall back on, there are a few other financial concerns. Taxes are arguably the biggest one. Here in the U.S., you are the employer. So you are required to pay both the employee portion and the employer portion of income tax (“self-employed tax”). And there are penalties if you do not pay it early. Which means you have to keep accurate books of your income and estimated tax liabilities.
But there are also other concerns. It’s rare (perhaps even unheard of) that a company will pay into a pension or 401K for an independent contractor. Health insurance is typically not offered - you’ll need to source and pay for your own. And all of these can add up.
On the plus side, you get to write off business-related expenses! And depending on how you structure your business, you may be eligible for additional perks like a business line of credit.
Running a Business
Being a freelance developer doesn’t mean the 100 hours of work I do is always code. There’s a lot of time doing business-related things. Marketing, so that I stay relevant and fresh in potential clients’ minds. Content creation (like this blog!) to generate passive income as well as providing evidence of my knowledge and expertise.
And, of course, there’s social media. Maintaining an active presence on as many platforms as possible, to ensure clients can see and find me and know how to contact me. None of this is paid, either - heck, sometimes I pay. It’s just part of the investment you make into running your own business.
Isolation
Remote work often seems glamorous. Avoiding a commute, wearing pyjamas all day… But there’s a lot you miss out on when you aren’t in an office environment. I, for example, never really had the same opportunities to connect and socialise with colleagues.
This becomes especially more true when you’re a freelancer. You might be on a team where you’re the only developer. Or you might work directly for a client with zero technical experience. And all of that can leave you feeling somewhat isolated. It’s essential to find other ways to connect with your peers. Such as programming communities on Discord.
There are a significant number of content creators and influencers who will pitch this as the greatest thing ever. And it is pretty bloody nice.
But freelancing is not all sunshine and rainbows. It’s certainly not a path to “easy money”. If you’ve read the challenges I’ve shared, and you’re still interested, that’s great! I wish you the best of luck. And if you’re feeling more comfortable with a traditional W-2 role, that’s great too! All that matters is you make an informed decision that will bring you the best life. 💜
Subscribe to my newsletter
Read articles from Naomi Carrigan directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
Naomi Carrigan
Naomi Carrigan
Passionate technologist dedicated to building inclusive tech communities and empowering individuals to break into the field. With a rich background in community management, software engineering, and developer experience, I strive to create accessible pathways for diverse talent.