Becoming a self-employed programmer? A Simple Heuristic
Should you become your own boss, being self-employed? This is a valid question regarding the huge opportunities that are awaiting you.
Or should you proceed to work for a company? Or better start out working for a company and build your own self-employed business on the side?
Those are great questions — and the answer depends largely on one factor.
In this article, I’ll give you a simple heuristic which you can use as a decision framework.
Of course, this question is multi-dimensional in practice. But I found the heuristic you are about to learn very useful as a decision framework to answer this question for myself.
Here’s my heuristic:
Are you already (or extremely committed to becoming) an above-average programmer?
Think about salaries in a company. They often follow the Pareto principle: 20% of the people earn 80% of the salaries. This also holds for productivity: approximately 20% of the people create 80% of the stuff in companies.
The concrete parameters do not have to be 80/20, they could be 70/30, or even 95/5. In the programming space, it’s often more extreme (like 95/5). For example, Bill Gates famously said:
“A great lathe operator commands several times the wage of an average lathe operator, but a great writer of software code is worth 10,000 times the price of an average software writer.”Bill Gates
In the programming space, this is really meaningful. Some people are much more productive than other people. And if you are not such a person who is more productive than the average programmer, it is likely that you will suffer as a self-employed programmer.
But if you are at least above average (it would be better if you are among the top 10-20% of the coders), then you should consider becoming a full-time self-employed coder.
Note that this recommendation addresses only the first part of the question: should you become a full-time coder? So if you are committed to joining the top 20% of the coder, then you should become a full-time coder because then you will be able to collect much more profits than you would when working for a company.
If you don’t become self-employed as a top 20% coder, the lion share of your profits will be collected by the company for which you work. If you are 10,000 times more productive than the average coder, you won’t earn 10,000 times that much as an employee. But if you are self-employed, you have a shot.
But being a self-employed coder is not all about your coding productivity. This is a very important factor to consider. For example, it’s also about marketing, client acquisition, effective communication with your clients (this can be even more important than being a great coder), and your positioning in the marketplace.
And these crucial skills can only be learned if you are working as a self-employed coder.
If you are not working self-employed (e.g. you are an employee working for a big company), you’ll never feel confident taking the risk of becoming self-employed. And you’ll never acquire these critical skills.
The only way of acquiring these skills is to actually become self-employed, increase your hourly rate over time, and work on your business skills and coding skills at the same time.
Read coding books, read business books, books about selling, copywriting, and so on. Combining these skills will bring you much larger profits in the long term than working as an employee at a company.
Therefore, before you become full-time self-employed, just earn money for your company and do some Python freelancing on the side. And if you feel that you are skilled enough to earn money as a Python freelancer, you can already fall back on your great experience. Also, you’ll be very confident in the marketplace because you’ll know that you have already provided value for your clients.
If what you earn is proportional to your invested time and above, say, $100 per hour, you should start quickly becoming self-employed 100%. Don’t lose any more time in this case because you already belong to the top self-employed coders.
In summary, this is the best advice that I can give: start for one or two years freelancing on the side and then quickly take the big leap with confidence and a nice cushion.
If you are committed to becoming a top 20% coder and top 20% business person (read books!), then there is no doubt that you can (and should) actually become self-employed as a freelancer.
One question left is: even if you are committed to becoming a top coder and business person. Can you do it?
My simple answer is: yes, of course!
It’s very easy, too. Just read business books and programming books. Do this every day for an hour and you’ll be virtually guaranteed to join the top 20% of coders and business persons.
Why? Because the average person will read maybe 3-4 books a year (mostly fiction books). So if you are reading non-fiction books in your space (programming books and business books), then there’s no question that you’ll become an above average freelancer. (Of course, you also have practical experience working part-time as a Python freelancer. This is critical, too.)
Also, courses are very interesting — for some people doing courses is actually more efficient than reading books, because of the multimodality and interactivity of the content. Of course, I also try to make my books interactive (e.g. my “Coffee Break Python” book) but a course can provide video and audio, too.
Mastermind groups are also a great way of constantly improving your skill level if you are the person who needs other persons to push you.
If you want to become a Python freelancer at the side or full-time, then definitely check out my course:
I have laser-focused this course to make you a more effective coder in the business sector to help you sell your skills at a higher rate (from $30 to $150 per hour — it really depends on your business and coding skill level). Some people even earn $1000 per hour but these are really the top 1% in the space. Of course, if you are reading business and coding books for 10 years or longer, combined with practical experience, you’ll also join these folks in the long run. Otherwise, it’s easy to join the top 20% of the people in the sector.
While working as a researcher in distributed systems, Dr. Christian Mayer found his love for teaching computer science students.
To help students reach higher levels of Python success, he founded the programming education website Finxter.com. He’s author of the popular programming book Python One-Liners (NoStarch 2020), coauthor of the Coffee Break Python series of self-published books, computer science enthusiast, freelancer, and owner of one of the top 10 largest Python blogs worldwide.
His passions are writing, reading, and coding. But his greatest passion is to serve aspiring coders through Finxter and help them to boost their skills. You can join his free email academy here.