Steve Friedl's Unixwiz.net Tech Tips So you want to be a consultant...?

Or: Why work 8 hours/day for someone else when you can work 16 hours/day for yourself?

I've been a consultant of one form or another since 1985 when I started my old company, V-Systems, with a friend from college, and actually did bits and pieces of consulting as early as 1982. I have been asked often about the business, and I decided to write this up.

Please note that I am providing observations from my own personal experience, but I am not providing tax or legal advice. You need to pay somebody for that, and I'm not qualified.

Furthermore, I am not even attempting to make this a comprehensive guide for everything required by one in or contemplating the consulting business. I am purposely omitting whole areas, such as licensure, insurance, and negotiating — there are other books for that, and this isn't trying to be one of them.

These sections (except the last) aren't in any particular order.

Different flavors of Consultants

There are many ways of structuring a self-employed practice, and I'll touch on two that are at different ends of the spectrum. I only have my own experience to draw on, so these should be considered broad generalities rather than pigeonhole-type definitions. I have gotten substantial pushback on these definitions, so I urge you to take them only generally.

Contracting A "contractor" is typically hired for one project (via a "contract"), and the relationship is often more technical than personal. One is hired to write a communications controller, build a website, or modify some software, and at the end of the project: you're done and you move on. Most contractors work on one project at a time, which surely allows a great deal of focus, and though there is a often a bit of hanger-on work after the project has finished (say, helping the in-house staff integrate your work), once the contractor has moved on, the focus goes with him. This is not to say that you won't be back: doing a good job on the first project certainly means you'll be given more consideration for a subsequent project, but it's just as often a new project as opposed to working on the old one. Consulting A "consultant" typically has multiple customers at a time, and it's more about a long-term relationship than it is about a specific project. There will certainly be projects in the course of a consulting relationship, sometimes big ones, but the general idea here is that you're an always-available resource they can call on for big matters or small. In a few cases, I am the IT department for several customers, and they use me so they don't have to hire a dedicated person for it. Unlike the contractor, this involves a lot of juggling when the fluctuating demands of multiple customers comes into play. It's harder to get a deeper focus because of all the context swapping going on, but long term relationships are worth it in the long run.

I mainly operate as a traditional consultant, and though from time to time have done one-time projects on a contract basis, this paper mainly addresses the consulting relationship.

What's it take?

The single biggest surprise to prospective consultants is when I suggest that their technical skills will not be their biggest asset. Those skills are required, of course, and often help get you in the door, but the long-term customer relationships on which a consultant depends are built on one thing only:

You must give the customer The Warm Fuzzy Feeling™ Consulting maxim:

Your customer certainly has to believe you can do the job, but they cannot wonder if you're going to get back to them, or if you're going to do something stupid (again?), or offend one of their customers. Your practice is never more stable than when your customers trust you completely to take care of them.

I still have my first customer from 1985, plus several others since before 1990, and I've been asked to do work I was clearly not the best for, simply because my customer liked doing business with me.

Many moons ago I knew a gal who was a salesperson for the computer vendor I did business with, and she was not even close to being as technically competent as I was. When she left to do consulting, I figured she'd never make it because of the "lack" of those skills. But she did make it, and did a damn good job, too. She was good enough with the subject matter to take care of what was in front of her, but she was ferociously dedicated to taking care of her customers, and this was where I learned that The Warm Fuzzy Feeling™ is central to a good customer relationship. It didn't take long before her subject-matter skills were as good as her customer-service skills, which made her a gift from God to her customers: within a wide range of problem space, they would rather pay her to figure something out than hire somebody else who already knew how. It wasn't until later in my career that I found this out for myself. Anecdote:

Thank you, Cindy, for showing me what makes a good consultant.

"Trust" is your best job security Consulting maxim:

But it takes more than good customer service skills: one must be a self starter, require very little supervision, and the ability to keep on task without a boss looking over your shoulder.

Working at home can be a wonderfully comfortable and productive work environment, but it's not meant for everybody. Distractions abound — spouse/children, the television, that really comfy couch — and it's really easy to burn tons of time without getting anything done. Working by yourself requires substantial time-management discipline.

Though some consultants (like me) prefer a solitary work-at-home existance, it doesn't have to be this way. Many consultants spend much of their time on the road, with plenty of human contact, and you can tailor your practice to have whatever mix you like.

Job security

Notwithstanding the prior maxim, the short answer is that you don't have any.

You have no job security, even if you think you do Consulting maxim:

Consultants — even good consultants — are often considered a necessary evil by customers who use them, and it's exceptionally easy to stop using one. It doesn't require firing or confrontation, just "we don't need you any more" or even just not calling.

This has happened to me several times: a sure thing with many years of history stopped on a dime when a customer's customer canceled a project, or when another customer was bought by a bigger enterprise.

This is not personal to your customer — it's just business — but when your gravy train evaporates without notice, it's very personal. And terrifying.

The best way to approach this is to diversify — if you have only one ongoing project, you can find yourself out of work with no more notice than the time it takes the phone to ring. By being aggressive about finding more than one customer, and even making it a point to value a backlog of work, you have a fighting chance at dodging the vaporizing-customer bullet.

Cash Flow

Beyond having regular ongoing work lies matter of cash flow. Even if you regularly invoice at the start of every month, customers have their own schedule for paying, and this can be nerve-wracking to deal with.

For many years I operated on net-30 terms — payment due within 30 days of the invoice — but when you add postal delays, waiting for manager approval, being put on the next regular check run, and sitting on the president's desk for a signature, it's not hard for invoices from even good customers to take 45 days to arrive in your hand.

I moved to net 10 terms, and this made an enormous difference in cash flow: a few customers simply cannot accommodate that fast of an invoice turnaround, but it's been a big win. This is a soft 10: I tell my customers that the first regular check run on or after net 10 is timely, and this usually means 10-15 days. What a huge difference this made in cash flow.

