DEV Community

Cover image for There’s More to Freelancing Than Just Coding
Kyle Prinsloo
Kyle Prinsloo

Posted on

There’s More to Freelancing Than Just Coding

One of the common mindsets of people who want to become freelance web developers is they just have to be so good at coding and the rest will follow.

WRONG.

If you’re serious about being successful, this is not the right mindset to start with.

Freelancing is a business, and it takes more than coding to make it grow.

In this article, I’m going to share the different hats a freelance web developer has to wear to grow and sustain his or her business.

What do freelance developers do?

In its simplest sense, freelance developers write code for clients on a project basis. This means that they are self-employed, they get to set their own rates and decide who to work with, and they control their time.

Freelance developers are first and foremost problem-solvers. Companies are now realizing that going digital is a necessity and not an option, and they are looking for people to give them the right solutions to digitalize their businesses in the most effective way possible.

Websites and apps are tools designed to bring clients sales – so, in this sense, developers directly contribute to clients’ bottom line by building technologies that will give them the edge over their competitors.

These are a few skills required for freelance developers (other than coding):

Understanding your client’s business nature and goals.

Understanding the nature of your client’s business will help you better prepare for the project and anticipate your client’s needs. This is true for both employed and freelance developers.

Ecommerce businesses have different needs from SaaS companies. A startup will also have a smaller budget, shorter timeframe, and different priorities than an enterprise company that has been around for years.

Understanding the nature and goals of your client’s business will enable you to give more valuable contributions and solutions. It will also inform your decision about which features should be included and given more technical depth.

You can understand your client’s business goals by:

  • Browsing their website and social media accounts. Find out their history, how long they’ve been around, products and services, their plans, etc.
  • Ask them yourself. This is a good way to show that you are committed to giving them the best solution possible.

Communication

Effectively communicating with a client is key to working efficiently and giving timely, effective results. A lack of clear and timely communication can give rise to a series of problems like bad coding, bad design, lost time, and wasted money.

As a web developer, it’s your job to ask questions to help you understand what your client specifically needs.

Client communication involves:

  • Explaining complicated technological concepts in a way that your client will easily understand.
  • Explaining your ideas and suggestions to the client.
  • Asking questions and encouraging clarifications to make sure you’re on the same page about the website’s design, features, and functionality.
  • Working with their in-house marketing team or hired marketing agency.
  • Negotiating prices and deadlines.

It also includes deciding which concerns can be emailed and which ones need to be explained face-to-face or through video calls.

Decision-Making

From choosing the framework to deciding whether a certain feature is really needed, you’re going to make pretty important decisions that will impact the project’s success.

If you are the lead developer of the project, you’ll often get asked these questions:

  • How long will you take to complete the project?
  • How much time and money should we invest in building feature X?
  • What is the most cost-effective way to achieve Goal A?

Your experience, technological expertise, and understanding of your client’s business, goals, and specific needs will all come into play when you’re making important decisions.

The best example I can think of to illustrate this point is the never-ending debate about CMS platforms. Which I think is quite pathetic but let’s get to the point :)

Let’s say a business coach wants a simple website that brings in a consistent flow of leads every month.

This website will need nothing more than a single high-converting landing page to do the job.

Decide on if a CMS is best or if you need to code it.

Don't waste your time unnecessarily by coding something if you can just use a plugin or existing theme to do the job for you.

I’ll say it again: As a developer, coding is not your job – finding solutions is. The best solution is the one that achieves business goals sooner.

Marketing

Before you get to start coding, you need clients, and to get clients, you need to start marketing.

The word “marketing” can be intimidating to those who have no prior experience to it because there are so many technical buzz words that sound so complicated.

In the simplest sense, marketing is putting your products and services in front of people who might need it.

Marketing is so important for freelancing that you should aim to most of your time to it and less time to actually writing the code.

To market effectively, you need to answer a few questions:

  • Who are your target clients? What kinds of businesses do they have?
  • What are their problems that your services can help solve?
  • Where can you find them? Are they on Facebook, Twitter, LinkedIn, Instagram, Reddit?
  • How do you tell your message in a way that will resonate with them?

Marketing is such a big industry in itself, but if you know the fundamentals, you’re set and can learn along the way.

If you want to know more actionable tips to market your services to clients, this guide on how to get clients may help: How to Get Clients as a Freelance Developer

Time Management

Managing your time is huge if you want to stay productive and sane.

As you get more clients and projects steadily come in, it’s easy to lose track and fall into a state of confusion and having a sink filled with unwashed dishes.

Here are some tips to help you manage your time and stay productive:

Multitasking is a myth. Only 2.5% of people in the world can actually process tasks simultaneously.

Here are some more statistics to officially end the myth of multitasking:

  • According to a study of Microsoft employees, employees took an average of 15 minutes to get back to intense mental tasks (e.g. writing code or reports) after responding to instant messages or emails.
  • People who are interrupted take 50% longer to finish a task.
  • Multitaskers make up to 50% more errors.

Instead of multitasking, have short bursts of hyper-focused working mode. Work distraction-free for 2 hours (or how long you prefer), take a short break to clear your mind, and repeat. You can also try the Pomodoro technique.

Collect design assets and resources. Find a set of go-to websites for your photo, vectors, icons, and other design needs. I personally like to use Deposit Photos because it’s easy to use and they have a huge library of assets. There are also free options like Pixeden, Free Design Resources, and 365PSD.

Use productivity tools. You need tools to help you organize your projects like Trello. Make collaboration easier, integrate apps, and maintain your schedule. Learn more productivity tools and other tips in this blog post: Practical Productivity Tips for Web Developers.

Cash Flow Management

No matter how many clients you get and how well you do your job, you won’t stay afloat if you mismanage your cash flow.

Some things you can do to manage your cash flow:

  • Closely track your income and expenses
  • Cut costs. Spend only on things you really need. If you’re struggling, that cup of Starbucks coffee can wait.
  • Stay on top of invoices.
  • Have a cash reserve with 3x your monthly expenses. If you spend $5,000 a month, you should have a savings account with $15,000. This cash reserve should NEVER be touched unless absolutely necessary.

As your business grows, you need to outsource taxes and bookkeeping to a trusted accountant.

I recommend reading this blog post for more money management tips: How To Spend Your Money As A Freelancer.

How do I become a freelance programmer?

Now that we’ve painted a clearer picture of what freelance web development really looks like, you can set a realistic expectation and even reassess if it’s really for you.

If you’re still set on becoming a successful freelance developer, check out the Complete Freelancing Bundle for everything you need to get started.

I hope this article helped give you an idea of what it’s like to run a freelance web development business.

There are obviously a lot more points, so feel free to mention a few in the comments.

Cheers for now :)

Kyle

Top comments (10)

Collapse
 
johnnyjamesnavarro profile image
Johnny Navarro • Edited

Very informative article, thanks for sharing! I'm currently trying to do freelance and one of the things that trouble me the most is explaining hosting costs to my clients. For instance, I really enjoy using Firebase which, depending on the project, can lead to extremely cheap hosting costs, or it can be extremely expensive if you have really high web traffic. Explaining that to my clients has been really hard. Do you have any advices regarding the problem of discussing hosting costs to your clients? Also, do you have any hosting provider you have found to work well with your clients overall? Thank you very much!

Collapse
 
aminmansuri profile image
hidden_dude • Edited

Just tell them that they must provide hosting. You can recommend, but they are in charge of pricing and contracts.

Collapse
 
jcopella profile image
John Copella

All of this and more. Include becoming knowledgeable about payroll taxes & withholding, benefits administration, state business registration requirements, different forms of corporate organization (sole prop vs. S-corp. vs. LLC) and their tax implications, etc. Even if you outsource this stuff to an attorney or an accountant or payroll tax service like Quicken, you'll need to know what's going on and still keep tabs on the experts you've outsourced it to. Don't underestimate it -- it consumed enough of my time & energy that I gave up on freelancing after a few years. Just not worth the headaches.

Collapse
 
memahesh profile image
Medam Mahesh

Completely agree with you on the Communication aspect. It has definitely given me a new perspective.

Collapse
 
leob profile image
leob

Yes and no, it depends ... if you want to grow big and successful, then you need to do all these things. If your cost of living isn't high, you just want to sustain a modest lifestyle, and you don't want to do more than the minimum, then you can get away with doing a lot less.

Collapse
 
farazi482 profile image
Hafiz Faraz Mukhtar

Good read. I have been working as freelance web developer for 11 years and also as gig worker on fiverr.com/wordpressseodev and i see that the article is exactly what a new freelancer needs to understand. Thanks for sharing.

Collapse
 
_kartique profile image
kartique

Good acticles, must read, absolutely loved reading it.

Collapse
 
supermario_ai profile image
SuperMario

That 15 minute window to get back in the zone is called flow state, and you should strive to maintain that at all costs.

Except when it's time to feed your child. 🤣

❤️💯

Collapse
 
optimist1356 profile image
Optimist

This is awesome 👏

Collapse
 
jaswindersingh1903 profile image
Jaswinder Singh

It is also important to have a business model, also have a idea of the market and what is the USP if in any case someone is looking into starting their own company.