Posted on | December 6, 2007 | 4 Comments
Anyone who has worked as a consultant knows the dreaded phrase ‘scope creep’, a euphemism employed to describe a situation where a customer is (usually) attempting to get services for free.
Scope creep can be rather difficult to spot, usually a consultant does not realize the amount of services that they’ve provided for free until the end of the job when they divide the amount they were paid by the number of hours that they worked. When your time is your product, you must be careful to not give it away.
I’ve been going over everything that I did in 2007, quite frankly, I’m shocked. My typical hourly rate is $45/Hourly. After averaging everything out, I’ve made only $7 on average. Most of what I could call profit has to go directly into paying for the co-located sandbox networks that I use to design and build large scale solutions. After paying all expenses, processing fees, other consultants working with me, I’ve lost money. At least taxes will be next to nothing this year.
How does this happen? How can you lose money when your selling what can be classified as a ‘cost-less’ product, your time? The biggest mistake most consultants make is buying into the fact that their time is indeed a cost-less product, you cost money, you must be paid for your time.
This is what really got me into trouble this year, hopefully this little list serves as a warning to others:
Instant Messengers – I will no longer be providing my instant messenger details to clients, unless the client agrees that every conversation that we have is metered and billed. If you call a lawyer, they bill you, as does nearly every other kind of professional that you deal with. Tech consultants are no different.
Sure, the client may just have some questions that take a few minutes to answer, however if that happens on a regular basis, you’ve given away hours, not minutes. On large scale projects, this can often mean giving away a week worth of your time.
Bad Data Centers – If I’m not hosting it in my racks, I have no interests in working on it. I spent a combined total of 2 1/2 weeks in 2007 waiting on replies from data center technicians regarding support requests. Servers were built wrong, had bad hardware, networks configured incorrectly, all kinds of things that prevent me from doing my job.
This is an ancillary expense, something that can’t (usually) be passed to your customer, as it was not your customer’s fault. If your working on computers in a remote facility, get a guarantee that someone will be on-site to work with you, or an agreement that you will be paid to wait for responses to your requests.
If you schedule a block of time to work, your doing so because you expect to earn money for each of those hours. Clients don’t often realize that you can’t just instantly start working on something else if their project stalls, especially if you must wait for responses to requests. You can and should bill your client for down time, even if the down time is not (directly) your client’s fault.
Paid to argue? – Would you believe that people pay me $40 – $50 per hour to argue with everything that I suggest or tell them? This often results in stalls, which results in down time and they almost never agree to pay for it. Some clients hire consultants, get advice, then feel the need to research what you recommend while sending you links to forums that say there may be an easier way.
If a client wants a broad recommendation, meaning that a consultant produces a list of possibilities listing pros and cons with a final recommendation, they can pay for one. Don’t get ‘challenged’ into justifying yourself for free.
A client asking “Would this work?” is different than a client sending you a link to an amateur Linux forum where inexperienced people have hashed out very bad ideas then demanding that you explain why your solution is better. Often, clients want you to teach them the fundamentals of TCP/IP while you explain your solution. Don’t fall for it, just remind them that the meter is running.
Too Many Changes – When a project changes 4 or 5 times, its time for the solution to be re-designed. What ends up happening is you, the consultant, end up donating time to make things work around changes that the client made. Usually, the client will insist that your configuration is bad, you must insist that your configuration was great until they re-defined the laws of physics.
Get a clear cut scope of work and keep a journal of every single change (just a notebook works well). Require that all changes be sent to you via e-mail, do not accept change requests made over the phone or via instant messenger. If you make the client put it in an e-mail, they’ll be less likely to try to get 10 changes for the price of one. This goes back to those evil instant messengers.
Partnerships – “I have this great idea and a little bit of money, I’m looking to get it going, when it flies, you’ll make a fortune … “, no thanks. While I’m not in a position to denounce the ideas of others as potential business blunders, I’m also not in a financial position to assume the risks of others. Do not offer a discounted or ‘pay later’ rate to someone based on the promise that there will be larger payments ‘down the road’. Either they can afford your help or they can’t.
Does this stop you from being a nice or charitable person? No, not at all. If you want to help someone get going, do it, just understand that your doing it for however much they are willing to pay you at the time, don’t count on future income.
Non-disclosure Agreements - Unless someone is willing to send you 2/3 of your money up front, do not sign a NDA or non-compete agreement, period. A NDA is not as bad as a non-compete, a non-compete says that you can’t employ any tricks that you devise during a project on future projects in that industry, or it may flat out say that you can’t work for anyone else in the industry. This is typically the case in web hosting.
Unless a client is willing to pay you the several hundred thousand dollars that you could make without signing a non-compete agreement (and not promising ‘more down the road’), don’t sign it, its financially stupid to do so. How can a client expect you to give up thousands based on what their business ‘might’ do in the future?
If you do negotiate the deal down to a simple NDA, be sure that the client knows that the NDA does not apply if they don’t satisfy their obligation to pay you for your time.
If a customer asks you to sign a NDA before being given access to source code covered under the GPL or other popular OSI approved licenses, they have (usually) just violated the license. Be careful of the company that you keep.
Warranty work - Service is part of every solution, design your support packages wisely. Being pulled out of bed at 3:00 AM should cost a bit more than handling a problem at 2:00 in the afternoon.
If you were paid hourly to create something, you need to be paid hourly to debug that something (within reason). If you were paid a lump some to create something, fixing bugs or configuration issues is on you (within reason). Do not get bullied into treating usability issues as bugs, this goes back to the scope of work. Very often, a client sees a solution working one way, you deliver it, then the client realizes that its not working as they anticipated. Lack of planning on their part is their financial liability, not your’s. Know the difference.
Be sure your scope of work specifies, clearly the demands that will be placed on whatever you create or configure. If the scope of work says 10 users at a time will be using your creation and bugs evidence themselves at 100 users, its up to the client to pay for improvements.
Get an attorney to help you draft a warranty agreement that specifies what you will or will not be responsible for rectifying, including ‘damages’ resulting from your solution failing, for whatever reason. In order to make a profit, you must manage your cost. Your liability can and should be managed just as you would manage the cost of your time.
If I had a thousand dollars for every time a client told me to ‘make it work or else’ (implying a charge back or lawsuit), I’d be rich. If your client likes to get things done by threatening you, dump them.
Loud and abusive people – If a client can not talk to you in a collected, professional, civil manner, dump them. You need only to look at the fact that your income depends on your creativity and the fact that their behavior prevents you from feeling and being creative. Therefore, being insulted, threatened and pressured daily costs you much more than they are willing to pay you. If this becomes standard operating procedure for one of your clients, simply stop answering them.
Hopefully, this little list of gripes is useful to others. What amazes me is that all of these things are common sense, so easily overlooked in day to day things. Only after writing (and reading) the list did I realize just how much I gave away this year.
We all need to be a little flexible, however that must remain the exception to the norm. I hope that other freelance consultants start taking a firmer stance, I think these problems have become commonplace because people are just too easily bullied.