Where this still gets tricky is when a customer is a bit late for whatever reason: your creditors don't really care. But a consultant can never do anything other than perform routine collections with a customer. Asking for a stale invoice to be paid is fine, but it's exceptionally bad business to give the customer any hint that you're in a bad place.

A financially-struggling consultant does not give a customer The Warm Fuzzy Feeling™ Consulting maxim:

No matter how tight your bind, your customers can't find out.

The Customer Relationship

I've mentioned several times The Warm Fuzzy Feeling™, and I'll do so again: this is absolutely central to how you manage your practice.

Have "customers", not "clients" This is a minor semantic point, but one I've stuck with for many years. A client implies that the consultant is superior, while customer suggests that the consultant is beholden. It's virtually impossible for a consultant to forget the technical nature of the relationship — you solve problems all day long — but it's very easy to forget the customer service aspect. We want to avoid this as much as possible. Medical doctors are notorious for getting this wrong: we've all had a doctor we really loved (The Warm Fuzzy Feeling™), but the office staff didn't measure up. We are a patient to the doctor, but a customer to her medical practice. I've never heard of a doctor or a lawyer use the word "customer", but as a consultant I am proud to. I exist at the pleasure of my customers, and that means being easy to do business with. You are primarily in the customer service business, not the technical business Consulting maxim: Be exceptionally easy to find When I go into the bank and find a long line to reach a teller, it's of course frustrating. Mentally, I start a timer in my head, and the longer the timer goes the worse of an experience it is. What stops the timer? Leaving the bank? No. — It's reaching the teller. When your customer pages you, his timer starts: return his call immediately. If the customer has an emergency, it's much better for him to hear your voice 5 minutes after paging saying "I am on the road right now, I can jump right on this in an hour" than to just sit around waiting, wondering if you got the page. For a good consultant, your voice is comforting: Be very easy to find Consulting maxim: When the customer knows you're going to be on the case, he can stop worrying and attend to what's in front of him. In my entire career, I have never dodged a page or screened a call even though I was tempted more than once.

Billing

There are all kinds of arrangements for getting paid, and none is really superior to any other. I have virtually always operated on a strictly hourly basis, invoicing once or twice a month, but it's also possible to do monthly retainer, fixed-bid contract, or some other combination. And no method of billing can avoid talking about churning, which I'll define also.

Hourly billing This is the easiest to manage: you work an hour, you invoice the customer for a hour. For occasional or ill-defined work, it's hard to use anything but hourly billing. The customer bears the brunt of projects that get out of hand, and the customer is really at the mercy of the consultant for being fair. This makes many customers nervous for fear of project-creep and "churning" (defined below). Hourly arrangements of any substantial magnitude require that you have earned your customer's trust Consulting maxim: Retainer There are many variations of retainer arrangements, but one version is where the customer purchases a guaranteed minimum number of hours per month (at a substantial discount), and they are worked off as the month goes on. These are particularly popular for outsourced IT departments, where you form a remote help desk, servicing issues as they come up. They are good for the customer, because they get a significant discount for a consultant, and good for the consultant, who has a predictable income stream every month. Fixed-bid projects When a customer has a specific project, you provide a fixed quote: "I can do that job for $X". Customers often prefer these, because they know in advance what they're going to pay, but they are the most problematic for the consultant. These require highly detailed specifications that list exactly what is expected of the consultant. If it's not entirely clear what the requirements are, there will be endless disagreements over whether this or that is in the scope of work: The customer will think it is (you work for free), and you will think it isn't (customer pay me more). I have relatively little experience with fixed-bid contracts, but I do know that your estimate should include a substantial fudge factor. This is not gaming the customer but allowing for surprises. All programmers are optimists, and all projects run into unexpected roadblocks: your fixed bid means you allowed for that. The best way to appreciate the value of a good spec is to do a project without one Consulting maxim: Generally speaking, ambiguities in a specification must be resolved in favor of the customer (you're the consultant, you should know how to do this), though it's certainly possible for a customer to try to take advantage of you. A good customer will take into account extraordinary roadblocks that nobody could have anticipated (say, a critical vendor goes out of business), but it has to be much more Earth shattering than "it's harder than I thought". It's not unheard of for a consultant to go back to the well on a fixed-bid project, laying out a case why the project has gone over and why you need to be paid more. This is always uncomfortable, and the only way to manage this is if the customer has been in the loop in fairly substantial detail throughout the project. If you've been telling the customer "it's going great" for six weeks, you're going to have a hard time showing up on the due date explaining why you're not finished and also asking for more money. Instead, if you have been making regular detailed progress reports, even including your own mis-steps, it's more likely that problems will be headed off at the pass, and the customer will be more amenable to sharing the cost of surprises. Customers hate unhappy surprises much more than timely bad news Consulting maxim: A customer recently made a point that's essentially the same thing: Bad news does not get better with age Consulting maxim: Churning This is the all-too-common phenomenon of a consultant running the clock simply to run the clock whether the customer actually needs the work or not. This could be outright padding (aka "lying") on an invoice, or recommending/doing work that's not really required. Churning by dishonest consultants is the single worst thing that has ever happened to honest consultants Consulting maxim: Every consultant has projects that run over, and sometimes in retrospect you will realize that your time was not spent in the most beneficial way: this is inevitable. The question is whether your efforts were made in good faith, and a healthy dose of no charge time (see below) is usually a fairly effective cure.

I wish to repeat that I am not expert in the finer details of structuring a business deal or how to best negotiate with your customer. There are so many ways that a deal can be structured, so many different kinds of projects, and so many different personal styles, that no simple summary could possibly capture even a fraction of them.

But what they all have in common is that you are completely up front with the customer, deal in good faith, and fully intend for this customer to provide you with a great reference when the project is over. Not surprisingly, these all contribute to The Warm Fuzzy Feeling™ that is so important.

Touching on some more specific points:

Never, ever lie or fudge on an invoice If you are ever caught — or even suspected — of funny business on the financial front, you will not be trusted anywhere else. It is impossible to give a customer The Warm Fuzzy Feeling™ if they are wondering about the legitimacy of your invoices, and this is fatal to a customer relationship and to ever getting a good reference. This is not to say that mistakes on an invoice won't happen, but how you deal with them will tell a customer a lot about how you do business. Your goal should be to overwhelm them with integrity. Once, I accidentally double-included an 8-hour charge on a customer project: hit the wrong key on my time-billing system and didn't catch it. One of them was completely legitimate — and the customer knew it — but the fact that two charges in a row had the same time and detailed description were a dead giveaway to a mistake. My response was to write off both line items even though I was entitled to one of them. By making the penalty for error high, I made it clear to the customer that I don't play the "see what I can get away with" game, only writing off the mistakes. Eight hours was real money, but nothing compared to the ongoing business I got from these folks. Anecdote: It sometimes hurts to "eat" time, but the alternative (burning a customer) can be much worse. Ongoing business is much more important than maximizing every billable hour Consulting maxim: It's better to give away some time than to throw away your reputation Consulting maxim: Provide time-billing transparency Anybody who's dealt with a lawyer has gotten a bill that said Review documents ....... 40 hours and for most of us, the lack of visibility into work done is maddening. Your customers should never think this about you: list your work in detail to say what you did, and — if necessary — who asked you to do it. Which of these two line item details would you rather see from somebody you're paying real money to? Consultant #1 Consultant #2 Email system administration ... 3.25 hours. Investigated email system problems per Martin; found that MS Exchange required a patch to deal with the latest Outlook IMAP queries; re-optimized all the message stores and tested with several email clients. ... 3.25 hours. Your detail should ring a strong bell with the customer, with him nodding his head on every item while he reviews your invoice. This gets you paid sooner and gives the customer The Warm Fuzzy Feeling™. Detail is comforting to a customer Consulting maxim: Give away some free time, but make it visible Most honest consultants spend a certain amount of time for customers that's off the clock, and this can be for several reasons. It could be that it's for something you're not strong in (and cannot justify charging full consultant rates), it could be a pet interest of yours where you are willing to give away the time, or it could be that your time on the task was so unproductive that you don't feel right about charging for it. These are all fine reasons. But don't do it quietly. If the customer asked you about email systems and you felt like you wanted to research this on your own, it's important to list this on an invoice as nocharge time: Researched email systems per Frank; investigated MDaemon, Exim and Sendmail for the Windows platform; note to Frank summarizing the findings ... 2.6 hours (n/c) This shows the customer the level of effort you've exerted on his behalf, and it puts you in the "trusted advisor who's in our corner" category, and not a "consultant only thinking about cha-ching". If the customer doesn't know you did work off the clock, you don't get credit for it Consulting maxim: It also makes it harder for a customer to object to the time you did bill for, but it's important not to use the nocharge time as a ploy: the goal is to maximize the customer goodwill, not to maximize the revenue on any given invoice. It's good for business to make your customers comfortable with your work for them: it maximizes The Warm Fuzzy Feeling™. Admit your mistakes Every consultant pulls the boneheaded move now and then: deleted the wrong file, forgot to do the backup, left the firewall off for the weekend. It's contrary to human nature to expect that a consultant will never make a mistake, but it's also not reasonable to expect the customer to pay for them. For a surprising number of your mistakes, your personal culpability won't be known to the customer unless you tell them, and in most cases you should do exactly that. Though you're likely to get away with deflecting the blame as often as not, if you get caught your reputation will be positively destroyed far worse than the mere responsibility for the mistake. I performed the same software upgrade for two unrelated customers, and some weeks later both had the same problem with a little-used feature. This issue was getting increasingly important, as it was affecting their customers, and after several days of intensive research it turned out to be due to a small but significant oversight I had made during those earlier upgrades. When we finished, it would have been really easy to (a) blame it on the software vendor, and (b) get paid for all my time. Neither one would have been right, so I wrote a letter to both customers explaining that the problem was fixed, that it was due to my error, that they didn't have to pay for any of it, and extending my apologies. This was an expensive adventure for me, but both customers were grateful for getting a straight story about something that was impacting their business, and this kind of candid admission contributes much more to The Warm Fuzzy Feeling™ than you'd expect from "I made a mistake". Anecdote: It's embarrassing to admit mistakes, but you owe this to your customer. The very reason you're a consultant is that you're the subject-matter expert and are supposed to know what you're doing. Everybody makes mistakes now and then, and I suppose that even some honest mistakes will mark the end of a customer relationship. But it's never happened to me. If you routinely take ownership for your own mistakes, you're much more likely to be believed when you claim something is NOT your doing Consulting maxim:

Housekeeping and Paperwork

In the late 1980s I almost left consulting because the administration and paperwork was such a burden, but my savior was Quicken, Timeslips, and Turbo Tax. If you don't have a mechanism for dealing with invoices, your checkbook, and your taxes, you'll surely go out of your mind.

Time Billing You need a way to capture your time, invoice customers, and record their payments: this is hard to do well with anything home grown. Many moons ago I had written a time-billing system using the Informix database, and I hated invoicing every month. Then I discovered TimeSlips and have been using it ever since. This is very popular with lawyers, but it does a fine job for consultants as well. The disadvantage of TimeSlips is that it's "a different program" from Quicken, and it means double entry of invoices and payments. This is a serious drag, especially when Accounts Receivable doesn't reconcile. The Quickbooks accounting system has a time billing system that's very substantially inferior to that of Timeslips, but it's all integrated with the rest of the accounting system: I have recently migrated to it. Those comfortable with real, double-entry accounting may wish to give it a try, but it's not for those who have never run their checkbook electronically. Finances / Your Checkbook For some time I operated with two checkbooks — one business, one personal — but I gave this up more than ten years ago. Once I started using Quicken, the need for that simply evaporated as I was able to properly categorize and class all my transactions to obviate the need for two accounts. It seems natural to separate accounts on a "purpose" basis, but in practice this is difficult. If you go to Home Depot to get some stuff for your office and some stuff for your house, which credit card do you use? Are you really going to write two checks at the cashier's stand? With the line waiting behind you? I've found it much easier to use Quicken's "class" mechanism to make this work perfectly. Every transaction has a "category" (office supplies, home repair, telephone charges, etc.), but this is not sufficient to split your expenses. By creating a class to each item, you can make that Home Depot receipt go where it belongs: Description Category/class Home Depot -- light bulbs for kitchen Home Repair/personal Home Depot -- light bulbs for the office Home Repair/business One account, one receipt, two purposes. This works really well and takes much of the burden of separate recordkeeping off your shoulders. However — many accountants and CPAs will strongly advise against this, especially if you're anything other than a sole proprietor working out of your house. It's said that IRS dealings are easier with separate accounts, but I believe that having meticulous electronic records alleviates that substantially. I suppose I'll find out during my first audit. Taxes Taxes are much more complicated for consultants, because Schedule C (Income from Self Employment) is much more complicated than Schedule A (Itemized Deductions). Every expense you have that contributes to earning income is deductible — software, auto use when traveling to customers, a good portion of your internet use — but this requires substantial recordkeeping. It's tempting to just get a good tax guy, but the taxes are not the hard part: it's the recordkeeping that categorizes which of your expenses are properly business expenses. It's not fair — or at least a bad idea — to drop off a box of receipts to your tax guy and have him try to read your mind. Good tax guys are not cheap, and you want to pay him to prepare your taxes, not do your bookkeeping. If you're using Quicken, getting into good habits of category and class will go a long way to taking care of this: having detailed reports of your properly-organized expenses mean that you don't need receipts for your tax guy, and he can file your return properly. For many years, I used Turbo Tax to compile and file my own taxes, and it was helpful to really understand how it all works. But I can hardly emphasize enough that you should get your own tax guy. My tax guy — who walks on water as far as I am concerned — saved me an enormous amount of in-my-pocket money the first year I used him. It's one thing to know the mechanics of taxes — as I do — but it's another thing entirely to know what's a supportable deduction and where the gray areas are. This is a minefield for those who haven't gone down this road, and having a good tax advisor will pay for himself in about the first fifteen minutes. Thank you, Tom: you rock. Filing your receipts Most new consultants attempt to separate receipts as well as they do accounts: separate folders for business receipts and personal receipts, but this quickly falls apart unless you're unbelievably rigorous in maintaining this separation. When you get your credit card bill every month, which folder does it go in? What if it has some personal and some business expenses? This gets messy in the first month, and it's not necessary. Years ago I adopted the practice of using 15" x 9" accordion files with a separate tab for every letter of the alphabet. I use a new file every year, and file all receipts — for whatever purpose — alphabetically by vendor. This is optimized for the only kind of search you'll ever do: fetch a specific receipt from a specific vendor. There are other financial queries you'll do (how much did I spend in March?), but you'll never need to gather all receipts from March. Having your receipts ordered by vendor name is perfect.

Promotion and Advertising

I've never done any explicit advertising or promotion: no Yellow Page ads, business card on bulletin boards, etc. For years I was fortunate enough that word of mouth was sufficient for me without having to put on my sales hat, but the internet has changed this substantially. Some may consider banner/Google ads, but I believe this is likely to be expensive and of limited effectiveness (though I have not tried either one).

It turns out there is a very effective method of promotion that does not involve spending any money or putting on a sales hat:

Your best advertisement is publishing original, technical content Consulting maxim:

In my case, I write Tech Tips on my website - this paper is one of them — and publish them on my website. I usually do one or two per month, but it's not on any kind of schedule. Once I've solved a problem that I think others might have trouble with, I'll write it up. Or, if I believe that I can explain a topic better than other resources (say, An Illustrated Guide to Cryptographic Hashes), I'll produce one as well.

In some cases I'll proactively promote them, such as submitting Malware Analysis to a narrowly-targeted venue such as Bugtraq, and I certainly announce them in my weblog, but by and large I allow Google to do all of my promotion for me simply by indexing them for people to find.

These do take a long time to write (and it's non-billable time), and certainly those who are not strong writers will have a harder time of it, but I believe these to be very, very effective methods of promotion. Most people who benefit from your Tips won't be candidates for customer status, but it does help establish a reputation for competence in the area you're writing about. It's also nice to get a thank-you from random people on the internet who are grateful for your efforts.

But when prospective customers are investigating a potential consultant, a website that is more technical than marketing may very well be seen as a positive: with clear, strictly-technical content, the customer can find out for himself that you're qualified rather than rely on you to simply claim that you are.

It's a huge asset to communicate well — cultivate this skill vigorously Consulting maxim:

Writing for a magazine is also a great way to raise your status in the community: most magazines are always looking for good writers, and getting published is typically a relatively informal process. Find an area you're competent in, make sure you understand the publication's target audience, and email the publisher with a proposal.

You will be expected to produce an article of so many words, and this number is chosen by the publisher based on how much space he has in the issue in question. If he asks for 3000 words, don't submit 2500 or 3500. And you must be on time: there is no surer way to burn a relationship with a publisher than to miss your deadlines.

This promotional approach does take time — a reputation is lost quickly but gained slowly — but I believe that these efforts gather a kind of momentum: as your track record of writing and publication grows, you'll have an easier time being accepted into the next one. All of this contributes to a larger and larger body of work that precedes you to potential customers.

References

If you conduct yourself properly, you will accumulate a list of customers who will speak well about you: in many cases these will be your best source of new business, and in any case they have a name: your references. No matter how renowned you are for your technical skills, it is hard to overemphasize just how important your references are to a successful consulting practice.

Think what you would ask if you were checking up on somebody you were about to hire: you'll ask about his skills, of course, but that's not all:

How was he to work with?

How much supervision did he require?

Did he show up when he said he would?

Did he deliver what he said he would?

How were his invoices?

Would you recommend him to others?

Though some of these questions touch on the technical, most are about the relationship. Many of us know engineers who are technically very strong but nevertheless hard to work with, and some are so difficult that the customer will work with a lesser consultant rather than deal with that primadonna.

Your references are your reputation in the consulting world Consulting maxim:

Obviously, one can get a friend to pretend to be a reference, and I'm sure this happens (much like lying on a résumé), but I believe this to be a terrible way to start a new relationship.

Likewise, it's obvious that you get to pick from your customer base, and you'll not choose those that are less than happy with you. But your prospective customers know how this works, and they can read a lot into what your references say (and they can smell a lukewarm reference a mile away). If you're doing a good job taking care of your customers, they are usually more than happy to say good things about you to others.

This doesn't always materialize, of course: from time to time there will be that relationship that simply doesn't work. A personality conflict, internal politics that you get caught up in, or a non-work life crisis can all conspire to create an engagement that you don't care to talk about.

Almost all long-term consultants have customers who will report a bad experience — I have a few — and sometimes these will be your fault. Only if the problem is due to overt dishonesty or incompetence should you worry about word getting around.

On Being Objective

Some consultants choose to include product sales in their practices, and though this is a legitimate aspect of business, the question of objectivity always arises with the customer. They will (rightfully) wonder whether you're recommending the product because it's the best or because they have higher margins, and there is not really any way to completely remove this if you have a vested interest in the transaction.

Make no mistake: it's possible to be objective, and many consultants do choose their product lines strictly on what's the best value. What remains is the perception in the customer's eyes, and all you can do is conduct yourself honorable and transparently so there is no question about your vested interest.

Your customers cannot wonder where your interests are Consulting maxim:

This means transparency.

I have long believed that computer-products sales do not have enough profit to be worth the trouble of dealing with sales tax (and sales tax authorities) or warranty returns. Maybe you'll make $100 on the sale of that printer to a customer, but if it's dead on arrival, you have to eat the time required to box it up and send it back.

But this is a business decision, not an integrity issue.

Personally, I made it a practice of selling nothing but my time, and to never accept referral/finder's fees, kickbacks, or commissions from vendors (though there is nothing wrong with a vendor taking you to dinner now and then). Not only does this avoid the warranty/sales tax issues, but the customer won't ever wonder if I have a vested interest in the transaction or if that interest is influencing my recommendations.

From time to time, a customer will require something — software, a cable, etc. — and I'll purchase it on their behalf, but this is strictly as a convenience to the customer. I include the item on my invoice at exactly what I paid for it, and I include the receipt.

Those who use this pass-through arrangement may be wise to include the phrase "Total includes sales tax collected by merchant" with the item to make it clear that you're not a reseller and are not responsible for collecting sales tax on your own account.

Be Easy to Fire

There are several reasons why a customer might find it difficult to fire a consultant:

He does great work and is a tremendous asset

He has passwords for everything: will he give us the list?

He has all the source code: will we get it back?

He has access to everything: will he do bad stuff to us?

He hosts our DNS: will he screw with us?

Only the first is a valid reason to keep somebody around, and customers are unnerved by the subtle fear of "what happens if...?" for the others. Consultants ought to structure their arrangements to remove as many of these as possible, and instead rely on their own good work to be their best job security.

From time to time, I give customers "How to fire me" instructions: "Here are all your important passwords", "Your contact at the hosting center is who", "Source code is here", "Revoke my network access by (A), (B) and (C)", etc.

Customers should ask for this from all of their consultants, not only to make them easier to fire, but as a contingency in case the consultant is hit by a bus. Sometimes customers do ask, and it must be met with immediate, full disclosure. It's not your data, you're not allowed to hoard it.

Customers are comforted by consultants who don't act entitled to their engagements Consulting maxim:

If a customer wants to fire you, hoarding this data will buy you a little time, but this breeds resentment in the customer that positively does you no good.

And sometimes you will be fired — it could be that the project has been cut, they cannot afford you any longer, or they may simply not like you very much. These things happen, but what marks you as a consultant of integrity is how you behave on the way out.

Find everything — physical and otherwise — that conceivably belongs to your soon-to-be-former customer and return it with a cover letter stating that you have done so (this partly for your own protection). Even if they have covered their bases well, it's common for them to have missed something (e.g. "I'm still the registered contact for your DNS management, I recommend that you transfer this your own staff. Password is hello").

You may never hear from them again, but you'll know that you did the right thing.

Firing your customers

Many years ago, I read a column in Electrical Engineering Times about small-company-makes-good, and the now-successful owner was asked "How did you know you'd made it?". The answer has always stuck with me:

"When I didn't have to do business with people I didn't like"

I am fortunate that the overwhelming majority of my engagements have been pleasant and productive, and I've made some very good friends out of them, but not every one is like this. For one reason or another, the relationship can sour or a customer may start taking advantage of you, at which point you can consider just walking away.

I once had a customer that I generally liked a lot, but for whatever reason, they positively could not pay me on time (and they even had net 30 terms at the time). I believe they were in an industry where taking your time was just part of how they were allowed to operate, and in spite of talking to my customer about it every single month, nothing changed.

I believed that I was performing a valuable service to this customer, but apparently not valuable enough to be paid on time, so I completed all outstanding work and invited him to find another consultant (i.e., I fired him). Not surprisingly, he's not among my references.

The customer is NOT always right Consulting maxim:

Not all consultants in the same position would have made the same choice, but everyone is allowed to choose whom to do business with.

But even when you fire a customer, make sure you do so with integrity: the customer may not speak well of you, but you should give him no grounds to claim that you acted dishonorably.

Google is not always your friend

These days, many customers evaluating a consultant will do the same thing you do before going on a first date: Google them. This is where the other side of a net presence comes into play: though your website may be professional and full of outstanding technical content, this can all be undone by your own words found elsewhere.

If a search finds a potty-mouthed political flame, a public trashing of your ex-wife, or open advocacy of illegal activity, this can go a long way to telling a prospective customer what kind of person you really are. It might not impact their view of your technical skills, but it may give them a good reason to look elsewhere for a consultant.

The internet never forgets: don't provide dirt for your future Consulting maxim:

A good rule of thumb: if a search engine can index the venue, don't say anything you would not want your customers or your family to read. This certainly leaves you open to private venues, such as a members-only forum, where you can tell that dirty joke or vent about the ex, but even here it's wise to be concerned about inadvertent leakage.

A colleague has noted a countermeasure for this: have a ridiculously common name.

How much do I charge?

This is the single most common question that prospective consultants ask, and one of the hardest to answer. The short answer is a mix of "whatever the market will bear" and "how busy you wish to be". Some consultants operate on a strictly hourly basis, others on a retainer, and yet others on fixed-bid contracts — none is inherently superior to any other (though some are more suited for some kind of arrangements than others).

I operate almost entirely on a by-the-hour basis, with only occasional forays into retainer or fixed-bid arrangements, and my rates were initially set when I started out in 1985. Those rates have risen steadily over the years to reflect my growing experience, though the end of the Internet boom did put a damper on them.

New consultants typically ought to charge a bit less than the going rate for other consultants in the same area, which allows for their lesser experience and wanting to get a foot in the door. I'll note that "lesser experience" refers as much to "conducting a consulting practice" as it is to "knowledge of technical issues". Many very good engineers leave big companies with outstanding subject-matter expertise but nevertheless have only corporate experience: much of this does not directly translate into consulting.

Raising rates is usually difficult for new consultants: you've built a good personal relationship with your customers, and now you're asking for more money. Raises should be modest, and with plenty of notice (at least one full billing cycle, perhaps even two).

Raising rates is usually done when demand for your services is high, and there's a good chance your customers know when this is: you're juggling more work and they see scheduling farther and farther out. Some customers will use less of your time at the new rate, but in some sense this is intended.

If you're booked up solid, your rates are too low Consulting maxim:

One must be careful that one doesn't take this too literally: the concept "booked up solid" is over a fairly long time period — many months at least, perhaps even years — and it doesn't mean that rates should be jacked up just because you're having a busy week. I can't remember ever raising rates more often than once a year, and even then not for all customers at once.

It's also common to have different rates for different customers. Long-term customers, upon whom your business is likely based, should probably pay a bit less (or at least reduce or defer the increases): they are your bread and butter, and consistent ongoing work is much more important than maximizing your hourly rate.

Your long-term customers are your best customers Consulting maxim:

Furthermore, different kinds of work deserve different rates. For some of my customers, I am essentially the on-call MIS staff, so I am at the mercy of day-to-day whims. This makes it hard to schedule the work, so it is normally full fare. But for other customers I do project-based software development, where I might be writing code for several months.

This is work that I can do when I'm not solving problem-of-the-moment, and in that respect is better work because I get to pick my own schedule. Long-term, at-my-own-schedule work warrants a lower rate to encourage this kind of business. Background work makes your time more liquid, and consultants (like me) who prefer to mainly work at home love having a backlog of things I can work on in my slack time.

A similar principle applies to offering lower rates for work you simply enjoy more than other kinds of work.

I don't typically offer multiple rates to the same customer, though this is certainly possible. I could imagine a consultant offering web design for one rate and network diagnostics at another, but this gets difficult to manage, especially when there is some legitimate question over which category the particular work should be in.

When offering a discounted rate to a customer, consider doing so not by lowering the rate itself, but by offering/increasing the timely-payment discount. If your going rate is $100/hour and you wish to offer a customer a $90/hour rate, make it a 10% discount if their invoice is paid within account terms.

This way you have given more teeth to your due-by date, and a customer that decides to use his consultant for float will have a hard time defending taking the discount after paying late.

Happily, though: consultants are generally earning the most when they are thinking about money the least: By focussing on your customers and your skills, you make yourself the most valuable.

The best way to make a lot of money is to make your customers a lot of money Consulting maxim:

Time and Project Management

This is a very hard problem for a true consultant, but less so for a contractor. Your schedule is largely at the whim of your customers, and many consultants find that it's a feast-or-famine existence. You may have a nice comfortable level of work, but then two customers come with large projects: how can you do it all?

Unlike corporate employment, where your boss gets to make these priority decisions, one customer rarely cares that some other customer also needs your attention. In many cases you can simply schedule the work ("I can do that for you by next Tuesday"), but consultants involved in day-to-day work cannot really expect a customer whose whole business is down due to a crash to just wait a week for you to show up.

Though your customer may very well understand that you're busy, are dealing with some other customer disaster, or you have to stay home with a sick child, one cannot escape the reality that a consultant who is not available has less value than one who is. I've heard many customers speak well of previous consultants:

Said by customers:

"He was a great guy, but he was never available"

To some extent this can be partly addressed by higher rates — which reduces your demand — but this only works over the long term. In the short term, you do not want your good, long-term customers going elsewhere because you're not around, so the only solution may be to just work harder.

As long as you're sleeping, you still have inventory Consulting maxim:

You have to decide how much of your life you're willing to be consumed by your consulting practice, and you may decide that the always-available treadmill is just too stressful — this is a completely legitimate decision. But you're going to be less valuable to customers, and therefore justify lower rates.

Many consultants have a common fear — will the work dry up? — and this can be quite pervasive. You have no real job security and are at the mercy of customer projects, budgets, and personalities, and in many cases you don't know that you will have work two months from now. This creates an incentive to take more work than you can handle on the assumption that it might not be there in the future.

I was booked up solid for 17 years (yet always with the "what if...?" fear) before the bottom fell out in late 2001, and an empty pipeline is a very sobering experience.

Your pipeline is the amount of committed work you have in front of you, and longer pipelines are much more comforting. You can't do much to avoid or predict the routine day-to-day interruptions, but you can schedule the larger projects. Taking on a new project that you can start in two weeks means that you now have a certain amount of work you can count on.

The fear of an empty pipeline is with most consultants constantly , even if they're consistently very busy Consulting maxim:

Unfortunately, consultants worried about their pipeline have a natural tendency to squeeze in new projects. Though the new project is done at the moment, the time taken adds to the total pipeline because the other projects remain. This is not terribly fair to the existing customers who are getting pushed back (probably without notice), but it's hard to overemphasize how powerful the empty-pipeline fear is.

Even good consultants do this now and then, though they typically manage it by cutting into non-work time rather than outright shortchanging existing projects.

A final note on time management: with ongoing customers, there will often be low-priority background projects that can be handled more or less at your convenience — e.g., anytime in the next few months — and these are great to have in your back pocket during a slack time.

But many of these long-term customers have a kind of unspoken limit on how much you can bill them in any given month, so there is only so much of that back pocket time you can expend all at once. Of course, if there is a disaster and you have to dive in, it takes what it takes, but most customers will call a time out when the invoice level reaches a certain amount.

You're likely to run into a circumstance where you have things you could do for this customer, have nothing on your plate for anybody else, but have already reached that unspoken limit: if you go over, you'll probably get paid, but it means you're not going to be trusted to keep it reasonable in the future and will be subject to heightened scrutiny.

Locating this unspoken point is difficult, but it's important not to see it as gaming the customer. This all presumes that the customer legitimately needs the work done: otherwise it's just churning, which is dishonest and besmirches the whole consulting profession (and this is a close cousin to "value billing" used by accountants).

Instead, you're providing the customer with a service by properly prioritizing the tasks in front of you, and in some cases you are more qualified to do this than the customer is: "Does that server need to be replaced right away, or can we get six more months out of it?" or "Is our firewall secure enough, or must we upgrade the software now?".

You must know how to read your customer Consulting maxim:

The Projects you don't take

It should come as no surprise that not every consultant is qualified to take every project, what's not obvious is that a consultant should not take every project for which he is qualified. There are circumstances when telling the customer 'no' is giving them good service even if you don't get paid for it.

A customer wanted me to "just start programming" on a large software system, but over their objections I insisted on creating a formal specification first. After creating a 100-page document (which in retrospect was nevertheless wholly inadequate), Microsoft Project told us that it was going to take far more time and money than the customer had available. The project was shelved. Anecdote:

It would have been easier (and certainly much more fun) to "just start programming", and I took serious pushback from the customer during the process, but it's absolutely clear that this was the right thing to do.

Your customers are buying your judgment , not just your time Consulting maxim:

To be fair, I did get paid for writing the specification, but it was far, far less than what the programming would have been.

I was brought in by a new customer to evaluate another consultant's work. I found him to be technically competent, but the customer felt he was too secretive and generally difficult to work with. So they could get rid of him, they asked me for a proposal to provide around 20 hours/week of consulting, and even at a discounted rate it would have been good work: it was a very slow time for me. But during my evaluation I met a low-level guy on the help desk, and it was apparent fairly quickly that he was the perfect guy for the job. He was young, but he had good training, good experience, and had simply been smothered by the other consultant and not allowed to grow in his position. During the meeting with the customer, I told them they did not need me: they would get much better service for much less money by using their own staff. They were flabbergasted to hear this, but it turned out to be exactly the right advice for them. I understand they have been thrilled with Joe. Anecdote:

I lost the project, but gained a reference and helped a very nice young man take a big step early in his career. And you never know when one of those managers may go elsewhere and need the services of a consultant who's demonstrated that he looks out for his customers.

Being known for your integrity is the Holy Grail of consulting Consulting maxim:

Consultants should always act in the best interests of their customers even if it's not so good for you. It may be expensive, but this is how a reputation for honesty, integrity, and professionalism is built.

Intellectual Property

Unless you are providing nothing but services, your engagements are likely to involve some intellectual property (software, documentations, designs, patents), and the open question is "Who owns it?"

My policy has always been "The customer owns everything".

It's possible to structure an arrangement where you provide software in binary form, with source code being extra or put in escrow, but I believe these to be counterproductive to a good customer relationship. If you're seen as holding back or trying to create a device for extra billing, the customer often feels like you're trying to manufacture job security: this never engenders good feelings.

An open customer relationship cultivates The Warm Fuzzy Feeling™ Consulting maxim:

By telling the customer "Everything is yours", you are making it clear that you are relying on nothing but your performance for ongoing work, and there are no questions about what's in and what's out.

One question that arises often: "can I reuse software from one customer to another?", and the answer is "sometimes". Generally, you cannot reuse a whole project because it represents customer-specific functionality. This is their property and you can't repackage it without their express permission.

But once it gets down to the building-block level, it's perfectly reasonable to reuse library code that performs generic, non-proprietary functions (say, a networking library or a database abstraction layer). I have a substantial body of C/C++ code that I draw upon for every project, and as long as nothing is tied to the original customer (either by comments in the code or proprietary functionality), this allows you to do your project in less time.

Some consultants actually charge for their building-block libraries (so called "toolkits") and though I suppose this can be reasonable if it's a really substantial infrastructure, I have never done so. I decided that part of my value is everything I bring to the table, and it's what allows me to do a project faster and better, justifying my rates.

The other reason is that customers are usually suspicious of these toolkits, viewing them as an excuse to charge more money. This is less of a concern if the toolkit is available on the open market and not strictly as a pitch to consulting customers, but my libraries do not warrant that kind of packaging.

Many of your projects will be one-time custom jobs, but sometimes you'll be asked to build an actual product that your customer will sell (more likely on a contract basis). In these circumstances, other arrangements are possible, such as offering a discounted rate in return for a royalty on each unit sold.

This reduces the hit that the customer takes up front and gives you a vested interest in the long-term success of the product: it's better for everybody when your interests are largely aligned with that of your customer.

But it does require more recordkeeping, and it create incentives for the customer to underreport sales. These arrangements require much more negotiation skill on your part, especially since the customer usually knows his own market space better than you know his space. I have never undertaken a royalty engagement.

Another issue that comes up from time to time is patent rights, and this often generates very strong feelings. I have always believed that software patents are terrible for this industry and have opposed them vigorously. My previous position had been that I would not participate in software patents in any way, but I have reversed myself.

I have several customers who patent everything they can find, but strictly as defensive measure. Often, the only defense to a claim of patent infringement from another party is a patent portfolio of their own: they will trade and call a truce.

My customers positively hate this — it's expensive and an enormous distraction — but they have to play in the same game as their competitors. Refusing on principle to patent anything means the customer may be defenseless when the Cease and Desist letter arrives.

I have not yet been involved in any patent proceedings, but the general sentiment of the "Customer owns everything" consultant is that the consultant assigns the patent rights to the customer while perhaps retaining the role of Inventor.

Making the Leap

I have been a consultant for essentially my entire adult life — I've never held a "real" job — and the question of making the transition from corporate life to consulting is something I simply have no real experience with. But I can touch on a few issues that I imagine are probably important.

It's important to handle the obvious financial considerations first: have a nest egg in the bank, arrange for health insurance, create an office to work in. This all takes more money than you think, and cashflow issues are always more difficult than you expect.

Many consultants get their start not by diving in, but by dipping a toe in the water. A bit of work on the side is a great way to get a feel for the business and see if it's really right for you.

Though the extra income will be nice (and is often the main draw), the primary benefits of these early contracts are usually not financial. Do you have the ability to manage your time without supervision? Are you able to treat customers like customers? Are you able to think well on your feet without a boss to fall back on? Can you earn a reference?

Most beginning consultants don't realize how important these non-technical factors are, and some have taken the full plunge only to find out that they were simply not cut out for consulting for whatever reason. Failure is usually a very painful experience, and starting slow may help avoid this.

Your early contracts will almost always be at a less-than-market rate: if you're not generally available during working hours, and if you take a day or two to respond to queries, this makes you less valuable to the customer. But it's extremely valuable for you to find out how you work in this arena. This is an investment.

But I'd like to wave you off on a common trouble area: customer theft. When your corporate job includes servicing of customers, it can be tempting to go solo and take those customers with you, but this is an enormous mistake if it's not done with the approval of the company. In addition to potentially running afoul of non-compete-agreements with your employer, it sends the message that you cannot be entrusted with a customer relationship.

If you have a reputation for stealing customers, you'll never be trusted by other professionals Consulting maxim:

But once you've gotten a few projects under your belt, you'll hopefully have a taste for how the business operates, have some great references, and have enough work lined up to create a comfortable pipeline. If so: make the leap!

Technical Skills and Certification

I purposely put the technical part of this Tech Tip last, to reinforce the notion that "customer service", not "computer science" skills are the biggest factors in a successful consulting practice. But it's foolish to think that technical skills don't matter: you don't have a business unless you can offer a service that a customer is willing to buy.

I have a Bachelor's Degree in Computer Science, but this only rarely comes up and I have never been asked for my GPA (it wasn't anything spectacular): this is my only certification. Though for employment, certifications (degree, MCSE, CISSP, etc.) tend to matter a lot, they are much less important for consultants.

Your references and your experience are far more important than your certifications Consulting maxim:

What counts here is truly learning the subject matter, and there is no harm in obtaining the certificate in the process. But if the goal is just to collect some paper, it leads to the prototypical computer jockey with lots of alphabets after his name but limited power in the driver's seat.

Where the skills question gets tricky is when getting outside your comfort zone: a customer will ask you about a project that you are almost, but not quite, qualified for. Surprisingly, this happens a lot: if you have conducted yourself well, your customer would rather find a way to use you — a known quantity — than find somebody else. This occurs over a fairly wide range of skills.

When considering one of these projects, the first rule is: never lie to your customer about your skills. Be completely candid with your customer about what you know and how you would address the project. This would likely include substantial off-the-clock time as you got up to speed on the technology in question.

Do not BS your customers Consulting maxim:

But it's important to weigh not only how you think you could handle the job in question, but how much you could leverage this for some next project, perhaps with a different customer.

For instance, if you've been a Visual Basic programmer for a long time and are invited to consider an ASP.NET project on the web, this may be a stretch for you technically. If this is an area that you see yourself wanting to branch into, tell the customer you will get up to speed on your own time and may even offer a discount to make your services more attractive.

What you get at the end of the road is not only a new skill, but a new reference. The time you spent on this project makes you more valuable — more full service — to this and other customers in the future.

"Education" is one of the best investments a consultant can make Consulting maxim:

The term "education" is used broadly here: formal training, heat-of-battle experience, previous consulting projects, and even personal projects at home that interest you.

This Tech Tip has been many months in the making, and it's important to emphasize again that it's based strictly on my own experience and observations, and I have no special business-school training to back it up. Most of this was learned on the job, and I can only assume that my still being in business after 20 some years means that it's not entirely without merit.

But there are a lot of ways to conduct a consulting practice, some of which bear no resemblance to how I have conducted mine: you are strongly urged to seek real counsel before setting out on your own.

Don't quit your day job solely based on what you read here Consulting maxim:

The very best of luck to you.

Note: The ™ in The Warm Fuzzy Feeling™ is a presentation device, not a real trademark.

For another look at the life of consulting, please consider Spare Room Tycoon Succeeding Independently (subtitled The 70 Lessons of Sane Self-Employment), by Dr. James Chan, which is less about how-to and more about what you're going to go through. It's an easy read, and it gives a great insight to the experiences of self employment in a wide variety of industries. This may give you clues as to whether you have the personality for going it alone or not.

Special thanks to Chris Mospaw for his graphic-design help.