Mastering The Art of Freelancing

Almost everyone has an entrepreneur hidden inside. At some point of life that entrepreneur inside will want to come out. That is why we all at some point of time definitely wanted to start our own business. Now that business may vary from person to person depending culture, capability or work domain. Also it varies by age to age. At my childhood I used to be a truck driver.

In a practical world Freelancing is a fantastic tool to play a role of entrepreneur . You can choose your own work and you can do it your own way. No boss to answer. No rigid office timing. No restriction on vacation. You are completely free and that is why it is called “freelance”.

Seeing the above advantages many of us started doing freelancing works. Some even started during our college period only. But what we saw for 95% is either they made no money, never got a job. Gradually got frustrated and gave up. Or some of us did a good start but gradually stopped getting much works. Also many of us still get jobs but less frequent and also low budget projects.

All the above can lead to potential frustration and disbelief over process of Freelancing and eventually we end up giving up.

By very careful observing over 200 freelancers (including classes of above list and also very successful) I identified some major factors that play role in Success of a freelancer. I will very briefly discuss them. Also I will discuss some key attributes that we need to maintain to become a successful freelancer.

Know Your Capability
This is a first and foremost requirement for becoming a successful freelancer. You must know your skills , your limits. Do not bid for a project that doesn’t meet your skill set or you cannot do for other limitations. Many people just keep bidding for projects that requires 2/3 skills that they don’t have. I asked them what are they going to accomplish the project if bid is won. Some said “We will manage somehow”. Some said we will give it at lower price to someone else”.
Now both of the above mindsets are not only completely wrong but very dangerous. Until you have proper skill sets required for the project or work you cannot foresee the upcoming challenges completely. As a result you will end up frustrating client and the project will be a mess.
Also for second case , who guarantees that you will get a person to do that project at lower cost with required skill set?  If you cannot find such a person after winning the bid, you will end up loosing clients time ,and possibly clients business loss.
So never go beyond your skill set and capability limit when bidding for a project or promising a work to client.
Ask till You understand Completely
This is a very critical and important criteria for starting any kind of work not only freelance projects.  Get your ideas clear well before bidding. Before starting bidding for a project first read the description 3 times again and again. Understand each and every word used in it. Understand each conditions and specialty asked for. For a single word if you have doubt ask upfront for clarity. The thumb rule is “Never Assume” anything in requirement. If you ignore a small word or if you miss any single requirement point that single item can change the scope and budget of the work.
For example in a project description it is said “After each transaction send notification to user”. Now it doesn’t say what kind of notification. Whether it is email or text messages to cell phone. Now if you assume it is email notification and proceed with that below are the consequences
  • During testing after your development is over client finds they wanted text messages to cell phone and not email
  • He asked you to fix it 
  • While fixing you found sending text message to cell phone is not that easy as that of sending email. It needs more complex coding , it needs time and more over it needs client’s subscription to premium  messaging services. 
  • Now at this either you have to go back to client and tell you need more time , more money and above all client needs to subscribe to some services 
I think you all can imagine what will happen next. 🙂
Make realistic Estimation

During bidding the most important task is estimation. Estimating time or effort required and also the money. As a freelancer we definitely want to make big money but that doesn’t mean we can quote anything. A good estimation mean it will benefit the freelancer as well as the employer.
Ask yourself the below questions before estimating

  • Have I understood the requirement completely?
  • Can I complete the work all alone without any help?
  • If I need any help do I have them available already?
If you get answer “NO” for any of the above questions stop there and work on making those answers “YES”. Then proceed for estimation.
Now when you get “YES” lets proceed with estimation. The first thing you need to calculate effort or time estimation. 
The simple but very common mistake we all initially do while calculating effort or time is we think of time or effort we will take to finish the work and create the deliverable. But this is not the right approach. Think  these scenarios
  • What if the product we deliver doesn’t satisfy the customer? 
  • What if there is a small bug that we overlooked and customer needs fixing it? 
  • What if customer finds it difficult in usability and cannot configure/install on target?
For all the above situations ultimately we will be gradually deviating from our estimation and at the end of the project if you look at it you will find you have deviated far from original estimation.
It is easy to estimate how long it will take for you to complete the work if only you are able to do the job by yourself. But what if it needs help from others? I had this scenario happened once. Let me tell that story.
I saw a project requirement for generating a Website for an online menu building for  restaurant. With my idea at that time I calculated time it will take for designing the database and front end script to implement the functions. Accordingly I did an estimation and did bid for that project. It was obvious I didn’t consider the effort for design. I just assumed I will get someone and that will just take X hours. So my total estimate for time and price was for X hours for design that someone else will do whom I had to find yet + Y hours of coding that I calculated. I won the bid and the very obvious reason for me winning the bid was my estimated X was dead wrong. Soon I realized it is difficult to get a designer who is willing to work on my estimated hours and budget. I ended up getting a very bad review for that project.

Respect Customer’s Priorities

