Today an old friend emailed me for advice about quitting his day job and going freelance. He’s been in the business for ten years and has great wisdom in the field of C/C++ games programming. I got halfway through writing a response then realised hey, others might benefit too. It’s UK-centric but hackers elsewhere may find it interesting.
My cold, calculating side doesn’t want to post this. We work in a competitive industry and nobody likes to give the opposition a hand – indeed even my mother suggests I fill this essay with bum steers to sabotage everyone else’s career. But today I’m feeling altruistic. And besides, if someone else had told me all this when I first started out the last three years would have been a damn sight easier.
All of this is simply my own opinion and experience. I am neither a lawyer nor a trained accountant and my highest qualification is a ‘B’ in A-level computing. For the love of god don’t actually trust or follow any of my advice.
First things first – is work out there?
The first consideration is how much demand there is where you are for the thing you do. You’d be surprised how many people take the plunge without thinking this through. Is your local economy conducive to flexible tech labour?
Scan the job boards to see what’s available within striking distance. In my experience contract/freelance work tends to be concentrated around major tech hubs – so London in the UK, Silicon Valley and NYC in the States. Keep an ear to the ground for a few weeks and gauge how much demand you’re likely to see before making any career-changing decisions.
If the work isn’t there and you’ve no commitments, consider relocating. Unless somebody wants to pay you to work remotely you ain’t gonna get rich in the middle of nowhere.
Am I that kind of person?
It isn’t for everyone. You really, really will be the master of your own fate. There’s no monthly salary (well, not really), no pension plan, no sick leave, no healthcare. If you are motivated, highly independent, responsible, always learning new technologies, good at spotting opportunities and willing to manage your own affairs it might suit you. If lucky you’ll end up earning more by working less.
Some of the joys your new life holds:
- Finding the damn work. This can be as simple as lining up new contracts or as complex as managing a dozen small clients, each of whom retain you for a couple of days work a month.
- Paperwork. Depending on the route you take you will need at least to maintain contracts covering all your work and to invoice your clients. If you start your own company (if successful you will want to) there’s much more – Expenses, VAT returns, Corporation Tax, Annual Returns, random monthly economic censuses you’ll be fined if you don’t complete… all the fun of the fair. At first this will be daunting but once experienced (& armed with a sound accountant) it should not take more than a few minutes a week.
- Cabin fever. If you work 100% from home you will rapidly start to wish you didn’t. [But office space is cheap, even in some surprisingly upmarket areas]
- Squeezing cash out of creditors. Some clients will make this excruciating. If upon hearing that old chestnut “the cheque’s in the post” from the same client two weeks in a row your gut feeling is to cease work then rip off their arms and beat them to death with the bloody stumps, you’ll make a good freelancer. If your natural response is “okey dokey mister big important client, I’ll ask again next week” I give you six months before you starve to death.
- Bullshit. Sometimes people will ask you for a free lunch. Sometimes people will assert that you need to give them money when you don’t. Sometimes you will get fake invoices for fake domains you didn’t even want in the first place. You may be honest and transparent in your business dealings but remember, a whole lot of people aren’t. [Yet somehow they convince themselves they are – people believe the strangest things]
Picture yourself as an animal. Are you the graceful, herbivorous manatee? A small defenseless water-vole? Or a psychotic, charging rhino. If you are either of the first two independence in a dog-eat-dog world may not suit you.
Most important of all you need to stay relevant. Nobody is hiring punched-card programmers anymore. It’s your responsibility to maintain a set of skills and knowledge for which somebody will pay. Tech moves fast; you must continually try out new stuff. As a rule of thumb if you’re the kind of person whose employer needs to send them on training courses you will not make a good contractor. If your basement is full of whirring machines with hostnames like “freebsd-testbed-01” or “home-oracle-instance-15” and catches fire every six months, you will.
Why does it pay better?
It doesn’t always pay better. In some industries contracting can be stacked against the supplier and used as an excuse to treat people really, really badly. But IT is one of the more positive examples and yes, for every day you work you are likely to take home more cash.
There are a lot of reasons for this but the primary one is lack of commitment. For a company it is much, much easier to acquire and lose resources if they are not employees. Legally speaking a contractor should be no more or less bound to your company than the man who fills the water cooler. Gone off water? Fine, don’t renew his contract. Gaining and losing employees is much slower, more expensive and legally fraught than juggling suppliers. Anybody who’s ever needed to fire someone will understand this.
How can I work? Where do I look?
- Contract. These jobs are usually advertised by recruiters on IT job boards. You (in theory) commit to stay somewhere for 3-6 months full time work for a client (though 12 is not unheard of; try to avoid it). JobServe, CWJobs and StackOverflow seem to catch most of what’s out there but ask around; everyone will have their own opinion. While a contract is advertised with a fixed duration clients are often eager to extend as you approach the finish. If there’s still work to do and you get on well they’d much rather keep you than face the pain of taking on someone new. If you want to renegotiate your rate and a client is eager to keep you, here is your opportunity.
- Consulting aka. Freelance. Tends to come via word of mouth. May not be full-time – for example I have a couple of clients who pay me for a fixed number of days per month (i.e. a retainer) to keep their webservers ticking over. Attend networking events if you have the social skills; make your talents and availability known to friends in the industry and try to maintain some kind of web presence so people can find you. A business card makes you much harder to forget. It’s all about the surface area – the more visible you are, the more people will think “aha! I know a guy who can do that”.
Expect to spend a lot of time chasing work – particularly contracts, where you will need to deal with agents.
Genuine consulting is hard to chase. In my experience clients come to you based upon the recommendations of others. Some of this work will be great (“Can you come in for three months and build us a new web platform?”) and some of it will be utter crap (“My ten year old unmaintained mod_perl website made by a guy in the back of the pub has been hacked, can you bring it up to date to run on a modern PHP server at the far end of a 9600 baud link? In half an hour? For free?”).
Always prioritize good work over crap (duh!) but if you’re going through a slack period don’t be afraid to take the odd bit of rubbish. It won’t make you rich but will still raise your profile – and more people knowing you exist increases the odds of a recommendation in future. If you have plenty of good work to do, don’t be afraid to fire a crap client. Saying “no” may often offend but you’re a business, not a charity. Go on, practice it in front of a mirror.
When starting out it’s best to land a 3 or 6 month contract. Through it you’ll make contacts with others in the industry and learn a lot. If you’re sensible you’ll also save some money and once finished you’ll be in a better financial position to rely on genuine but potentially irregular freelance work.
Needless to say there’s should be nothing to stop you freelancing for many clients at once. Or perhaps in unused time you’ll develop products under your company’s name to sell directly to customers. If you do, awesome. If they need hosting bring your money to me.
Ah, agents. I’ve heard of them. Are they my friends?
When chasing contract (but not genuine freelance) work you will inevitably come across IT recruiters, aka. agents. What follows is my (cynical) appraisal of the relationship. I hope none of them Google my name and read this.
Normally when you work for someone, they employ you. Legally the relationship is like this:
You <--> Employer
Labour flows from left to right, money from right to left. Simple. But when working through an agency – as most contractors do – it tends to be like this:
You <--> Your/Umbrella Company <--> Agent <--> Client
When it works to plan this means a few things. “Your” legal relationship is with the agent who in turn has a contract to supply services to the client. Unless your contract specifies otherwise & assuming you turned up at work then submitted an invoice it is the agent’s responsibility to pay you on time, irrespective of whether the client paid them. The agent will charge the client slightly (e.g. 10-20%) more for your services than they pay you – this is how the agent makes a living. Even if you see the client every day your agent’s contract will probably ban you and the client from ever figuring out what their margin is.
Some agents you’ll find reasonable. They will return your calls, take a genuine interest in your career and out of some sense of human decency make vigorous attempts to secure you challenging, gainful employment. More often than not these are the ones with Northern accents. When your CV fails to secure an interview they’ll drop you an email saying so and perhaps include a few tips on how to do better next time. Signs of a good agent are that they want a long chat before putting you forward to a client (i.e. they want to be sure they’re sending good candidates) and that they explicitly ask – particularly in writing – for permission to represent you.
Outside the unicorns-and-kittens dreamland in my head most IT recruiters are not like this. Here are some of my experiences over the last 3 years:
- “Oh, yeah, I skimmed your response to my [unsolicited] job spec email but you you’re contract and the role’s permanent. I just didn’t put that on the spec.” – “And, having already wasted my time and not even read the first line of my CV where it says ‘contract positions only’, you didn’t have the courtesy to reply saying so?” – “Errrrrr, sorry, nah. <click>”
- “You don’t know me but I’ve just secured a great opportunity for you at $investment_bank” – “So you’ve grabbed my CV from a job site and represented me to potential clients without permission? Dude, that’s fraud.” – “I was only doing you a favour mate”. [This really happened!]
- [After a 20 minute phone interview] “Oh sorry mate, did we advertise it as contract? It’s permanent. So will you do 20k a year in Dorking anyway?”
75% are time-wasters and shysters. Sorry to any nice recruiters who read this – you do exist – but it’s a profession with a real image problem. There was a great Hacker News thread on this lately.
A friend tells a funny anecdote. At a networking event his company (successful programming house writing trading systems) asked several agents “What about all the horror stories you hear?”. Each mumbled, looked around and responded along the lines of “Yeah well, it’s all them other agents, innit”.
The thing to remember is that, basically, recruiters work for themselves. Whatever they say they don’t really have the client’s interest at heart and they certainly don’t have yours. They have no real incentive to place the best candidates in the most appropriate roles, to make friends or to act with integrity – it’s all about getting a bum on a seat before some other recruiter beats them to it.
Here’s a handful of tips for dealing with them:
- First of all, until it’s proven otherwise try to assume the best. Maybe you’re dealing with one of the honest 25%.
- Counterintuitively, don’t publicize your CV too widely. If you upload it to a job site take it down again as soon as you’ve secured a position. Otherwise some cowboy you’ve never even heard of will use it to represent you to clients without asking. This is damaging; as a freelancer it reflects very badly if a client receives your details from more than one source. Most will bin them rather than risk getting involved in an “I saw him first!” battle between two sets of headhunters.
- It’s good to talk. At heart recruiters are salesmen, not nerds. They love to launch into a sales pitch on the phone; they hate emails. By all means apply for contracts online or email in your CV but always, always follow it up with a call. If they haven’t listed their number on the ad track them down and call them anyway – they’ll be impressed with your drive. Many may not send emails because they’re uncomfortable with the constraints imposed by putting things in writing, i.e. having to tell the truth.
- Some just love to waste your time. Once an agency has hold of your email address they will never, ever stop sending you inappropriate jobs. No matter how often you tell them “I am only interested in contracts in $city for £x or over” they will go on sending you crap. Probably they just searched their “database” for a couple of keywords and mailed the spec to every poor sap who came up. When the market is busy they’ll call you with crap, too. Here’s a tip: make like a drug dealer and maintain a separate email and cellphone for dealing with them. When you’re not looking for work, switch them off.
- Corollary to that: if it isn’t on paper (or least an email) it ain’t true. Even if verbally told “you stormed that interview, they’re totally going to give you the contract” don’t stop looking until you get a real, legally binding commitment. Be polite but firm about it.
- Clients dick them around too. Weeks after applying for a contract it is not uncommon to hear the mournful response “the bastards kept us hanging on for weeks then filled the post internally”. This may well be true; some clients have a near-pathological hatred of recruiters and will only use them as a last resort. Nevertheless all jobs seem to be advertised through recruiters. No, I don’t understand how this works either.
Why do clients use them? Simple, even an awful recruiter will filter out the really bad CV’s – for example those not in English, with the wrong skills, bad attitude or clearly written by a moron. A few years back, as an experiment I tried advertising a job directly (IIRC we used monster.com and CWJobs). Intermediate-level sysadmin, permanent, flannel about the company, list of required skills and the usual boilerplate “no recruiters, must be eligible to work in the EU”. We had hundreds of responses and most were complete no-hopers. Not so much as “inexperienced but hoping to gain some” as “I move here from Outer Mongolia work for you yes?” or “plz u send money now!???”. Total dross. As a competent hacker you’ve never met them but there are a lot of people out there who are not good at IT to whom it seems an attractive career – and they’re banging on the doors begging to get in.
Agents are paid to fill a position, not to be your mum. Don’t expect any favours.
Structuring your business
The UK tax and law system is fairly amenable to small business. Things could be better (there’s way too much red tape) but they could be certainly be much worse. It is fairly easy for an individual to set up in business.
But if you’re just starting out as a contractor/consultant/whatever you don’t absolutely have to. There are plenty of accountants who specialize in handling the affairs of small-time contractors and they’ll have a solution.
It’s called an Umbrella Company. The idea is that legally speaking you (and several others) are its employees. You do work, tell the accountant operating the umbrella company what you did and who to bill and finally, when the client/agent pays, the umbrella company pays it on to you. For the service you’ll pay the accountant a fixed, recurring amount.
Umbrella companies have pros and cons. For reasons I’m not qualified to explain they’re the more expensive way to freelance – you pay just the same amount of tax as a regular employee earning your rate would, plus a small set amount for the umbrella service. On the other hand the company is totally Not Your Problem – the accountant is responsible for all its tax filings, declarations and [hopefully] insurance. If after a few months the lifestyle isn’t for you, you can walk away.
Eventually you’ll figure out whether or not you’re likely to remain a freelancer. It took me six months, there isn’t any hurry. If you’re going to stick with it and if your contract falls outside of the wildly unpopular (& hopefully soon to be abolished) IR35 legislation you may be able to pay much less tax by selling services through your own company. If you buy equipment for doing your work you can expense it. A good accountant should do much of the company’s administration for you; expect to pay a moderate setup charge plus £100-£150 a month for running it. Oh, and don’t spend all those nice dividends because at the end of the year you’ll need some for your tax bill.
Pick your accountant wisely. As I found out to great cost last summer an incompetent one can cause a lot of pain. When selecting one meet them face to face at least once – is this someone you’d trust to get their sums right? Avoid accountants with glitzy websites making claims about how much tax they can save, it may well end in tears and an huge unexpected bill from HMRC. Or worse. A conservative accountant is a good accountant.
Join the Professional Contractors Group. It doesn’t cost much but the political lobbying, free legal advice and insurance against tax investigations are worth their weight in gold. And the membership is a legitimate business expense so your company can pay for it, not you.
At this point I’m going to drop in a plug for my own accountant. I’ve been with Trafalgar for a year now and they’ve been extremely helpful, professional and reliable. Plus they’re nice guys. If you’re in the UK and want an umbrella service or small company give them a go.
How much can I earn?
Depends what you do! The main variables here are your skillset and experience. As a rough guide in London…
- A senior contract/freelance PHP coder is worth £300-350p/d. Junior £200-250 if you can find the work.
- A senior C/C++ coder is worth £350-500p/d. But anyone with an app important enough to write in C/C++ is unlikely want junior staff on contract at all.
Outside London these figures will be lower.
If you’re willing to cut your hair, buy a few suits and swallow your pride you can make 25-50% more in finance. The banks pay more because money is inherently boring, they have lots of it to give away, there is much domain-specific knowledge required (ever priced a derivative?) and you’ll need to buy a yacht/mistress to avoid going mad.
People tell me it’s risky!
Yes, some people will tell you this. They will be telling you this for one of three reasons:
- Being master of your own fate is inherently risky. You must actively find your own work, manage your clients and chase people to pay your invoices. There will be slack periods – sometimes for months – where you have little or no income. Perhaps they think you’ll enter the market and sink like a stone. If you aren’t the ambitious go-getting type they may be right.
- They lack the balls to go independent themselves and rationalize it by believing freelancers all starve. It is true that some do; others may be better equipped to pimp their skills in the market and they tend to prosper.
- The wage-slave mindset is so deeply ingrained they can’t even conceive any other mode of working. They’re used to the routine, the steady moderate income every month. They like pension plans (& in the US, healthcare) and the feeling of being looked after. Go independent and you will lose this.
Finally – is it worth it?
Honest answer? It depends upon who you are.
If you want a quiet life – a reliable wage packet, training courses, a pension, a consistent environment, a predictable commute and what passes for job security – it isn’t.
If you’re an independent person – you’ve a constant need for new challenges and, crucially, want to take responsibility for your livelihood & career development in return for bags of freedom then yes, freelancing may be for you.