lessons learned from my freelance
nine some years ago, I started wearing my freelance hat as a software developer … it started as simple tasks to become now a full professional activity to design or build full systems.
I was observing my friends and colleagues that were willing to start their own startups and be their own boss, except that the adventure was successful for only some of them and a nightmare for most of the others.
I admit that I didn’t make freelancing my main job but I managed to work properly as an existing
I’ll try here to share with you what I learned to build that “startup” and how earn a respectful income.
notice that this is not a guide about entrepreneurship or the best steps to follow to build your startup.
1. save as much money as you can
this is the first step to do on your checklist.
without money you can’t live or pay your bills.
if you were never able to manage by yourself your own incomes, you have to learn how to.
running out of money is the stress of all stresses and believe me this is the last thing that you want when trying to do good work.
2. do you know a lawyer ? an accountant ?
a girl someone to proofread your documentation? a designer ? a cook ?!
as an IT guy, and even if I was aware about all the laws, the taxes and the linguistic perfection, I was not able to find time to do all the needed steps, visits, calculation, reviewing or whatever (and I admit, I’m too awesome for paperwork).
I wanted to focus on what I know and “delegate” what can others do for me (and pay them if necessary).
one of the most important steps when you start freelancing is that you have to understand that you can’t do all the stuff by your own, asking for help is not a weakness.
3. master your tools
you’ll never ask a baker to repair your plumbing… so don’t be like a baker facing a customer asking you for a technology that you never heard about.
if someone calls you, it’s just because you showed somewhere your ability to fix his problem with a specific tool, process or advice.
try to not accept jobs in unknown fields for you, remember that your reputation depends always on what you really master.
but, keep a few good business and training books nearby to read and learn from whenever you have free time.
4. make your branding and … show off
your friends know you by your name, your nickname and that’s what connect them to you.
as far as that goes, professionals need to identify you too.
try to create your branding by using a name, a color or an attractive nickname that lets a potential customer be interested.
once you decided what will be your “professional” identity, buy a domain name, maintain a professional well designed website, feed your social network with information about your branding, update your bio everywhere, make business cards, make a professional mailbox, stamp it on your slides/speeches, make stickers, badges … unveil your existence.
be presentable, accept to wear a suit and a tie, be present in the network, make presentations, speeches, be part of an active group or association … smile but be humble.
5. get a desk and prepare your weapons
you are an IT guy, you need a strong internet connection,
you are a software guy too, you need a [good] laptop and available supplies … remember to renew them,
you are a professional, you need a good desk/table with a good chair to work for long hours,
you are a developer, you need a VCS (git…), continuous integration platform and an external backup drive,
you are a senior, you have to establish and maintain a top quality process,
you are an architect, you need a whiteboard and you have to be aware about all the constraints,
you are a project manager, you need a dashboard,
you are a PR (public relation), you need to keep an eye on what’s going around and be present when needed,
you are a sales agent, check for the offers,
you are a CEO … go and make money.
6. your customers are assets, maintain them.
it’s obvious, you can’t get paid if you don’t have customers.
and your customers won’t pay you, if you deliver a bad quality work.
don’t over promise, just set and make clear about what you can deliver.
your word is a part of your reputation.
learn too, to maintain a long term partnership with your customers, by offering your services and attention and make them feel you are ready to help them succeed and develop their business.
7. be available for your customers, show your availability for the new ones.
a customer who waits endlessly for your reply mail is lost.
a customer who can’t get a fix or a good answer to his problem is lost.
a customer who can’t reach you by phone/skype is lost.
remember that this is applicable also when your old customer is thinking of you for his next project.
availability doesn’t mean answering/reacting instantly, but means that you show that you care even if you don’t have the answer.
8. organise your time/agenda, your tasks, your work
I’m always defending that engineering is, in some way, an art of organization.
independently of all the standards and methodologies, adopt what you think is the best for you to organize your agenda and your work.
start with a calendar, learn to set/share your appointments with your contacts.
always check your calendar to set the next rendez vous, to mark the deadlines and to see your availability.
remember to set time between your rendez vous, teleportation is not yet available.
always handle a notebook when you are with your [potential] customer, note everything he says … your memory isn’t a tape recorder.
mark your thoughts and ideas somewhere, make them handy and viewable anytime.
use stickers, draw your diagrams using colours, organize your hard drive by customer and by project.
9. know the boundaries
you are human, you have to eat, pee and sleep.
don’t forget to get rest and refresh your ideas frequently.
don’t negotiate/accept a work that must be done for yesterday.
your skills have limitations too,
don’t forget to think about how to extend and develop yourself.
as I said above, you can’t do everything by yourself,
try to be surrounded by reliable people… they’ll help you and they’ll refresh up your mind.
I knew once someone who was working, chatting with his girlfriend about their last argument while watching his favorite team’s match… seriously ?
I always tried (yeah, it’s difficult) to focus on one thing at a time…
being calm and focused are always needed when you try to deliver an answer, a work or a solution … even if you are trying to resolve your problem with your girl ;)
11. a customer is not your friend, even if he’s your friend.
be professional, always …
working for a friend gives you advantages, but don’t abuse ;)
deadline, top quality, reactivity and cost are universal needs
12. use the proper language and jargon
your customer is not always a young geek who wants the last gismo to impress his competitors.
learn to listen, carefully,
understand what he wants to say,
feel his problems/needs,
put yourself in his place,
help him to make his decision,
ask [stupid] questions,
make your ideas clear,
and do make yourself understandable, what seems easy for you is not necessarily seem easy to your customer.
13. love it or leave it
you hate waking up early ?
you hate client management ?
you hate be stressed or panicked all the day or the idea to not be able to survive ?
you hate running all the day or making a bad decision ?
you hate debating and setting priorities ?
you are afraid to be bankrupt ?
you hate sales and all the paperwork ?
if so, then find another job. don’t play with people’s money and trust because you’re afraid.
14. work for free or full price, never for cheap
this is one of my life’s rule, but it means in the same time to set the right price for the right activity.
your customer has constraints, budgets and expectations … and the price/cost is the most important for him, otherwise he can look for cheaper.
remember that there is always who will think that you are expensive … but remember also, you are selling your values to the client.
15. you are not a guru
even if you are really the guru, in front of a customer you are just a trouble-shooter that will fix his problem.
don’t go in endless blah blah vaunting your skills or what you will do … result and actions are the best to show them.
16. actions done can’t be rollbacked
think before accepting, sending a mail, committing a change, delivering a package.
what seems to be [too] easy can hide a lot of problems.
17. sh*ts happen, deal with it
a bad manipulation, a un happy customer, a dead machine, an unresolved problem/bug… a flat tire ?
remember that you work for a result, try to fix the problem, ask for help from other professional, inform your client about a possible delay and/or change.
panic is not good for your professional image.
18. get feedbacks
once the task or the job is done, try to quickly check the feedbacks from the customer.
is everything ok ? does it answer his needs ?
if everything is done, can you close the project ?
can you get paid ?
can the customer endorse you ?
19. what’s next ?
your project is done ? what’s next to do ?
you should never stop improve your work and ask yourself if you made the best decisions.
talk with people that can give you new ideas while you are helping them on their problems.
take some breaks to think about what was good and bad about the last experience, learn from that, fix the bad habits, make the good one more instinctive.
20. get motivated, refresh your ideas
you have to be aware that you will learn by your own.
try feel your independence and the strength that you gained.
understand the challenges and the ownership and feel the excitement for the next delivery, project, challenge.
do have fun, work while listening to your favorite music.
each freelancer is different in his way of working, processing information and handling clients.
I finished to understand that the more I do, the more experienced I become.
and by repeating and following the rules above, they become a routine, helping me to be more reliable and trusted.
a final hint though, there’s a bit of psychology involved when dealing with the customers providing them what they want… it’s just up to you to make that happen consistently and effectively.