Full-time Job Vs Freelancing As a Software Developer

Photo credit: Faizur Rehman on Unsplash.com

I recently resigned from a full-time job as a software developer, and have been doing freelancing for the past several months. In this post, I wanted to share some of my thoughts on having a full-time job versus being a freelance software developer.

If you are considering quitting your full-time job to do freelancing, here are a few things to bear in mind.

1. Cashflow

This is the most obvious thing to consider, but it can be easy to overlook.

In my case, I had to live off of my savings for the first month after quitting my full-time job, because I couldn't close any client that month. But after that, I made about five times what I use to earn as a salary in the next month. And subsequently, there are months where I barely make any money. But then, in the following month, I can make enough to cover for the next several months.

So, depending on his/her network, ability to close deals and deliver projects, a freelancer's cash flow is mostly unstable. So be sure to keep this in mind while deciding to quit your full-time job. Especially if you are someone like me who is used to receiving a stable salary each month/week, it takes some time to adjust.

2. Freedom

One of the top-selling points of being a freelancer is freedom. "You have the freedom to choose what to work on and when to work on it." But this is not entirely true. While you have the freedom to turn down a gig and the freedom to decide not to write a single line of code on a given day. You are most probably not going to exercise this freedom as much as you may think. Unless you want to go broke.

I also had this notion that freelancing was supposed to be less stressful. In reality, that is far from the truth.

I think in the past few months, I've worked much harder than I did when I was working a full-time job. Why? Because there seems to be much more at stake;

  • First, you and only you have to make sure your clients are happy in order to keep them coming back. This may be in the form of accepting to work on a weekend or working late at night.

  • And you have a reputation to protect or build. When you give out your word, you have to try as much as possible to deliver. You have to do this in order to build a solid reputation and again keep clients coming back.

These points are still somewhat true in a full-time job setting, but I'd say the stakes are much higher for a freelancer.

Also, freedom means there's no boss or teammate to nudge you back on track when you start slacking off. This brings me to my next point.

3. Discipline

I recently spent several weeks jumping from one thing to another. Things that seemed important at the time but ended up being totally irrelevant. Then I spent some more time just sitting around slacking and just being lazy.

I came back to my senses when one of my clients asked for a refund on a project that I was supposed to deliver weeks prior.

It is easy to get carried away and go on a wild goose chase - or just sit around and do nothing - when you have work to do. This is one of the benefits of having a boss and/or teammates that you may not consider until you find yourself in a situation like this.

In order to do well as a freelancer, you need a high level of discipline. You have to find a way to always motivate yourself to do the work. The kind of motivation you may be getting for free from a boss or teammates.

4. Dealing With People

I love hanging out with people for fun, for learning, or for celebration. But before now, I generally try to avoid dealing with people when it comes to work-related matters. The same is true for most developers I've met.

If you are anything like me, and you are considering doing freelancing full-time, brace yourself because you are about to deal with people like never before. It is very important that you hone your communication skills. Because different people have different ways of communicating, you have to at least try to learn and understand them all. Otherwise, you may find yourself in a situation where you keep going back and forth with clients without making any real progress.

I think I've interacted with more people (on work-related matters) in the past few months than I did in the 3+ years that I had a full-time job. I mean I only had my boss and a couple of teammates to deal with. Now, as a freelancer, I get involved in at least 2 different projects in a given month, each with an average of 5 team members with who you will have to interact at several points during the project.

It was difficult at first but like most things, the more you do it, the more you get the hang of it.

Conclusion

If you are considering whether to quit your job to do freelancing because you think freelancing will give you more freedom and time. Or that freelancing will be less stressful. Please think again. In most cases, you may end up working twice as hard. So if you are not absolutely sure that freelancing is what you want to do, I'd say stay at your job. Or at least do freelancing on the side first. Check out 8 ways to make money as a developer even while holding a full-time job.

That's it for this post. Let me know what your thoughts are in a comment below. ✌🏽