This is a recap blog post of a talk I gave at WordUp Brighton on 30th May, 2018.
What is freelancing, and what it should be
People have wildly different reasons for going freelance.
“I sell my time / don't have a boss”
I’m more on the team where freelancing is liberating.
“Freelancing allows me to live my best life, to do things I want”
For that you need the right kind of clients - to find, and to retain, and to work with.
“How do you find those clients?”
No idea what will work for YOU, because from experience it seems like everything has a tremendous amount of luck in it.
People knowing who you are, what you’re good in, what you’re not a good fit for really helps though, which is where the luck part comes in. What circle of people are you in? What do you do together? Meetups? Online communities?
“What should I set my prices?”
It is up to you. You need to cover your bills + taxes + other admin expenses, plus you want to go on a holiday every once in a while, so aim to cover that.
I mostly fell into this by accident, they asked me an hourly rate, I gave a “too big” number, they accepted, unblinkingly, so that’s my standard as of two years ago.
Part of a healthy relationship is not feeling like you’re being taken advantage of, and setting your prices too low for the effort required to do the work will do that to you. And burnout. Don’t undersell yourself.
This is important! If you’re not a white male, think of a number, then double that, and use that as your base. And follow the many women / PoC on Twitter who tell you the same things! I’ll make a post about my favourite people I follow there soon.
On the client side
Freelancers also need to understand the needs of a client. They aren’t just “people who have money I can exchange my work for.” Clients have the following explicit needs
- a business need that needs completing
- to a deadline because other business needs require them
- within budget - businesses need to stay profitable because there are people, bills, and taxes to be paid
These are the hard needs of any client that I’ve seen. Soft needs:
- good quality work, low maintainability of work done
- pleasant people to work with
- ease of working with others
Actually working together
You got the project! Points that might (will) trip you up:
Do you know what, precisely, are you building? All of it. Everything defined. Have you gone through it and asked all the potential questions you might have? Edge cases you can foresee?
No? What did you give a price for?
Aside: it’s absolutely totally possible that while working on a project you will find out things you didn’t know at the start that pushes times out, and we’ll get to it. (Communicate)
Is the list of things documented somewhere? Doesn’t need to be a contract (I’ll get there too), but at least have them on one of these: slack conversations / email threads / asana tasks / JIRA tickets / paper napkins. This is important because scope creep.
“Can you just ____, it should only take a few minutes.” No.
Is it in the scoped document where both of you agreed what’s going to get done? Nope -> phase 2, or out-of-project-emergency-scope, which modifies deadline, and hours taken.
Also, you’re the expert, you’re the one who was hired to do a thing, you know better.
Notable exception is when you’re subcontracting to $agency because they have capacity issues, at which point the reason they’re not doing it is because they’re doing something totally different, not because they can’t do the work.
Time is finite, work / person is capped, deadlines are looming, so more happiness = more work under the same time -> more people parallel -> agency expands / hires subcontractors (or says “no” to projects, different issue).
It’s not the first thing to worry about. What’s important to remember, is contracts don’t get you paid. People do.
Contracts won’t magically force people to pay you, or, if a person / company wouldn’t have paid you without a contract, then what are you even doing working together with them? Before you begin working with a client, ask others whether they’re awesome or not. Meetups like the one this talk was given at are ace for that.
Contracts achieve two things for different sides:
- on your side, contracts are a prerequisite for insurance purposes (the insurance company needs to justify why they just paid £££ to you), and also in case a relationship goes sour, the court needs to justify why they just awarded you £££
- on client’s side, department needs to justify to their finance department why they are requesting them to pay you £££. Technically the piece of paper is an invoice, but then Bob from Accounting will ask “cool, what's this for?”, so either have a contract, or at minimum an agreement, and a detailed invoice
When dealing with overseas clients though, bear in mind that enforcement is hard. International commercial law is hard.
Keep track of things!
Time is most important! If you’re working hourly, track your time for everyone’s benefit. If you’re working on a project basis, track your time for your own benefit.
- time tracking is how your client will invoice their client (or base their cost calculations on) if you’re working hourly
- time tracking will tell you how good you are with projects. If you’ve done a project for £3,000 and it took you 15 hours to complete, you’re awesome! Keep doing it! If you’ve done the same project in 200 hours, one of two things happened: you need to get better at doing the work, and/or you need to price the projects higher. Treat it as a learning experience.
Depending on the client (new / returning) , I would very much advise you to do the project in phases, and start with some part of it paid up front. That way if they do end up not paying, you’ve recovered some of the compensation for your work.
Have a good bookkeeping software, and awesome accountants. FreeAgent (I use them) and Xero (I don’t use them, but know that they’re also equally fit for purpose) are both good choices. I don’t know about the others.
Choose an accountant who knows how to work with either of those systems, and knows what IT freelancing is like. I've never met mine in person, we email each other about twice a year (company year-end and personal tax time), and they do everything else. Money absolutely well spent. I can introduce you to them if you’re looking for new one.
Communicate, communicate, communicate
If you’ve completed a piece of work, let them know.
If you’re stuck until they give you more information, let them know.
If you’re approaching the budgeted number of hours, and you might run over it, let them know at around 80%-ish. Also remember that an estimate is an estimate, in case you gave an estimate.
Communicate in writing! If it’s not written down, it doesn’t exist.
Phone call? End it with a recap email to them.
“Dear <client>, following our phone / Skype / video conference / coffee chat conversation just now, this is what we talked about, and have agreed to do A, B, C, holding off on D, [...]. Please let me know if this is everything, and add any notes I may have missed.
Get them to confirm in writing. The reason here is that in case there’s a dispute, not necessarily one that gets to court, you can tell them “um, this email”. They can also tell you “um, this email”. It holds both parties accountable.
Patience is a virtue
Occasionally you will get clients who aren’t used to working in an organized manner. Waterfall / agile / GitHub issues / JIRA tickets. There are two ways to handle them:
- complain about them endlessly at the water cooler about how dumb they are and how they can’t manage a project, or
- be super patient with them, because you’re probably the very first person / agency who makes them work like that. The baker you’re making a website for is REALLY GOOD at baking pastries, it is not their job to learn how to project manage. Or be project managed.
If you do the (1), please stop, and do (2), and if it feels painful, please stop being a freelancer.
Clients like this aren’t limited to small shops either, we have a client with $mm / week turnover selling FMCG products who will “close this GitHub issue temporarily because it clogs up the backlog.”
That’s not how that works, and I grumble to my breakfast for 3 minutes, but then accommodate them.
Present options and consequences
Business people like to see how your work affects them / their bottom line / their ability to keep working / keep working BETTER / faster / more efficient.
If (when) you get a request that’s going to break the flow of current work being done (you’re on a permanent retainer and the job description is “make the site better”, and you have 120 hours a month for example), then instead of telling them “no”, frame it like this:
“Doing X will mean Y (that we’re currently doing) is going to be delayed by some days. However we can finish Y first, and then do X on top of that, which will mean X needs to wait a few days. I recommend doing X after Y is finished, but let me know your thoughts.”
Example: major functionality refactor has been in the works for a month and a half and affects them being able to take money. I will absolutely not do work to fix the alignment of star colorization that only breaks on IE.
Best clients are the returning clients
I have 2 clients I still do freelance work for, because I like working with them. If you’ve done great work, and you’re subcontracting for an agency, you will most probably be pulled into future projects as well.
It’s easy to work with them, because you already know how they work, what their setup is like, you’ve already set up your computer for it, you know they’re pleasant, and you know they’ll pay you in time.
Relationship going sour
Depending on what’s in your contract / agreement, you might want an out from the work you’re doing. If there isn’t an escape clause, you might need to see it to completion, however you are not required to take on additional work (unless you previously agreed to it, of course).
What if you don’t want to work with someone and they’re asking you for a quote?
- you could tell them you’re busy, but it’s nice to not leave them hanging regardless, so if you can, recommend someone else
- if they know you’re not busy, you could straight up tell them you didn’t enjoy working with them, or their product / service isn’t something that aligns with your values (creating a web app that talks to / gets data from Facebook is an automatic void for me for example)
- or quote an hourly rate that you actually would work with them for. You know prospective client is difficult to work with, and your normal hourly rate is £60? Quote them £300 an hour. Worst that will happen is they send you an email starting with “Mate...” and refuse. Best case scenario, you’re on £300 an hour