- Advice
How to make it work as a freelance software developer
This is a post from a member of the Freelancers Union community. If you’re interested in sharing your expertise, your story, or some advice you think will help a fellow freelancer out, feel free to send your blog post to us here.
Freelance developers aren’t born – they’re decided. Anyone with the inclination can quickly become qualified for entry-level gigs via online courses, and more and more coders choose to go freelance because for them, the benefits outweigh the risks.
On one hand, you stand to earn as much as 2x the pay of a full-time developer, and spend your time however (and wherever) you want. But you also wear more hats. You become your own boss, accountant, and sales team.
Is freelance for you? It depends on how you build your business. Here’s how top freelance coders make the most of working for themselves.
How to find work as a freelance coder
The greatest challenge for most freelance developers is finding enough work. In the past, the surefire way for developers to find paying projects was through their network. Friends referred their colleagues, or previous employers took them on contract. This is still a great route. But new freelance marketplaces have also emerged that specifically serve coders and offer a limitless supply of gigs.
Take Subspace, a work platform that hosts projects where any coder can contribute. The community polices itself and developers are paid for advancing the code – not just writing it. So, as a new coder, you can participate in projects and build your skills by voting on others’ code. For fast-paced simple projects, freelancing platforms like UpWork and Freelancer offer thousands of low-barrier gigs for everything from iOS development to debugging, and on the high-end, placement agencies like TopTal and 10x Management will match you up with companies.
Here are a few strategies that have worked for me:
Don’t apply indiscriminately: Copying and pasting your resume to apply to as many jobs as possible is a waste of time. Clients can sense the insincerity instantly. Far better to take your time, find projects where you have a competitive advantage, and write a unique cover letter.
Do set out lots of lures: You never know what work platform is best for you. Create lots of profiles and see which ones earn you consistent, paying work.
Say yes and learn how to do it later: Many frameworks and languages can be learned on the fly. Don’t assume you aren’t qualified – take projects where you’re essentially being paid to learn.
How to land paying clients
Once you’re in conversation with prospective clients, it’s time to sell. Which, for most, doesn’t mean what you think it does. True sales is about matchmaking – not browbeating someone into signing a contract. Convince someone to buy something they don’t need and you’ve only set them up to regret their decision and created a lot more trouble than the pay is worth. Far better to think of yourself as a repairperson who fixes a few specific appliances and look for people who need exactly what you do. When you find that match, they’ll be happy to hear from you.
Sales often involves sending a written pitch and, possibly, a talking on the phone. People want to know they’re buying from someone trustworthy. To stand out from other applicants, send a personal video with your pitch (I use GoVideo, a free Chrome extension).
Never begin work without a signed agreement. Contracts keep both parties civil, and some of the few disputes I’ve ever had with clients occured when I thought there was no way anything could go wrong and I neglected to ask for a signature.
Tools for finding contract templates: Google it. Or, if you filed as a business with services Rocket Lawyer or LegalZoom, check with them for free templates.
Tools for getting your agreement signed: You can send a PDF and ask them to print it out and sign it, but that takes time. I find that it’s worth it to pay for an e-signature service such as DocuSign or EchoSign to get things settled quickly.
Do I need to incorporate to freelance in the US?
Nope. Anyone can be paid by a business as a 1099 contractor, you just have to claim that income on your taxes. But, if you’re interested in the legal protection an LLC provides, creating one is a good idea. (I did.)
How to get paid
Accepting payments from clients can be very simple – all you need is a bank account. I email PDF invoices to clients and cc their billing department. The invoices include my bank routing and account number, as well as my address. Clients either directly deposit the funds or cut a check.
To make those payments, companies may need your completed W-9 form on file and sometimes, a signed non-disclosure agreement. Send those once they’ve signed the agreement.
Some advice for getting paid:
Don’t work for free. For me, any client that’s ever asked for a “freebie” test project has never evolved into a stable, paying client. If you work for free, you’re devaluing your work and broadcasting that it isn’t worth anything. My best clients never asked for a freebie – they’re real companies with real problems who won’t hesitate to pay real money for a fix.
Always charge a 1/2 deposit up-front, especially with new clients. This protects you from clients that don’t know what they want, or who change their mind. If a client is hesitant to pay a deposit, you should be hesitant to work with them.
Learn when to charge by project or by hour. If the project has a known solution and you’ve done it before, consider charging by the project. Every employer has an idea of what’s a “fair” hourly wage but no idea what’s “fair” for, say, debugging an Android app. It could be worth a lot to them, and you’ll be able to charge more. If the project is a big unknown and likely to drag on, however, protect yourself by charging hourly.
Build a walk-away fund. Save money aggressively. Upwards of thirty percent of it is going to go to taxes and healthcare, because you have to budget and pay that yourself now – quarterly. The rest will allow you to build up savings so you can weather lulls and avoid having to take bad projects because you need the money.
In my experience, freelancing is well worth it. The higher pay, freedom, and ability to select projects that push me to learn is worth everything. And if you stay organized and run a tight prospecting, sales, and payment collection process, your added effort pays dividends.
What’s your experience with freelancing? Share in the comments below!
Joe is a data scientist and CTO for hire. Join his newsletter on the future of freelance software development.