- Pros and Cons of being a freelance developer
- Gaining work experience
- Find customers
- How to become the perfect freelance developer
- Leaving the office
The idea of leaving a safe job and a fixed salary is probably one of the scariest possibilities any kind of worker can face. The guarantee of a reliable income at the end of the month offers a security which can help you to put down roots that may become very hard to rip up.
Who are Freelancers? They are people who specialize in one or more areas, and help and support companies intermittently by offering their services as consultants.
A Freelancer is a self-employed, independent worker who can choose to work for a single client for a fixed period, or for multiple clients at the same time.
The IT industry is a very suitable field for a freelance lifestyle with numerous options for SEO consultants, social media managers, developers, designers…
In this article we will look at the best way to tear up your office roots and dip your toe into the world of self employment, commonly known as freelancing.
Pros and Cons of being a freelance developer
Becoming a freelance developer is not for everyone: as developers we tend to become attached to the projects and companies we work for, so we are used to thinking about working arrangements from a long term perspective, as well as participating in team meetings, joint brainstorming sessions on the office whiteboard, and coffee breaks spent discussing new technologies with colleagues.
Pros in the life of a freelance developer include:
- The chance to work with many different technologies;
- Opportunities to expand your competencies and choose which technologies to work with;
- The chance to develop a significant active income, in comparison with a developer tied to a company;
- Opportunities to work for companies and on projects located all over the world, without having to travel. Many freelancers work from the comfort of home, or from another location of their choice;
- More time to dedicate to your personal projects: as developers we are used to pursuing personal projects, which often involve using new technologies to familiarise ourselves with them. Unfortunately, most of the time these personal projects do not become concrete realities, but remain unfulfilled ideas within our mental archives;
- Taking your time back: the average commute to work uses up around two hours per day for the journey alone. That’s before we begin to think about traffic jams and delayed trains, or the alarm clock that rings too early in the morning on cold winter days!
- Becoming a freelance developer means that you can work from wherever you like. This means you can manage your time and your schedule so that you have time to devote to non-work activities, and needn’t begin your day in heavy traffic or trying not to hit ‘snooze’ on the alarm clock twice because it’s too cold to get up!
Cons of working as a remote developer include:
- You will probably work and manage your clients on your own, without the option of sharing your activities with other people. Your responsibility for projects will increase, and you need to be ready to manage every kind of eventuality;
- Working alone means no colleagues to share typical office moments or know-how with, and no internal training – you will do it all on your own;
- Working as a freelance developer means finding your clients yourself. You have no guaranteed work, no permanent workplace or reliable salary, it’s just you and your technical competencies;
- You need to stand out from the other freelancers in your specialist field. This may not be easy, especially considering that you will have to compete with other web developers from all over the world, many of whom may offer cheaper prices due to lower costs of living;
- Building your online showcase is essential to get noticed on the web; you must find your niche and work out how best to communicate with potential clients in order to succeed as a freelance developer
Gaining work experience
The best way to become a freelance developer is to first gain suitable work experience.
Build your career with well-known and interesting companies where you can develop a reputation, learn the job and experience the reality of working in your field.
Handling complex dynamics, working in a large team, and analyzing and solving problems for major companies will all help if you want to become a freelance developer.
Acquire a wealth of professional development experience, and get yourself known within major companies – their names will become part of your ‘business card’, especially once you’re in competition with other freelancers within the market.
Even with these elements under your belt, it will be an uphill path. It’s possible to start your career as a freelancer without so much as a year of work experience, but you will be in competition with experts and people who have gained experience in all kinds of projects, so it may be a struggle. However, it’s not impossible, and we will explore how to succeed with this approach later in this article.
Freelance work is based on building a customer portfolio which allows you to have a secure income every month.
The main obstacle faced by people who want to pursue a freelance life is the question: “How can I find a work as a freelance developer?”
First of all, being freelance means you need to interact with people, establish relationships, and build a network that will reach out to you with opportunities to collaborate or work.
A freelancer must have a great professional identity, including a sparkling resume full of work experience and technical competencies. Your online presence is essential too – consider this your ‘business card’: a LinkedIn profile which mentions past projects and clients, a website or blog that presents professional accomplishments, and a portfolio full of work that prospective clients can view.
Once you have created your virtual business card, you have to find your customers. People who are not used to freelancing tend to search on the same few portals that offer short-term projects, which are usually full of low cost developers from other countries.
The best channels to use when looking for customers are often non-conventional ones; take a look on LinkedIn or Facebook, in groups for startups or developers where someone may be looking for people to work on a freelance basis, or on other unconventional platforms that might have relevant opportunities for freelance developers.
How to become the perfect freelance developer
There is no particular secret to becoming the perfect freelance developer, but here are some very useful tips:
A freelancer must have some soft skills
You will need to interact easily with people who work in different fields, such as Accounts, SEO, or Marketing.
Sometimes you may be the only developer on a project, so you will need to receive input from different sources, interact directly with the CEO of a startup, or explain technical problems to people who are not IT specialists.
On other occasions you’ll be part of a group of developers, and you will need to use your past experience of working in a team.
You have to be organised
You will work on your personal laptop, so be tidy. Your personal and professional life will be combined onto one computer, so it’s important to optimise the organisation of your work activities into folders and documents, with files grouped by customer.
Use a clear and cohesive classification system for everyone you deal with, so that you can manage all documents, invoices, codebases, and communications with your clients as simply as possible.
You have to be able to handle a customer portfolio
In a single day you may receive tasks to do, reports, messages from two or more customers… You need to ensure your presence and performance keep your customers secure and happy, with rapid responses and clear timelines to deal with the issue at hand.
You must be reachable
Always, in any eventuality. If you want to be good at your job, work out how to channel all customer contact and requests through one or two platforms.
You must be adaptable
You may become part of an existing team that already has its own ways of using devices and platforms to work, communicate, and handle activities. Depending on the team you are working with, you might be using Gitlab, Jira, Asana, Trello, Slack, AWS, Google Cloud, Github, Bitbucket, or Keybase, for example.
You have to manage your time
You might have become freelance because you want to be free during the day, but be careful not to allow your new lifestyle to transform into a nightmare. Figure out when you need to work and when you can enjoy your life.
Remember that freelancers are often seen as “the worker you can always contact”. During the day, or in the evening… you may be contacted or called at any time, and you must be available to answer client queries, or manage emergency tasks.
If you get carried away looking for more and more clients, freelancing may do more harm than good to your work-life balance.You don’t have to limit yourself to just one client, but if you find you have too many jobs to handle, you may decide to quietly delegate the ‘most demanding’ client in terms of time, or the ‘least profitable’ in terms of money – or maybe simply tasks you don’t find so interesting – to junior developers.
Keep your online presence up to date
The most important thing – and many people overlook this – is to keep your online showcase up to date.
Every time you work with new clients, make a note of feedback and reviews of the work carried out that can be published online when you update your website, blog, or other showcase with your most recent work activities.
Keeping your online presence current in this way ensures that you have plenty of up to date experience and feedback to show to potential clients.
Find your niche
Identifying where you fit within the market will help you to look for clients, and to communicate with them in the best way possible.
If you know exactly what you are referring to, which problems you are trying to solve, and what needs potential clients are likely to have, you will know which channels to target when you are looking for customers, and will be able to position yourself as a leader within your specialism to attract the kind of clients you want.
Work on personal branding
According to Simon Sinek, a leading writer on the themes of communication and leadership: “People don’t buy what you do; they buy why you do it.”. When you excel in a particular area and become a specialist in that field, you also have to be good at communicating your knowledge to your clients.
Communicating your expertise and passion online is essential to establish yourself as a leader in the eyes of those watching and following your progress, especially for freelancers who work remotely, but is even more important in reaching prospective clients, who need to be convinced that you are the person they need, ahead of every other freelancer.
Leaving the office
If you’re already writing code from your office, you can start to work on defining your professional identity and creating your virtual ‘business card’.
Get online and look for channels that will help you to make a start – time permitting, you may be able to make some extra money working as a freelancer after you leave your job for the day.
At first you will work more than you used to: you may do an extra two or three hours a day from home that will give you extra income, and will also provide a starting point for the months to come.
Take this opportunityto gain experience in maintaining relationships with your clients, in how to prepare quotes, and handle collaborations. As you build more partnerships and discover more channels that bring you freelance work, eventually you will be able to uproot from the office and take the first flight of your new life as a freelance developer.