"Every contractor working on the Death Star knew what he was getting into" -
Clerks
Know What You're Getting Into
Back in the early nineties, I had dinner in Boston with an operating
systems engineer who worked on a contract six months a year and spent
the other half of the year at his cabin in Maine. I thought
that sounded like a pretty good lifestyle,
and these days I can tell people are similarly intrigued when they ask me about my consulting business.
It sounds appealing -
be your own boss, make your own hours, pick your own projects, and get
paid more than you made as a salary. But don't be misled by
the fancy-sounding title "consultant". Sometimes it means just
working on a contract basis, and sometimes it's a euphemism for being
in-between jobs.
In fact, as a consultant, I earn less on average than I did from a salary, there are long gaps between paying projects (when I first began telling people I was an independent consultant, I felt like I was lying), and some years I qualify for the low-income discount from the utility companies. But
I have time for my own projects between contracts, I find the nitty-gritty of running my own business interesting and educational, and (perhaps this is
my imagination) I receive more courteous and professional treatment as
a contractor and consultant than I did as an employee.
So if this lifestyle still sounds appealing,
read on...
Get Ready
Consulting can be very unsteady work, so you shouldn't rely on it as a
living if you don't have a good cash reserve. In general, I've heard
that you should have six months of living expenses saved up in case of
unemployment. For a consultant, I think you should have at least a
year's reserve.
If you had employer-sponsored health insurance, be sure to continue
that coverage under COBRA until it expires or you have found other
insurance. Under federal law, you're entitled to health insurance as
long as you've taken full advantage of COBRA, but if you neglect to
sign up or you discontinue the coverage early, you could be out of
luck - insurers are not then required to grant you a new policy.
Companies with real HR departments usually know what they're doing,
but some small companies play fast and loose with the rules, so don't
can't assume they'll do the right thing.
-
I've been in a couple of startups that didn't seem aware of their
health care obligations - one completely
ignored my queries about signing up for COBRA, and after the decision
period expired I received a letter from the insurer stating that I was
no longer eligible. At the other, the owner expressed surprise
when I pointed out that California extends COBRA rules to small
companies via CalCOBRA, and then gave me a waiver to sign ignoring the
allowable decision period.
It's unfortunate that the U.S. health care system relies on employers
to provide affordable health insurance, but given that, it's important
for you to understand the laws that are there for your protection and
to take advantage of them.
Get Paid
Always get paid. With money. You may get offered equity, royalties or
the reward of an experience, but take those in account only after
discussing cash compensation.
If the client is certain about making money off the project, he should
put his money where his mouth is and pay you now. And if the prospects
are more dubious, he should definitely pay you. Either way, there's no reason you should take the risk.
In some cases, a client will try to renegotiate terms after the fact.
In the worst cases, like an old apartment roommate of mine who just
assumed I would cover his rent, I've had a few clients who expected me
to continue working on their projects even when they stopped paying me.
-
A game publisher that hired me to evaluate builds from one of their
developers terminated the contract, then a month later sent me a new
build to evaluate. When I asked if this meant they wanted to restart
the contract, the reply was: "Oh, we thought you could just look at
it." But at least they paid. When I informed another client that our
contract period was up, they said, "now this is the transition
period", expecting me to supply free support while they dithered
around with the contract renewal. The worst transgressor in my
experience was a game developer who hired me to help finish the
"first-playable" build of a game and told me that that it would
absolutely be delivered in five weeks or "there wouldn't be a company
anymore." After six weeks, when I asked if they wanted me to continue, the reply was "it's entirely up to you." Apparently there was an
implicit "but we won't pay", since the invoice I submitted a few weeks
later was met with the classic denial-blame-bargaining phases of
weaseling out of a bill. Ironically, that
developer had a history of threatening and suing any publishers who
tried the same trick on them.
You shouldn't have to do this, but be crystal clear that you expect to
be paid. Avoid deadbeats. Check your network - few companies have
pristine reputations, but some are repeat offenders, to the point
where they effectively have bad credit and contractors won't deal with
them. Don't take "...because of our financial situation..." for an
excuse. (I did on one occasion just so I wouldn't have to listen to
any more whining, but righteousness is expensive) If they can't pay
their debts, they should declare bankruptcy. Any client that wants to be treated as a
charity should reincorporate as one.
Wait 'til the Check Clears
As a teenager in Iowa, a bus driver noticed I'd tried to get on with a few cents short of full fare and gave me a succinct lecture: "if you don't have enough, just tell me." I wish he could set some of my clients straight.
In my experience, most clients do pay up, but when they're having
trouble coming up with the money, they don't tell me what's really going on.
-
For eight months I had no problem submitting invoices to a particular
client until one day the accounts guy who'd processed of all my
previous invoices asked "Do you have authorization for this?". The
next time I tried to submit an invoice, that guy was gone and another
person directed me to drop the invoice off in a nearby office - an
empty office. It was no surprise when I inquired about it six weeks
later that they had no record of it. But that was better than the
company whose office flunky took my invoice and then went to Taiwan
for a long vacation. Or the company who told me they couldn't complete
the check because "the girl who does that is manning the switchboard
right now". I mean, really.
When you start getting "the dog ate my homework" excuse, it's time to
wrap it up. And don't spend any of that money until the check clears.
Don't Sell Yourself Short
As a rule, a contract rate should be higher than a salaried rate.
Prospective clients that act surprised at that are either disingenuous
or not too bright. Remember, the client isn't providing you employee
benefits such as health insurance and training, paying your employment
tax, or paying you severance when the contract is terminated (unless
you have negotiated it). You have to cover your own insurance costs,
pay a fifteen percent self-employment tax in addition to regular
income tax, keep yourself up-to-date and marketable, oftentimes
provide your own equipment and facilities, and cover your living
expenses in the periods between contracts.
Availability of contracts is largely a matter of timing. When business
is good, that means you'll have to turn down some projects while
you're occupied with others. Taking a low-paying contract may mean
you'll passing up a higher-paying contract in the meantime - you're
paying an "opportunity cost".
-
During just one year, I missed out on at least three potential contracts
because I was busy on others. In one case, I passed on a one-month
full-rate job that would have paid twice more in total than the
lower-rate two-month project that had my attention at the time. There
were some other considerations on the lower-paying project that
hopefully made it worthwhile, but it's hard not to feel regret when
you've traded off that much income.
Longer-term contracts don't necessarily justify lower rates. A
contractor friend of mine told me when I started out that companies
can terminate a contract at any time, and you just have to factor that
into your price. And indeed I've found that to be true - most clients
will have no compunction about terminating a contract if the funding
falls through, or if they think they can get someone cheaper to do it.
-
One client pouted that it wouldn't make sense for her if
I didn't stay on project for the duration, expected to be another year
or so. The entire project was cancelled a few weeks later, and I
didn't even get paid for all of that. I have to say, that didn't make
sense for me.
It's unfortunate that some clients will stoop to haggling like car
salesmen ("I'm writing down a number....").
-
I had one client who not only bargained down my rate ("that's more
than I make!", he exclaimed), but also wanted payments tied to
milestones, ostensibly as as formality. And every couple of weeks,
they had just one more favor to ask, until, by the second contract
renewal, they were cramming as many listed but unspecified
deliverables as they could into the schedule on a weekly basis without
even making payments for each deliverable, and trying to sneak in
unpaid "transition" periods of work between contract renewals.
If a client acts cheap before the contract even starts, it's just
going to get worse. Phrases to watch out for: "We're on a budget",
"This should be easy", and, my favorite: "I would do it myself, but I
don't have time." Avoid these projects - it's not worth the
aggravation.
Make Your Reputation
Every project you get is a potential link to your next one. One
executive-level consultant told me he used to try marketing himself
aggressively, handing out business cards at networking parties, etc,
but all of his work came out of his existing network. This has been
true in my case, too - all of my contract work (and many of my
salaried jobs) have come through referrals.
So it is important to maintain and enhance your reputation on each
project. This includes getting quality work done, and managing
expectations.
-
I've heard complaints from clients about having to throw away work
performed by previous contractors just because no one could understand
their code. And I've heard of contractors who will actually offer one
rate to do a quick and dirty job, and a higher rate to do clean code
with good documentation. That shouldn't be a choice - do the job right
and be honest about how much it will cost and how long it will take,
even if it's not what the client wants to hear.
Besides good work, you also want a reputation for billing fairly and
not trying to milk each project. I've seen contractors bill the
maximum allowable hours no matter how much they actually work, and
contractors who try to extract every little perk and expense
reimbursement, down to free sodas and per diems. This makes contract
negotatiation harder for everyone. Forget the small stuff - it's the
big payment that counts, and if you have a reputation for billing
fairly, it's easier to maintain a higher rate.
And most of all, don't make the person who referred you regret the
decision.
If employment is like a marriage (or at least a steady relationship),
then contract work is like prostitution. And I don't mean that in a
bad way.
The most important thing in the contract relationship is that
you get paid. As a mercenary, you can offer friendly
suggestions about how your clients run their businesses, but it's
their business.
Put the "Contract" in "Contractor"
My least favorite part of contract work is the contract itself. The
conventional wisdom is "Get it in writing". If someone is going to
cheat you, they're not going to let a piece of paper stop them, but it
doesn't hurt to have something that you can fall back on in the event
of legal recourse, and even for "handshake" agreements, people can
have different memories of even the basic terms, so you want to get
that written down in some form.
Typically, the client will present you with a contract put together by
the client's attorneys, who are solely representing the client's
interests. It's up to you to protect your interests. So don't get
bullied into accepting any terms that make you uncomfortable.
-
Statements you should ignore:
"This contract is intended to protect your interests." Bah! The
company's attorneys are bound to represent their clients' interests,
and that does not include you. Go ahead and ask the company's lawyers
if they are representing your interests.
"No one has complained about this before." That's probably not true,
and if it is, it means they didn't read it carefully or bother to have
their own lawyer look at it.
"I have to protect my company's interests." So what? You have to
protect yours. Lifelong servitude and your first-born child would be
in your client's interests, but that doesn't make it reasonable.
Sometimes it's hard to get a clause removed just by asking, so one
tactic I've taken is to make sure the clause goes both ways. After
all, the contract is between two business entities, so it should be
fairly symmetric.
-
When faced with a non-poaching clause that stated if I "encouraged"
any of their employees or contractors to leave the company within a
year of the contract's duration, the penalty would be $100,000 or a
year's salary of the employee, I asked that the clause apply both ways
(hey, I could use $100k!). The clause was conspicuously absent in the
next draft of the contract.
Just because the contract was put together by an attorney doesn't
mean that it's worth the paper it's printed on. As with doctors and
automobile mechanics, it's easy to assume lawyers know what they're
talking about. But sometimes they do, and sometimes
they don't.
-
An in-house counsel for VC-funded startup assured me that the
indemnification clause in my contract had nothing to do with financial
liability. When I insisted that "indemnify" meant "to pay", she looked
it up in her pocket dictionary and had to agree. But I guess she
hadn't authored that clause - I later found a word-for-word copy of
the contract on a sample-contract web site.
Another piece of conventional wisdom is to have your own attorney look
at your contract. But attorneys are expensive. In general, I don't
bother with an attorney if the contract looks straightforward,
especially if the contract is small. If there's anything that is not
clear to you, you should definitely have an attorney look it over (or
walk away if the contract pay is too small to warrant the contract
hassle and legal fees). But as before, keep in mind that not all
attorneys are created equal:
If you get an attorney, find one who is capable and knowledgable in
your industry. And pass the name on to me!
Keep Busy
In between projects, you may be inclined to panic. If you do, you're
probably not cut out for this business. Downtime is an opportunity to
catch up on things that may be neglected while you're busy on paying work.
You can keep yourself up to date by attending technical presentations,
conferences and trade shows. It's an opportunity to see the
latest products and technologies, and perhaps investigate new areas in
which you can work.
-
I like to go out of town for an industry show after wrapping up a big
project - usually the more stressful the project, the farther I like
to travel. It's a nice opportunity to unwind, get away from the
computer for a few days, and see what I've been missing the last
several months. I usually look for shows with free expo passes rather
than pay for a full conference registration (not for any good reason
besides being cheap). Watch out for spam, though. I've been
unsubscribing from CMP missives for years, now.
You can participate in technical discussion groups. It's an
opportunity to toss around ideas, identify people you might want to
work with (particularly in local area groups), and help out people who
might help you someday.
-
I've kept up with the many interesting developments in Java and
Java-based projects by following the local (Orange County and Los
Angeles) Java User Group mail lists. I don't particularly like sitting
in meetings, so I eschew the regularly-scheduled presentations, but
the discussions are often illuminating, and they keep me informed of
the latest promising tools. I even brought in one group member as a co-contractor on a project.
You can contribute to open source projects. It's an opportunity to
communicate with some excellent developers around the world, research
open source tools that you may find useful, and give back to the
community.
-
During my first time off, I made some fixes to JFOR, an XSL/FO-to-RTF
converter, so I could use it to generate Word-readable versions of my
resume from an XML Format. Since then, I've decided recruiters and HR
people should know how to read and cut-and-paste from PDF, so I don't
use JFOR, anymore, but I'm gratified to see once in a while an
acknowledgment of my contributions from the JFOR list.
With all of these activities, the idea is to improve your capabilities
and marketability, expand your network and establish some street cred,
and enjoy yourself in the meantime!