If you’re a developer who is currently working for someone else, you’ve probably had dreams of the cushy life you’d live if you just quit your and started doing freelance work. Who wouldn’t want to? Work the hours you want to, from anywhere (bed, coffee shops, your grandmother’s dining room table), take as much time off as you want and still make great money. This is totally doable and if done right, can make you more money, while picking the projects and people that you want. 2 and a half years ago I started freelancing and have never looked back. I’m making more money than ever before and work about half the hours I did before. I paint a pretty good picture, but here are some things I’ve learned that I wish I’d known at the beginning.
Learn (and practice) Value Based Pricing
To put this simply, your rate will define the calibre of client that you will work with. If you have the ability to deliver a quality product, then charging more is the first step in establishing yourself as an expert. Experts have the trust of their clients and aren’t treated like wage jockeys.
There are countless people who will make websites for pennies. Their services are cheap because they produce a single product and have a specific output. Their product is viewed by their customers as a single outcome, just a website. Simply reframing ‘building a site’ to 'implementing a [money making/time saving/money saving] solution’ that is actively working to increase their profits puts you on a different level than 'the other guy’.
You are an expert. An expert is worth money, because, in this field, experts are business consultants who produce measurable results for their customers. Your expertise and the software that you create should make, or save your clients money well in excess of what you charge them for it.
Your job is to communicate the value that you will create for their business and charge accordingly. This can (and should) be well in excess of $100/hour for you to implement business solutions using custom software.
Also, making more money means having to work less. You’re freelancing because you don’t want the day job. Give yourself a break from 80 hour weeks (but only if that’s what you want.)
Resource: Breaking the Time Barrier
Now that you’ve established a sane base rate you need to make sure that you’re able to pay your bills every month. Make sure that your contract has strict terms of payment and your client understands them. If the client breaks these terms, contact them immediately and stop working. Most times this will result in almost immediate payment.
Use a time tracking and invoicing service that will allow you to set up automatic invoicing for hours worked on each project that you’re involved with, either semi-weekly or monthly. This will systematize your invoicing and remove the administrative task of sending out invoices. Beyond this, follow up with your clients if they haven’t paid you and the invoice is coming due. If they don’t respond, stop working immediately. This is very important. Your needs are important and you are not working for charity.
A good analogy is to compare your work to that of a homebuilder. If they frame a house and put a roof on it, they should be paid for this work. It is the same for you, if you have provided work, you need to be paid, regardless of the state of the project.
From personal experience, I can say that this is the most important part to being a successful freelancer. Without cashflow, you will be unable to pay your bills, your stress levels will increase and are essentially financing your clients’ work. Let them use the bank for this, and make sure that you get paid.
Resources: F*** You, Pay Me
This may be the most difficult part of freelancing. How are you going to successfully deliver projects within their time and budget constraints, while searching for new work and creating new leads?
The solution is to talk to everyone you know about what you are doing. If you have a community of freelancers around you, share work when you have too many client projects. Teach and make a name for yourself as ’the person for x.' Make sure that x is specific enough that there aren’t 25 other people in the room who could just as easily be the person for the job. Attend startup launches and get to know people around you. While this activity will rarely bring you work directly, you’ll be surprised when you get an email or phone call asking you to meet to talk about a project. You can give talks at Chamber meetings on using software to maximize sales.
Additionally, writing articles about interesting things you’ve worked on and comment on Hacker News about these things. This kind of activity will bring more awareness to a wider audience and has the potential to bring work your way.
Out of all these tips, this is the most difficult to accomplish. It is abstract, and until you understand how the process works it will seem a bit magical. To improve, just make sure you are are making steady progress increasing the publicity of yourself or your brand. As a natural introvert, I’ve had an especially hard time engaging with new and potential clients, but I am passionate enough about being successful in this profession to just make it happen. It might not be easy, but it’s doable and practise will only make you better.
Resource: Four Weeks to Your First Client
Now that you set your own hours and don’t answer to a manager, you’ve got all the time in the world. Don’t waste it! Your business is now your day job and its success is solely your responsibility. This may seem daunting at first, but it is not unmanageable, and as time goes on, you will grow used to the independence and control you have over the direction of your professional life. Two ways to ensure productivity are by creating a dedicated work space and creating good work habits.
Creating good work habits can take time. It is an investment in yourself. Procrastination is easy - the internet is full of tools to help you get better at procrastinating. The best way to create new habits is slowly, one day at a time making constant progress towards your goal. Set small, manageable goals for your day and hold yourself accountable. At first, they might be small like, 'write a blog post’, 'finish this feature for this client’.
As you adjust to self directed work, you’ll be able to increase the time that you spend working. Additionally, productivity techniques like doing pomodoros or blocking time for single activities will allow your mind to focus on the task at hand and push on through till it is complete.
I have found it extremely helpful to create a dedicated space to work in - this can be a home office, coworking space, coffee shop or library; anywhere you feel comfortable and can work without too many distractions. Creating a physical separation of your work, helps to create mental separation from work which makes it easier to maintain a healthy work/life balance.
Set a schedule and create treat the work day as if nothing has changed from your day job. Even if there is no paying client work you can use the spare time to write or contribute to your online community (increasing your brand awareness).
Resource: Productivity Manifesto