The priorities of tasks in a project depends on multiple factors. So priority we the freelancers do set and some are set by client him/her self. The priorities customer set should be the top most priorities. We should never complete a task overriding customer’s priority. Simply the reason is the project is for client’s interest. The end product of the project be it a web site or an article will be used by the client. I have a nice example for this scenario. One of my friend was working on a project for writing 5 articles for a client. The articles were on health issues and their current medical solutions. Client asked to emphasize more on the health problems and their symptoms rather than the information on their cure or treatment. My friend did use his own thinking process and emphasized more on the current available treatment process for them. Fortunately the client was very kind and had enough time to give him another chance to re-write those. But everyone will not be that fortunate. You will simply loose the project and will get a very bad review and rating.

List all Tasks and get Confirmation

This is something that many feel not required but believe me this is the most important thing before you start writing first line of code. Once you get all your questions clarified and get all the priorities understood write them down in a table in order of priority. Send that list to the customer for verification and confirmation.

This will help in 2 ways

First it will eliminate chances of any misunderstanding in requirements.
Secondly it will secure your position if unfortunately you get a customer who changes requirement daily.

Periodic update

Whether customer asks or doesn’t, make a habit of sending regular update. The advantages are many of regular updates

1. The very first is obviously you will win customer confidence in you.
2. If there is any misunderstanding in the requirement that will be captured at very early stage.
3. You will be in a better position to convey any roadblock if you face. Customer will know the roadblock is really there and will believe you.

The frequency and format of the update may vary depending on how big and complex your project is and also on the nature of the customer.
I prefer sending daily updates for small project that are 7 to 10 days long. For bigger projects I prefer sending weekly status update.

Contents of the status update are simple

1. List of completed items
2. List of items next to be completed
3. List of any specific roadblock or difficulties

Most of the time I prefer sending at list a single note daily to customer with highlight of that day. Even for longer projects.

Keep Yourself Updated

This is a very well known requirement for anyone working in IT industry. With so many advances in technology it is required to keep up-to date. Do the following regularly

1. Keep an eye on new tech buzzes
2. Whenever a new buzz comes around , get an idea of it
3. Learn new technologies relevant to your skills
4. Make sure to track all the advances and new issues that are coming up for your key technologies.
5. Make sure your advances are reflected in your Profile.

I did learn PHP when it just started becoming popular. I learnt Java script also at the same time. gradually I learnt Ajax. I started getting so many projects. I used to win every single bid I placed.

Then gradually time changed. New things came up. Specially the content management systems and their customization became popular. People instead of developing site from scratch wanted it to be built on a framework. One day I realized I am not getting a single project. A person who wants to develop a site on CakePHP or Drupal or WordPress will definitely not give the project to someone who knows only PHP.

So updating self is a very mandatory thing to survive in freelancing world.

As of today ask yourself do you know Node.js , Angular JS ? Are you good with HTML5?
Do you know basics of Social Networking APIs? If you don’t then possibly you need to take some time off from work and prepare yourself more before pitching in.

Long Relations is good but don’t feel Obligated

It is good to have strong bond with customer and having long relations of multiple projects. But don’t feel obligated so much that you compromise your profit. Remember long relation benefit equally both the parties in understanding and reliability only. Neither party should take other for granted. each project should be a fresh new repeat of same quality process that you followed in the very first project to gain confidence of the other.

Be Honest

Lastly as true for any kind of business , be honest to yourself and to your customer.

These are not bible for Freelancing. these are just some points that I personally feel Freelancers must know and follow. Others may have different views than mine. I welcome others comments on the same. I will write more on the same later.

Here are some DOs and DON’Ts that freelancers should follow

While
Do’s
Don’ts
Choosing Freelancing platform
         The site has lots of projects  matching your skillset
        2.       The site has a secure escrow method
      3.       The site has an proper arbitration system in place
       1.       Judge a site just by its user base
      2.       Purchase bids or any kind of premium services before you are comfortable on the work on that site with basic profile
      3.       Switch sites if you get a bad rating on
Creating Profile
       1.       Take time to create full   profile
       2.       Try to write details in First person
       3.       Mentions accomplishments
       4.       Link a portfolio
       1.       Add wrong information
       2.       Add wrong skill sets
       3.       Use a company logo
       4.       Write in third person
       5.       Linking a portfolio or website that is poorly built
Bidding For Projects
       1.       Make sure you understand the complete requirement
      2.       Make sure you estimated the time properly
      3.       Make sure you have time estimated for anything goes wrong during work
1.       Bid too high or too low
2.       Beg for the project
3.       Bid without understanding every single words of the requirement
Working on projects
      1.       Communicate in timely  manner
       2.       Provide regular updates
       3.       Inform prior for any delay if foreseen
       4.       Deliver on time
       5.       Communicate in Formal and Gentle language
       1.       Use Slangs while communicating
       2.       Inform at the end about any delay
       3.       Miss a regular communication
       4.       Change from what was actually agreed upon even if you feel that may be silly
Feedback
       1.       Provide genuine and honest feedback
       2.       Use gentle and professional language while writing a feedback
       1.       Give false good feedback in hope of getting better project in future
       2.       Use foul language if want to give negative feedback
       3.       Skip giving feedback



Please follow and like us:

Written by 

Leave a Reply