Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I've been freelancing for ~4 years, "properly" for the last 2. This is what I have found works...

Your very best clients will come from personal recommendations. Avoid close friends recommending you; one of my first clients was recommended by a close friend, and you feel an obligation to both the client and the friend. Not fun - especially when you make a cock up and the friend calls you to say they are a bit let down. At least without the friend in the equation it is only your professional reputation at risk :)

But good clients come from acquaintances. My very best clients (around 5 regulars) come from a single friend I knew at university - they are marketing person with a big network. I didn't know them very well but they recalled I did software engineering, and got in touch a couple of years after we graduated with a client in need of help.

Tip 1: Check your wider network for possible good "contacts" and tap them for work. You don't have to be embarassed, they weren't that good a friend!

Avoid freelancer sites for the most part. You can get good income from them, but lets face it; you're looking for fun and varied work, with great money and time to call your own. Freelancing sites don't do that for you. They have limitations. You tend to find yourself grinding for work, which you then have to offer competitive prices for. People who post work to freelancer sites are often looking for value, not quality. What are you offering?

Especially this is important when starting out. I had a false start way back 4 years ago when I spent a week looking for freelancing work on those sites & failed dismally. So I went back to my day job.

Tip 2: Ignore freelance sites, mostly. At least till you are established

Learn how to sell yourself - and learn new skills! I started out as a "PHP developer". Screw that - now I am a "Full stack software engineer". I learned how to set up a server and optimise it for load. When a client I had previously done a days work for rang up, months later, in a panic because they had a flood of traffic and couldn't cope... I didn't have to turn them away, I knew how to get them up and running.

Use the right language; You. Are. An. Engineer. That is a skilled consultancy job. Don't undersell yourself as a code monkey jobbing for work. (of course, you then have to live up to that promise)

Tip 3: Learn new skills. Market those skills

Other good work comes from recommendations - these are the best because if someone has been told "Tom gets things done", and they call me, then they are already sold.

The way to make sure you get good recommendations:

- Be 100% professional and competent. Make the effort to write properly in emails, and to include an email footer etc. Little things that make you stand out as capable.

- Get things done. If it's broken, don't waste time. Fix it, then email them the result.

- Be pro-active. If I get a client ring up with a possible project I immediately follow up with an email summarising our phone call - adding some ideas if I can. It shows commitment to them as a customer in a way that adds value to the relationship (without costing them...).

- When the customer calls at 9pm with an emergency, don't fob them off. Fix it. They will happily pay your overtime rates (I once charged a customer £100/hr for overtime emergency work when the normal work I was doing for them was at £45/hr. And they gave me an added 50% bonus because they were so grateful)

- Genuinely offer "full stack". I designed a simple site once, sent the HTML and told them to FTP it to their web host.. the reply was "do what? do we need a domain address?". Clients want you to make things work for them; registering domains and FTPing files is menial in terms of your skill level - the client has no concept of this :) (#1 freelancer rookie mistake).

Tip 4: Be accessible, competent, pro-active and GTD!

Don't worry too much about your website or online portfolio. It's actually a distraction. Find work pro-actively - passively obtained work, unless you are marketing yourself beyond just the website, tends not to be as good!

Tip 5: Find work, don't let it find you

Contact design agencies and recruiters in your area. The latter will annoy you with lots of irrelevant calls ("We have an excellent full time role for you in the Aberdeen area" - uh, hundreds of miles away doing data entry you mean...) but I have also picked up some excellent clients through them. If someone is going to a design agency or recruiter then they have money to burn, and are often looking for a premium service.

Tip 6: Recruiters have clients with cash to spend

Go local. I canvassed my area for small businesses etc. that might benefit from a website. I threw together a leaflet & microsite, plus revamped my own CMS code... and spent a week dropping leaflets through letterboxes. It's good business because I can sell them a design & host package which brings me in half a days work plus yearly ongoing revenue (as it stands, I charge £65/year for domain, hosting and support & have 25 customers with several more interested. In hindsight that was too cheap, I could have gone to £100/yr I suspect.)

This might sound like small change, but the work is regular and if I don't have a "big" contract in a week I can usually fill it with this sort of work via a few phone calls. A couple of the customers have followed up with fully featured website (i.e. booking portals etc.) which earned me good money.

It will surprise you how many business are in your local area - and how much money some of them have to spend!

Tip 7: Look for work locally

That might sound like boring work for an engineer; but it's kinda fun, and very varied. It has also helped build up my design skills to the extent I could tentatively justify calling myself "designer" as well. The next idea I am working on is to partner with some local business improvement initiatives to run "internet" workshops and other technical training sessions for businesses. The first class is at the end of November and it is already oversubscribed - my profit should be > £5,000 for a days work (plus a 3-4 days reusable prep).

I also just launched, locally, an intensive "educate your company about the web/internet etc." consultancy. No clients yet, but some interest.

Tip 8: Diversify

Hope that helps (I know I drifted a little off-topic :))



Another thing. A freelancer starting out and one who is "experienced" are quite different scenarios.

I have loads of work that I don't often have to chase, because I have a profile.

Starting out you need to do the legwork to find clients. Think outside the box in contacting people you think could find you work. It will not come find you.


To add to your tip #7: Get to know your local user group. Google "PHP/Python/RoR/etc [Insert City here]".

They might be doing monthly meetings, code sprint, bug squashing parties, or just enjoying a beer once in a while. That allows you to stay on top of what is going locally, get to know other freelancers, grow your network and have fun!


"Python slithers into Fort Myers yard"

Damn.

In all seriousness, most non-major areas are very lacking in things like this. My area has none that I can find, and I tried to expand even to just general programming meetups.


"Find work, don't let it find you"

Why not let it find you as well ? If you have experience and the right skillset, you will usually be found more often than you finding work yourself. I usually get good gigs in my industry by getting found a lot more than finding.


I agree to this. All of out-of-the-blue invitations to do something proved to be a scam, one or the other sort of - most plainly visible, but others more painful. So i never reply for job offers i get unexpectedly from people i don't know, and i never work for anyone writing to me in Russian.


Yeh, that didn't come out quite right.

I mean; a lot of freelancers seem to write a nice looking website and hope that some SEO magic will bring in work.


Yes agreed on the SEO magic point. It takes a whole lot more.


If you have a good network and get jobs from referrals then the job eventually finds you.


Great post!

I would just add - keep a library of your own design/code snippets. Developing my own CMS system made my work a lot faster on a long run.

I also always explain to my non-tech clients what technology are we using and why some things take more time than other ones. It makes the communication easier, they learn something on the way and during our next project together I can always refer to it - You know, just like last time, if you want to completely reshape structure of the database, it might take a few minutes.


Thank you for your incredibly detailed reply. Tip #7 does not work for me as I am located in a country surrounded by minimum wage workers, and the kind of work I am getting locally is also quite subpar in terms or pay and expected/required quality.

If anybody on HN would like to hire a highly capable and skilled full stack freelancer, I am open to small and large scale work. Please email me at protoweek at gmail. Thank you! :)


Those workers are employed by someone! :)

But, I do sympathise. I'm fortunate to live in an area where a lot of small businisses are around and about, and where widespread access to the internet means websites for local firms is actually a good idea.

But that's not the only local diversification!

I once taught programming lessons, for example, to people. That was kinda fun and challenging.


Great tips, I'm a full stack dev at a big company and never even thought about giving freelance work a try until this




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: