The life of an independent IT contractor sounds attractive enough: the freedom to choose clients, the freedom to set your schedule, and the freedom to set your pay rate while banging out code on the beach.

But all of this freedom comes at a cost. Sure, heady times for some skill sets may make IT freelancing a seller’s market, but striking out on your own comes with hurdles. The more you’re aware of the challenges and what you need to do to address them, the better your chance of success as an IT freelancer.

[ Thinking of striking out on your own? Download InfoWorld's 29 tips for succeeding as an independent developer for valuable guidance from a solo -- and successful -- solo programmer. | Keep up with hot topics in programming with InfoWorld's Application Development newsletter. ]

We talked with a number of current and former IT freelancers to get their take on the hidden troubles of going solo. Here’s what they said and how to make the best of the downsides of freedom.

Selling yourself from afar

You can’t get a gig without the client signing off, and often getting key stakeholders to accept you as a valued partner can be challenging -- especially when the work is remote.

“In order for a project to be successful, the client has to buy into you and the vision for the project,” says Nick Brattoli, founder and lead consultant at Byrdttoli Enterprise Consulting.

“This is exacerbated in the IT world, because more often than not, you are going to be working remotely,” says Brattoli, who’s been freelancing on and off for his entire IT career. “Technology is wonderful in that it makes it possible for us to work from anywhere with an Internet connection. But there is still value in being able to meet face-to-face, and many companies are hesitant to trust someone they haven’t met.”

In addition, at many companies the tech-savvy people running a project will know what needs to be done to meet the desired outcomes. “But once that’s all figured out, it is very hard to convince the people above them to go through with it,” Brattoli says. “Where technology is concerned, people who are less tech-savvy are going to be wary of any new changes to infrastructure.”

To get around these challenges, Brattoli recommends onsite travel to help generate buy-in; proposing various solutions of varying costs for a project; and constant communications after getting initial buy-in to manage expectations as much as possible.

Navigating non-negotiable agreements

Most companies have standard agreements in place to protect confidentiality and restrict competition. Such forms are usually non-negotiable, even for full-time employees, says Stanley Jaskiewicz, a business attorney at Spector Gadon & Rosen, who represents IT employers and freelancers.

For freelancers, these agreements can prove to be tricky business -- especially as they begin to add up.

“A freelancer will usually have no leverage to negotiate the restrictive covenants, or the scope of confidentiality,” Jaskiewicz says. This creates several risks, he says. For one, a signed form might prevent a freelancer from being able to make good on future job opportunities or require the freelancer to give ownership of a work product to the employer, without commensurate compensation for what the freelancer gives up.

Furthermore, such restrictions can accumulate rapidly over a career, making it hard to keep track of what you can or can’t do when presented with future job opportunities.

“The freelancer must keep careful records -- and constantly update one’s own knowledge -- of the restrictions to which he or she is subject,” Jaskiewicz says.

The alternative is to pay a lawyer to check each new job against all prior agreements, which is an economically unrealistic proposition for most freelancers.

“One freelancer I know has an exhaustive knowledge and well-indexed records of what he has signed, but he is the exception,” Jaskiewicz says.

A practical alternative (on the confidentiality side, at least) is to request the “standard” exceptions to confidentiality, Jaskiewicz says. These include prior knowledge, public knowledge, independent development without use of confidential information, receipt of information from a third party not bound by confidentiality with the disclosing party, and compelled disclosure (that is, in response to a subpoena or deposition).

Dealing with anti-IT sentiments

Many people “just don't get or trust IT,” says Marc Weaver, an IT consultant who recently formed his own company to provide cloud database solutions.

Even within IT departments there can be issues with your presence as a freelancer.

“When a consultant is placed in a team of permanent employees, there is sometimes some resentment toward the consultant, as they are usually earning more,” Weaver says. This can result in a lack of information sharing or the highly skilled IT work being allocated to full-time employees, with the menial work going to the more expensive and experienced consultant, he says.

This mistrust is even more pronounced when you want to change the way things are done -- even if it’s part of your contract.

“People immediately start panicking,” Weaver says. “They would rather have the painfully slow manual process that needs intervention on a daily basis than one that runs automatically and rarely breaks.”

Weaver’s business specializes in moving databases and applications into the cloud, and there is often resistance.

“Getting people to understand that [concept] is really, really hard work,” he says. “There isn't sufficient IT knowledge, and tech companies don't help, as new products aren't explained in a simple way that most people will understand.”

Educating people about IT and simplifying the details so that everyone can understand is key, Weaver says.

Riding out harsh realities and drumming up new business

Providing IT expertise, as with other types of freelancing, can be feast or famine. “At the first scent of an economic downturn, projects get canceled or postponed and IT consultants are either let go or not hired,” Weaver says.

“Many companies still have the old-fashioned view that IT is a cost center rather than a profit center, and as such IT departments are always one of the first places people look when they want to ‘trim the fat,’" Weaver adds.

While keeping a steady stream of work going can be a problem in general with freelancing, some say it’s an even bigger problem for IT freelancers.

“Most engineers and IT folks don’t consider sales and marketing to be their strongest skill, and for them to go out looking for new projects, discussing project road maps, and negotiating on the payments terms is not a fun experience,” says Abbas Akhtar, who freelanced as a software engineer for three years before launching a Web development company called Solutions Park.

“Engineers generally would love it if they got a set of requirements, delivered the project, and got a check in the mail,” Akhtar says. “Freelancing means they have to do a lot more than just coding.”

Keeping up with technology changes

As anyone in IT knows, technology and how it’s used are constantly shifting. Freelancers especially are challenged when it comes to staying current with the ever-changing technology landscape.

“The resources available to a freelancer may not be sufficient to get trained on new technology, nor put that training into practice in a business environment to engrain the skills,” says Scott Smith, who has worked as an independent IT developer and database consultant and is currently a senior database administrator in the uTest software testing community.

To keep from falling behind, Smith participates in online webinars and forums within and outside the uTest community.

Sometimes change can put assignments in jeopardy. While working as a freelancer, Smith has participated in assignments where he was brought in to perform a specific task, then the scope of work changed to such an extent that it became impossible to complete the assignment.

“In these situations, you have to do your best to continue to provide value to the companies to make sure your brand is still seen in a positive light, despite not delivering on the initial projects,” Smith says.

Reconciling agile development with fixed-bid contracts

Many companies have adopted agile development methodologies to iterate their projects faster in hopes of gaining a competitive edge.

“This has been a boon for software developers -- both for full-time and freelancers,” says Damien Filiatrault, CEO and founder of Scalable Path, a network of more than 1,000 freelance developers. “Demand is high, supply is tight, and projects are numerous.”

But for freelancers, there remains a major disconnect between traditional fixed-bid contracting and agile software development projects, Filiatrault says. “Lots of time needs to be spent up front specifying functionality and scope before work even begins on a fixed-bid project,” he says.

Indeed, traditional fixed-bid contracts immediately put the client at odds with the contractor as soon as the contract is signed, because the client wants to jam as much functionality as it can into the project for the fixed price. “On the other hand, the contractor wants to spend as little time as he can on the job for the fixed price,” Filiatrault says.

Working in agile, where the client’s objectives evolve over time, is hamstrung by the fixed-bid contract. “The contractor wants to keep scope locked down as opposed to working in tandem with the client to evolve [the software] in a more collaborative way,” Filiatrault says. “Constant change orders to a fixed bid are tedious. In modern software development, it’s best for the software contractor to work on an hourly basis rather than on fixed contract price.”

Coping with communications gaps

Even within the same company, IT and non-IT people often don’t communicate well with each other. This can be an issue for freelancers as they try to stay in sync with clients.

“It is very true that engineers and non-engineers speak pretty much different languages,” Akhtar says. “The way an engineer looks at a problem and how a nontechnical person may look at a problem is very different.”

What might seemingly be a small issue for clients could actually require a decent amount of technical work to fix, and communicating this to nontechnical people can be tough.

For example, a client of Akhtar’s thought that having the ability to sell 10 items on its website instead of 20 should reduce the cost of the project by half.

“From an engineer’s perspective, once the core e-commerce experience has been built, the incremental effort to modify the number of items you can sell from one to anything is almost zero,” he says. “Freelancers find it a big pain trying to communicate ideas such as these to the client.”

Managing your time

While time management is a challenge that applies to almost any profession, IT freelancers are in a unique position because they might be called in to address issues when they least expect it -- throwing schedules into turmoil.

“Once you start to grow your business, time management becomes pivotal,” Brattoli says. “In order to grow, you need to manage your full-time job, your current freelancing projects, growing your business, training, and your personal life.”

This can become quite difficult in IT because many projects are not 9 to 5. “You may spend a day browsing the Internet, and you may work 24-plus hours straight because something blew up,” Brattoli says. “This flexible schedule can both make things difficult and allow you to succeed, depending on how you do it.”

Those working solo especially need to use their time wisely.

“A lot of tasks in the IT world involve doing a couple things, waiting a while, then doing some more things,” Brattoli says. “Rather than browsing the Internet without purpose every time you get these blocks of time, do some studying, read some blogs. Train yourself. On those days where you have nothing to do, bid on some jobs online, expand your LinkedIn network, plan out your dinner. Using your time wisely can alleviate a lot of stress.”

Related articles