JavaRush /Java Blog /Random EN /A guide for software developers on how to become a freela...

A guide for software developers on how to become a freelancer and start your own business (Part 1)

Published in the Random EN group
This article is an adapted translation (condensed) of a chapter from the book The Complete Software Career Guide. Its author, John Sonmez, writes it and posts some chapters on his website .
A guide for software developers on how to become a freelancer and start your own business (Part 1) - 1
I once worked in an office on a standard 8-hour schedule, and periodically thought about starting my own business... or becoming a freelancer, being my own boss. I imagined how I would travel the world, work on a flexible schedule and earn a lot of money from lucrative contracts. But I constantly caught myself thinking that I had no idea how to do this. I wondered what exactly needs to be taken into account and what steps to take in order to finally become a freelancer and work for yourself?

I am a beginner freelancer

I suggested that it makes sense to bet on government contracts: you get one of these - R-time! - and you are already a freelancer running your own business. I registered a DUNS (Digital Universal Numbering System ) number, which is an identification number assigned to a company. In search of proposals, I studied a couple of government contracts, but decided that it was all very complicated. Therefore, I abandoned this idea and did not return to it until my dreams began (suddenly for me!) to come true. About a year after starting my Simple Programmer blog, I received an unexpected freelance offer. They wanted to entrust me with a certain job and asked how much I charged per hour. Jubilant and rubbing my hands, I wrote about “$50 an hour” feeling like I was trying to scam someone. My offer was accepted quite quickly. I completed a decent amount of work, sincerely believing that my hourly rate was high.
A guide for software developers on how to become a freelancer and start your own business (Part 1) - 2
Later I increased the rate to $100 per hour, then to $200, $300... Now an hour of my time as a consultant costs $500, or $5000 per day. Achieving this was not so easy, and I have to admit that not all of my fantasies about what it would be like to be your own boss as a freelancer corresponded to reality. I definitely learned some important lessons for myself and in this post I want to share with you my conclusions and give some practical tips on how to start your own business or freelance work in our era of software entrepreneurs.

Are you sure you want this?

The first question you need to ask yourself is do you really want to become a freelancer? Don't get me wrong, I'm not discouraging anyone. But there is one very important conclusion that I made: in fact, freedom is not for everyone . Once they have freedom, most people have no idea what to do with it. And even more would-be freelancers are not ready to pay the high price she is asking. And the price is really high. In fact, you will have to make a huge amount of extra effort to bring your dream closer to realization. Offhand:
  • If you haven't quit yet, you need to be willing to devote a lot of time to it after you've already worked your eight-hour day at another job. Yes, instead of relaxing with family or friends. If you have already quit, then... everything is the same, an eight-hour working day will not work - I guarantee it.
  • You will have to regularly leave your comfort zone.
  • You will encounter refusals and mistrust with enviable regularity.
  • In many cases, you will have to take big risks.
A guide for software developers on how to become a freelancer and start your own business (Part 1) - 3
Permanent employment gives you a stable salary and an understanding of what will happen tomorrow; attempts to become a freelancer, on the contrary, will eat up all your finances at first, and this “first time” will last quite a long time. And if you take things seriously, you will be much busier than at a “regular” job.
You can spend weeks and months of work on a client and not get paid a penny. You can spend months or even years creating a product and it turns out to be a failure.
The book of which this article is a part may be a complete failure. And I’ve been writing it for several months now! There are no half measures in the startup world . If you are not ready to go all in, as one of my mentors, Tony Robbins, says in all his seminars, you will most likely fail.

This insidious freedom of choice!

Even if you manage to leave your “safe haven”, that is, your regular job, will you be able to cope with the freedom that has washed over you? Before you answer “Of course!”, take a break and think about whether this is true. In fact, most people are completely unprepared for it. Have you ever wondered how many questions employers have already solved for you? And this, I must say, has its advantages. Even if you don’t want to wake up in the morning for work, psychologically it’s much easier to do it if you have to be at your workplace and fulfill your duties from 9 to 18. Simply because YOU HAVE TO, otherwise you will be fired.
A guide for software developers on how to become a freelancer and start your own business (Part 1) - 4
But what if the boss doesn't fire you because you are the boss? Believe me, in this case, forcing yourself to get up early in the morning and start working at home or in your office is much more difficult. After all, during this time you could play Xbox, watch TV, walk and generally use your freedom as you please!
The first two times I tried to start my own business, I failed. The desire to have fun very often defeated the desire to create a project!
I spent a huge amount of time playing online poker, leveling up as a Loremaster in Lord of the Rings, and generally doing all sorts of nonsense. It was only the third time I managed to curb my instincts. After wasting time, I realized that I had to make rules for myself and stick to them strictly if I didn't want to follow someone else's rules. This is a difficult lesson. I say this not at all to dissuade you, but I warn you about the danger that awaits almost anyone who for the first time decides to become his own master. After these words, someone may give up or shelve their dream. Well, someone, on the contrary, will become inspired and redouble their determination to become free. Which path to choose is your personal decision. Just don’t say later that I didn’t warn you.

What is Freelancing?

The essence of freelancing is quite simple: you are not a full-time employee, but work to order. It's like being a bounty hunter instead of a police officer chasing the same criminals. You're writing code for someone, maybe slaying a few dragons lurking within it.
A guide for software developers on how to become a freelancer and start your own business (Part 1) - 5
Let me clarify that by freelancing I mean a situation where you have not one customer, but several. If you are a contractor working for a single client who is not technically your boss, I prefer to call this activity consulting or contract work, not freelancing. Contract work is more like a full-time job.
Real freelancing is working for several clients, not necessarily simultaneous, and includes finding these clients, concluding contracts and the ability to run a real business.

Where to begin?

This is the very question to which I did not find an answer. When I was a full-time employee, the thought of becoming a freelancer and working for clients seemed tempting but very uncertain. When you work for someone else for too long, you start to feel like a lion in a zoo. Every day you go to your feeder to get food. You have a good, comfortable enclosure, and you clearly understand the boundaries. The ability to independently obtain food becomes dulled. Well, a lion that was born in captivity does not have these skills a priori. There is only this weak, suppressed, barely discernible instinct that sometimes tells him: “It’s time to hunt... Come on!” How can we hear this animal instinct, respond to it, and learn to earn our own bread? There are two ways: simple and complex.

1. The hard way

The hard way means:
  • get out of your usual environment and start looking for clients;
  • at first agree to low wages;
  • hone your self-selling skills;
  • put on impenetrable armor;
  • ...and work hard all the time.
Start by looking for any useful connections for your project (a project can also mean creating custom code) and anyone who might be potentially interested in it. To begin with, you will have to come to terms with a low rate for your work and the mandatory voicing of the guarantee “if you don’t like it, we will return your money.”
A guide for software developers on how to become a freelancer and start your own business (Part 1) - 6
Contact anyone who may be potentially interested in your services or who can recommend such people. Make it clear that you are serious and offer some specific benefits to those who might hire you. Once you have exhausted the list of existing connections, you should start looking for new ones on your own. You may want to consider purchasing a list of small businesses in your area through a dedicated service like Experian . You can also hire someone to compile a list of businesses in your area for you, or do the research yourself. Call, send emails, and continue to perfect your pitch. You have to be very lucky to get a client this way, but if you are persistent and determined, you will succeed. As soon as you understand that a sufficient number of customers are satisfied with your work, connect word of mouth and direct your business in the right direction, in the future this will have a beneficial effect on your business. At the same time, you can connect with other freelancers you know and invite them to take on clients they don't currently have the opportunity to take on that they can refer to you. Perhaps offer them some kind of reward for this. While I don't particularly recommend this option, you can also gain some experience and find long-term clients by using a service like Upwork or advertising your services on Craigslist. But here you need to understand that the competition will be tough and, most likely, your hourly rate will be low.

How to behave with a potential customer

Try to be as specific as possible. You must clearly understand what kind of clients you are ready to attract and what services you are ready to offer them.

There is no need to focus on the technical details of your skills, unless, of course, you are talking to a fellow programmer. Talk about what exactly you will do to solve the client's problem.
This means that when trying to get a client, you should not focus on “excellent knowledge of C#” or “many years of experience with MySQL.”

Talk about how your solution can save the customer time and money by automating business processes or making existing software more efficient, including economically. Talk about how you can bring the customer more clients by creating a highly optimized and effective web page that will differentiate them from their competitors.

2. Well, what about the easy way?

The easy way is:
  • preparing a marketing strategy for selling one’s own knowledge and skills in advance, through indirect means.
And now I’m deciphering it. Before leaving for free, you need to do preparatory work so that by the time you leave your permanent job you will already be known as a specialist. In this case, clients will come to you themselves.
A guide for software developers on how to become a freelancer and start your own business (Part 1) - 7
Here I can advise a lot, since I followed exactly this path. Namely, I created this blog, and it has earned me a reputation as a specialist developer as well as a consultant. The easy path is not so easy because it requires effort in advance . In addition, you must be exactly the specialist for whom there is demand. They will remember you, they will specifically look for you and recommend you. Now, in the short term, this “easy” path may turn out to be more difficult. It takes a lot of effort, work and time to earn a reputation. It’s not at all easy to create a blog, regularly write useful posts for others, publish podcasts and do much more to create your own brand. But if you focus on this while you work at your regular job, and start doing it early, the moment you are ready to dive into the world of freelancing, clients will come looking for you. Not only will they come to you themselves, but they will also pay you more money than a specialist like you who is taking his first steps following the “difficult” path. After all, when you are trying to attract a client, you are not in the best negotiating position. But when it is not you who ask, but they offer you to do a certain job, the ball is already in your court. You are free to voice your price and don’t have to stand on ceremony. While I was wondering how I could take the difficult path, I created a blog and discovered an easy way. The blog began to gain popularity and my reputation in the software development industry grew. I began to receive more and more letters from potential clients who wanted to work with me. To be honest, the number of job offers was so large that I had to increase my rate again and again until it reached what any beginning freelancer would consider an incredible amount, which I still maintain today.

