There are millions of freelance software developers around the world — just as like there are millions of software developers who are happy being employed. But according to those who have freelanced before — and either quit or are still freelancing: Is freelance software development worth it?
The simple answer is, well, it depends. As one person put it:
It’s not for everyone. Some people like the security and community they have with a permanent role. However, if your desire is to learn and progress, then the best and fastest way is as a contractor/freelancer. (Tahir Khalid)
So unfortunately, there’s no perfect answer. Why? Well, because it ultimately depends on you. Or to be more accurate, it depends on what kind of person you are. In fact, you can see from the quote above that freelance programming has some drawbacks (lack of security and community) but definitely some benefits (learning and making progress) too.
Of course, you won’t know if you don’t try. But to help you make a decision, we’ve put together all the pros and cons that you can use when you’re considering to build a career as a freelance software developer.
It’s all about the money. Or is it?
Many people claim the one reason for working as a freelance programmer is the money. To a certain extent, that is (or can be) true. Hourly and per-project rates tend to be higher for freelancers than for full-time employees, for a range of reasons.
Having been a freelance software developer for 20 years now, I can say yes, I definitely average more money than I could as an employee. I have had a couple of weak/mediocre years but never a really terrible one. (Kevin McKenna)
But though freelance programming can pay well, it’s not all fun and games. As a full-time employee, you can generally look forward to steady work and pay.
Freelancers, however, face much greater uncertainty, whether that’s wondering where to find their next contract, volatility in pay rates, or struggling through times of economic uncertainty (consider freelancing in a financial crisis!).
But money isn’t the only consideration when thinking about going freelance. Consider the benefits of full-time employment that you lose as a freelancer. These typically include things like:
- Paid time off and holidays
- Work sabbaticals
- Sick pay
- Paid education/training
- Company-supplied tools like computers and software
- Healthcare/medical insurance (a big consideration in the USA)
- Other employee perks like conferences, travel, gyms, and office catering
At Lancebase we like to say: Half the work you do as a freelancer is working on your business instead of in.
In other words, the most important thing to remember as a freelancer is that you are a business. And no business survives if it can’t promote itself effectively to win clients, bring work through the door, and get paid for that work. There’s a number of steps you should take when starting as a freelance software dev.
That means you can’t depend just on your programming skills if you go freelance. You’ll need complementary skills/resources to help you find your first client (and second, and third…), sell yourself to clients, negotiate contracts, and get paid.
Some of this can be done on your behalf by an agent or online platforms that operate as intermediaries, putting clients and contractors together. However, part of this marketing effort involves building your brand and you’ll need to do this yourself.
Many freelancers promote themselves through websites and on platforms like social media, LinkedIn, Stack Overflow, Reddit, and GitHub. When you find prospective clients, they’ll often look in these places to see evidence of your programming skills, industry engagement, and subject expertise.
This, then, raises a big question: Are you comfortable with promoting yourself online?
And is it even a good idea for you? Depending on your personality, worries about data security, or the work you do (maybe you work in a sensitive area like military/defence, intelligence, or policing), you might want to keep your personal information out of the public domain.
So building your brand as a freelance software developer could be challenging if you don’t want to ‘put yourself out there’ on social networks and forums. It’s not impossible — you can build your professional network offline through face-to-face meetings, conferences, colleagues, etc., — but it’s a key consideration if you’re thinking of going freelance.
Remember how we looked at the perks full-time employees enjoy? Being a freelancer means you have to bear the cost of personal and professional development. Not only is an employer not paying for it, but the time you spend on personal development is time you’re not working.
As a freelance programmer, you miss out on the resources provided by the company you would work for as an employee. There’s generally no personal development platform, no trainings or other free courses or exams you can take to level up your skills.
You do have a manager of course, but that manager will not automatically help you to become better at your job. Rather, you have to do that yourself. You have to ask for feedback yourself, find the best ways to develop your skills yourself, and of course pay for any trainings or certifications yourself.
As you can see, these are just some of the ‘hidden’ ways that may make freelance work less attractive than it at first may appear. And when it comes to money, you need to deduct the costs for things like exams, trainings, finding clients, computers/software, brand building, medical insurance, and time off to determine your actual income.
But for the right kind of person, the net gains tend to be worth it. However, if you disregard money, there’s another big area where some programmers find freelance work to be a challenge.
It can be a lonely road…
Saying good-bye to the hassles of a 9-5 job might sound like a dream come true. No more daily commutes and fewer stuffy meetings. But a full-time office job does provide the benefit of being able to interact with and enjoy the company of others.
The life of a freelance coder can be a lonely one. As a freelancer, a part of your life — looking for clients, proposing for projects, building your brand — will be spent alone. And that kind of solitude isn’t for everybody.
On the other hand, some people love to be left alone to get on with their work and life. Many programmers find it a welcome relief not having to commute, interact in meetings or deal with the distractions of a busy office every single day. In particular, software development can be a good fit for people with ADHD or ASD, and if you’re neurodivergent, you probably love being left alone.
We’re not saying that all your hours will be spent alone — after all, you still need to do work for someone, and you may become part of your clients’ team. However, you should note that it usually is more solitary to work as a freelance developer, and it’s not for everyone. So you need to bear this factor in mind when considering if freelance programming is a good fit for you.
Or it can be a great challenge!
It’s not all bad or scary news. In this article, we’ve tried to present the key areas you want to think about when wondering if you should work as freelance coder.
Everybody is different, so some people will find it difficult to deal with things like selling themselves, networking or working alone.
But others love the challenge presented by going freelance.
If you find you get bored and your work suffers if you get too comfortable at work or if you’re always doing the same thing, you might find that freelancing is the perfect way to maintain your interest and provide you with exciting new challenges.
That’s not always the case though. Some freelancers actually end up going back to full-time employment because they found their freelance work boring. Take this Reddit comment for instance:
Now I have a full-time job at a startup where I’m the lead front-end developer. I moved from boring, repetitive tasks to challenging problems on a daily basis.
It should be apparent that everyone’s experience of freelancing is different. Certain aspects are going to be the same (finding clients, managing yourself, admin, business costs) but other areas of freelance programming really depend on you, the work you do, and how you build your career.
So, is freelance software development for you?
Let’s face it: you came here to find out if freelance software development is worth it. We wish we could provide a simple yes or no answer but as you can see, there are many things to consider, and the answer depends on you.
Only YOU can decide if the challenges and attractions of freelance software development make it a good fit. The one thing we hope we’ve made clear is that it’s not all about the money. Even if the money can be great, you’ll have to deduct costs from what clients pay you. You’ll also have to deal with taxes.
You’ll also need to maintain good self-discipline, manage the normal admin work any business requires, and keep improving your ability to find and win clients. Consider the experiences of a senior freelancer:
It requires a kind of discipline you won’t find very often in organized workplaces, like offices. You have to manage the time, resources and priorities yourself. I took me a couple of years to shift from being an employee in someone’s company to become a true freelancer who feels that he controls what he’s doing. (Michał Sałaban)
On the other hand, freelance work provides a lot more flexibility. You can decide when and where you want to work. It’s much easier to pursue projects and technologies that interest you, and fresh pastures might prove more lucrative. You could even find that you love dealing with the other areas of business that come with working freelance, from setting your hourly rate to getting your first freelance development job.
Making that decision
With that being said, we’ve outlined the key areas to consider if you’re wondering if the freelance programming world is for you.
You might not have thought about some of these points before. You might be surprised to realise that building your brand and finding clients is such a big part of the job when you’re a freelance coder. For sure, often it’s not simply the case of jumping into freelance development and “stacking cheddar”.
We hope that we’ve helped you gain a better understanding of what’s involved in going freelance. With both this article and some more research, you should be in a strong position to decide if freelance programming is for you.