“Freelance developer” sounds like the easiest gig around. Make your own hours, work with whomever you like – what’s not to like?
It’s great, but not all fun and games. There’s a lot nobody tells you about working for yourself, and it goes well beyond being your own (terrible) boss. The daily freelancing workflow is actually best suited to a certain kind of developer. With all that in mind, here are five things nobody tells you about the job.
You Have to Sell Yourself
When you’re working for yourself, who you are is just as important as what you produce. Your days of passively listening in listless boardroom meetings are over. Now, you have to hang on every word your client says.
It’s not so much that you need to know what they want; it’s that you’re always in the process of selling yourself. If you seem disinterested in a single meeting, it can affect your client relationship long-term. A lot of business comes from referrals; the last thing you want is one client telling a friend: “They built my app, but didn’t seem to like what they do.”
If you’re in public, representing your company, you’re “on the clock.” There’s no more hiding or taking a break. Meetings, events – it doesn’t matter. Who you are is just as important as what you do. (The same can be said for social media; your days of the ‘opinions are my own’ tag are over.)
Life is a Business
Sure, you can work from that cute little bungalow in Hawaii for a few weeks or months, but should you?
More to the point, can you afford that? Is that a viable business expense? Remember, when you’re freelance, just about everything you do is a business expense. Most freelancers do business via an LLC, which provides pass-through income. Essentially, every move is either business or pleasure (and you’d rather it be business).
Jeff Somers, President of Insureon, told Dice that developers will also probably want to carry professional liability insurance:
If a client claims you messed up, your professional liability insurance can help. This policy can pay for legal expenses if a client sues, claiming that you delivered a project late, incomplete or were otherwise negligent while providing services. Many client contracts will require you to have this coverage. Even if they don’t, carrying this policy can convey the message to potential clients that you are a professional, making them more likely to sign on the dotted line.
It’s a lot to take in, but it’s all true. That working vacation sounds great, but do you have the workflow to warrant it? Have you expressed to clients that you may work from a different time zone? Can you deliver on-time while traveling? It may not seem like working on the beach and liability insurance are connected, but when you’re a freelance developer, everything is.
Pay Up, Sucker
Insurance is great, but there’s no insurance for terrible clients – and you’ll have them. They want the world for free, and hate to pay for the work you provide. Your instinct may be to get the work done so you can get paid, but these clients don’t deliver on their end of the bargain.
And if they don’t deliver, neither should you. A smart move is to have several dates for deliverable product, and get paid incrementally at each stage. It’s the proverbial carrot-on-a-stick; you’re dangling their product just out of reach, enticing the client to do the right thing and pay you for your work.
This is also where contracts come in handy. If you’ve laid out and agreed to dates for payments and deliverables, there’s no wiggle room. If they don’t pay, they don’t get anything. It’s that simple.
Repeat Business is Important
A lot of freelance developers consider clients as singular engagements. They build them a website, app or service, and then never speak to them again. This is bad.
Tech evolves constantly. Even databases, which can be terribly boring at first glance, are morphing all the time. Freelance developers are better off communicating these changes to past clients as a means of enticing repeat business.
It’s not always big jobs, either. A simple example is Face ID, Apple’s latest biometric authentication protocol. Apps support it automatically, but in-app language may say ‘Touch ID.’ The process of parsing users’ devices and showing the appropriate language isn’t hard, or necessarily time consuming; for developers, it’s a ticket item that can pay off.
When freelance developers see changes like Face ID that can affect clients, it’s a good time to drop them a line. Quickly communicate the change, and offer to chat with them to keep their app current. Maintenance is as important as the initial build.
Freelance is Not for Everyone
Freelancing sounds amazing, and it is – but it’s not everyone’s cup of tea. Some people lack the discipline to work a schedule, or sell themselves as developers. Somers recommends moonlighting at first. “One of the best ways to test the waters is by moonlighting while you still have a job,” he said. “Not only will this allow you to gradually land enough clients to support your business, it can also help you decide if you are ready to take the plunge of being a full-time entrepreneur.”
Accept your limitations. Maybe you’re not comfortable with unsteady income. Perhaps you simply don’t want to build anything besides that weird 8-bit video camera app you’ve been tinkering with. It could be that you just don’t want to talk to clients and listen to their wishlist items while subsequently crushing their dreams by telling them how much it will all cost.
Freelancing is amazing, but it takes a special kind of person. You have to be a deft negotiator and a willing collaborator while remaining a voice of reason. If that’s a tightrope you can walk, we say give freelance development a shot.