How to set rates for your work

You can find a lot of advice online on how to set rates for freelance work. One of the most common pieces of advice today is to regularly double your bid, or at least increase it until your prospects say “No!”
A guide for software developers on how to become a freelancer and start your own business (Part 1) - 8
This advice is good, but only if you already feel pretty confident. Let's say, if you took the “easy” path. If you're just starting out, don't do this. You won't achieve anything this way.
In practice, I recommend starting with a very low rate , even practically free, with a money-back guarantee. The main thing is to gain experience, get your first clients without problems and understand how much you will actually be worth in the future.
And don’t let the provision of a guarantee bother you. If you hire someone to do a job, and he doesn't do it, or does it unsatisfactorily, you will most likely ask, most likely even demand your money back? Perhaps even sue? If you are going to do business in principle, then by default you do it on the terms of a guaranteed money back. But if you voice this point, you can get additional clients due to the very fact of such an offer. For example, if you don't like my book, send it to me and get your money back. Not only this, but every product I sell comes with a one year unconditional money back guarantee. And these are mostly digital products that you can easily download and ask for your money back.
A guide for software developers on how to become a freelancer and start your own business (Part 1) - 9
Am I being deceived? Of course they are deceiving. But more of those who buy, and the majority of those who bought, did so precisely because of such a guarantee. Of course, there may always be some wise guy who will decide to screw you if you offer a money-back guarantee, but the amount of work you get with such a guarantee will have a much greater impact on your wallet. In addition, you can always choose who to work with; do not be afraid to refuse suspicious individuals. Let’s say that thanks to the “simple path”, clients regularly come to you. You have already completed your first orders and your customers are satisfied. Now you can try doubling your rate and see what happens. However, if you, like most freelancers at the start, chose the “difficult path”, or circumstances developed against your will, then I strongly recommend not thinking about money, at least for the first time . I spoke with Marcus Blankenship, a software developer turned freelance entrepreneur, about how he broke free from the corporate world.

During his first freelance orders, he asked for ridiculous money for the work. The work took much longer than he expected, and he ended up having to work for remuneration that was even less than the minimum wage.
Marcus noted that this was the best decision he made: although the work cost him money, he gained valuable experience, confidence and a real understanding of what it is like to work freelancing.

In short, be prepared to work for a small reward, at least at first. The money will come later. Only after a number of successfully completed orders and satisfied customers can you raise the rate. You don't have to double it, but you can try. I increased my bid from $50 to $100 and no one batted an eyelid.
A guide for software developers on how to become a freelancer and start your own business (Part 1) - 10
Then I moved to $200, and at the $300/hour mark I began to receive the first refusals. Nevertheless, there were those willing to pay this money. Even when I switched to a fee of $500 per hour (this is my current rate), I always have clients (although usually not for programming assignments, but more for coaching and consulting on project architecture).
The main reason I was able to increase my rate so much was because my brand became recognizable and I built my reputation.
If you have practical experience now and understand the industry you work in, I can almost guarantee that one day you will be able to raise the tariff to an acceptable level. Acceptable is one that matches the quality of your services. If we assume that it is high, then the acceptable level is the one that the market can withstand. Pricing intangibles is completely subjective. I know highly paid programming consultants who bill corporate clients for $350 an hour and do nothing while others on the same team do 90% of the work and make $50 an hour or less. Skills are important, but they do not play a decisive role in determining the size of the bet. It will be played by the client’s willingness to pay multiplied by your reputation. It makes sense to look for clients who are willing to pay more. But only if your reputation is already at the proper level. Well, your skills will help you build a name and create confidence that you won’t lose your job or won’t have to pay back the money.

Another important thing: at some point, it's best to move away from hourly pricing entirely and instead focus on something called "customer value-based pricing."


Customer-based pricing means that you price your services not on an hourly basis, but on the expected results for the client and their value.


Let's say I have a client with a large commerce site, and he wants someone to build a module there that automates the processing of T-shirt orders (which are currently processed manually).


I can determine how much money a new system can save and then develop a proposal based on the result. This could possibly save the company a million dollars a year. In this case, I can value my work at $50,000 or $100,000. It can only take me 80 hours of work and thus I can earn from $625 to $1250 per hour.


This is a price that no one would be willing to pay on an hourly basis, but when you look at it from a consumer-based pricing perspective, it looks like a good deal.

You can also price your services on a daily basis using a similar approach. Most of the time, if someone wants to hire me to do a certain job, the minimum time I quote is 24 hours. I then estimate my daily rate to be $5,000, or my weekly rate to be $20,000. A guide for software developers on how to become a freelancer and start your own business (Part 2)
Comments
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION