By February 1, 2019

3 Key Lessons to Succeed as a Freelance Developer

Being a freelance developer sounds like a dream: Work from anywhere, whenever you want. But things aren’t always that easy.

There are many issues that come with being a freelancer. For example, the biggest one is probably the uncertainty of not having enough work for a constant income. Wouldn’t you like to have clients constantly coming back to you so you wouldn’t need to worry that much?

With almost 15 years of experience as a freelance developer, I’ve learned many lessons. Some were helpful discoveries, some were mistakes that cost me either money or business, or both.

I’m going to explain to you what I consider the three lessons that will help you succeed as a freelancer quicker than normal. These lessons will help you earn the trust of your clients, so even with a small base of clients, you will have enough work to support your freelancer lifestyle.

So if you’re thinking of becoming a freelancer, or if you are one but are struggling, I recommend you apply some of these lessons.

1. Value Is Equal to Money

Not many people have sat down and thought about money, not as a number but as a concept. We are constantly running around seeking it without even taking the time to understand it.

Think about why you spend money in your daily life. Most of the time it’s to fix an issue you have or make your life easier. Or maybe you have a financial need. All of these cases reduce to this: Money is value.

When we think about making an income, we always think about how we can make more money. Let me challenge you to think the other way around. Instead of being a taker, which is someone who expects to get money from clients, transform yourself into a giver, a person who gives value to customers regardless of the outcome. Your clients will appreciate it and will respond to you by paying you for your help.

With this in mind, your goal now is to deliver more value per hour than you did before. So what is value exactly, and how do we build it?

The concept of value is a huge topic; part rational and part subjective and emotional. For example, a glass of wine has a different value when you buy it in a store than when you buy it at a nice restaurant. And I use the word “value” not the word “price” because the price you’re willing to pay is proportional to the value you perceive. This holds true for what your clients will be willing to pay you.

Since our goal is to build value, I’m going to explain what I consider the four keys to building value:

  • Passion
  • Expertise
  • Supply
  • Demand

Passion is a key element because succeeding in the freelancer industry is hard. If you work eight hours on something you don’t like, you’re simply not going to put in as much effort. As developers we compete in a global market, and it is important we stay on top of the game. Passion is going to be that fuel that will make you learn more about your craft.

And not only is that passion contagious, but when you demonstrate passion to a client, they feel more passion. This translates into more business for you because now the client is willing to invest in you. The client will think of you as an ally rather than an employee. They will be motivated to give you more business so you can remain their ally; and sometimes they will view you as their secret weapon.

But what if you don’t have that passion for what you do?

Find the passion for what you’re doing, or quit.

Regardless of your current position, you can find passion in your area of expertise. It doesn’t matter if you’re a front end developer, back end developer, blockchain expert, or even a blogger. You can apply your expertise to a topic you have an interest in.

That will take you on a more specialize path. For example, you’re a front end developer, and you love surfing. Why not try to reach out to brands related to surfing and help them have a global presence using your skills? Maybe you love food. You might reach out to restaurants and advise them on how to get more customers using the power of social media. Start thinking of your title as a skill rather than a job position, and apply that skill in your area of interest.

Expertise is another key to being a valuable developer. Telling me you’re a developer doesn’t tell me much about you. You could be a front end developer, back end, or maybe even an iOS.

Finding your passion will let you specialize and become an expert. That means your time is more valuable because you are very knowledgeable in a specific niche. Now it’ll be harder to find someone like yourself. That takes me to the last two keys, which are supply and demand.

The more you specialize, the smaller and smaller your market supply will become. For example, if you go as deep as specializing in Instagram growth hacking for the bikes market, then there will be very few others who will be able to compete with you. And the less supply there is, the better for you because you become more valuable.

And finally there’s demand. The trick is to understand you’re no longer a generic freelancer; you’re an expert in the industry and topic you’ve chosen. The demand is going to be lower. Therefore, your going to make a little extra effort to find that market, but that effort will quickly pay. Since you’re going for a niche, you can position yourself as an expert,and you’ll be seen as a better choice than your competitors.

Keeping these four keys in mind, let me ask you the following question: “What will you do to increase the value you give to your clients per hour?”

2. Don’t Follow Orders Blindly

As a freelancer you’re typically working shoulder to shoulder with your client. It’s not a regular job relationship in which your boss, who is probably not the business owner, gives you the requirements another person collected. Most of the time the team is you, the client who might be the owner too, and maybe another couple of people.

As a freelancer you’ll find people placing their business and way of life in your hands. It's very important to them that their business succeed and the faster the better.

This creates a very special environment in which there’s a lot of trust placed in you, and you are no longer only a developer but also a chief technology officer (CTO). And as one you need to be able not only to code but also to give business, technical, and technological advice.

A lot of times you’ll be given a new requirement, and it is your job to judge if that requirement is even useful. Remember, you’re the expert, so the client will just tell you what to do based on the context they know.

For example, they might ask you to do a landing page in React-Bootstrap. But think of why they are requesting to use that stack. Maybe because they simply read that React is very cool and advanced. Bootstrap sounds perfect if you are not an expert, but those two together might be an overkill for a landing page.

And let me go deeper: Maybe the landing page’s purpose is to be the first step in a funnel after getting an email. If that’s the case you need to make sure it follows the best practices to have a good conversion rate.

However, all the client might tell you is: “Here is the design of the landing page we need.” When you follow orders blindly, you present yourself as a technician only. This means that you are not responsible for the decisions made by the company. This isn’t so bad if you’re an employee, but as a freelancer you’re expected to change direction if needed. If you don’t the client will lose trust in you and also might blame you for not telling them the project was going in a bad direction.

If you start asking questions instead of just following orders, you’ll demonstrate huge interest in their business. Your clients will value you so much that they will be thinking of other things you can help them with so that you remain part of their team. All because you are a person to be trusted.

And there are many advantages to being trusted:

  • Your opinion will have more weight.
  • The client will keep you as part of team as much as possible.
  • Because of your expertise and passion, the client will be willing to be invest more in the product by investing more in you.
  • The client will make you part of the product, so you’re no longer disposable.

3) Manage Your Time

Freelancing is always viewed as the freedom to work anywhere, whenever you feel like it. While you can certainly go that path, it might not be the most convenient in the long run. Software development requires constant communication with other members of your team as well as with the person in charge of the project.

Good habits are the key to success in most areas, even in the most creative ones like painting. It’s said that a good painter paints every day regardless of whether they are inspired or not. And you should try to do the same. Code every day on a fixed schedule, even though you have more flexibility than at a regular job.

If you want to be taken seriously, please take yourself seriously first. To be trustworthy you need to be serious.

By setting your working hours, you define a commitment to work during that time; and therefore, you make progress every day. Even if you prefer working at night, having a schedule will make it easier because you’ll be committed to respect your time to work as time for working.

Remember, even if you are at home, work time is work time. It isn’t time to play Fortnite, watch TV, or hang out with friends. If you fail to concentrate on your job, then you’ll find yourself trying to finish your project at the last minute, and sometimes that means the product will be incomplete or with a bunch of issues.

However, business is also about long-term consequences, and your client might not consider you for anything in the future. Long-term business relationships are based on commitment on both sides and are the key in having a steady income.

You wouldn’t like to work with a client that pays you two months after finishing a job, right? Well, clients don’t want results to be delivered two months later, especially if the reason is a lack of commitment. So start managing your time.

Set your working hours but also consider the client’s working hours so that you can communicate when needed. When you do this the client sees a commitment on your side, which is very important as a freelancer. You might have a client you never will meet in person for your entire career, so it's important to build trust.

It’s All About Trust

All of the above keys revolve around one central idea: trust. You gain trust by giving value to your client, which tells them you care about them and their business. You gain trust when you ask questions and try to help the business instead of just following whatever requirements are given to you. And finally, you gain trust by showing your client you’re not just working randomly during the day but instead that you take this as seriously as any regular job.

Remember, business is not an exact science, and if you have any questions about freelancing, please comment below so we can discuss and grow together.

About the author

Juan Arias

Juan Carlos Arias is a front end, remote, freelancer developer with almost 15 years of experience. His passion for coding, especially in Javascript, has just been increasing, and he's always trying to find new ways of solving problems. Although he's committed 100% to Vanilla JavaScript, he likes using frameworks like React and Angular too. He is starting a Youtube channel "The Coding Ninja" . His goal is to share the world of front end, vanilla JavaScript and freelancing from his own perspective. You can also drop him a message on LinkedIn.