Wednesday, December 13, 2006

Pitfalls to avoid when using freelance software developers

A quick definition of freelance software developers is warranted here. Freelance software developers are those developers who do not belong to any organization and usually work from home. The biggest advantage of using a freelancer is the price. They usually charge a fraction of what a professional organization would charge. But the pitfalls are numerous, especially if the project in question is a serious or long term one. Some of the pitfalls are discussed below:

High factor of risk: Trusting a long term project to a freelancer is allowing you to be open to all the risks which might come due to issues faced by the freelancer. For example, if the freelancer�s personal situation changes and he cannot work anymore or if he falls ill your project faces the risk of being scrapped.

Quality is a big issue: Many freelancers work to supplement their primary income. They may not be able to spend the amount of time which a full-time developer would normally spend on the project or may delay the project if something urgent comes up in their primary job. Furthermore, a freelancer is seldom able to tap into a talent pool and is usually self-taught. This limits his knowledge level and he may not be able to troubleshoot complex issues while programming. Furthermore, he may not follow standards while coding or may not complete comments within the code which can create legacy issues later on.

Lack of scalability: Freelancers cannot take up very large sized projects. They would ideally take projects which they can handle in their individual capacity or with another freelancer. Usually one of the freelancers is a coder and the other a designer. So if you have a large project which might require a complete team on an ongoing basis, using freelancers is definitely not the answer.

Timely deliveries are a distant dream: Since freelancers work at their own pace and as and when they get time, it might not be possible to extract timely deliveries from them. Apart from that, freelancers are infamous for not sticking to their commitments and letting the client down at a critical moment. This can be a big disadvantage in an important project and you might end up wishing that you had given the project to a professional organization.

Infrastructure may not be good enough: Since a freelancer is usually working from home, he may not have the requisite software and hardware infrastructure and may not even have good connectivity. Poor infrastructure can also have an adverse effect on the project.

If you plan to use freelancers for a project in the near future, it is advisable that you enter into the business relationship with your eyes open. The above pitfalls are just some of the mission critical issues which might crop up during the lifetime of the project. Having said that, many projects today are carried out by freelancers quite successfully, especially those where the freelancers are very dedicated to their work and committed to the client.