In our last article of this series, we discovered what our group sees as the hardest issues to deal with in regards to being their own boss...the uncertainty of your next paycheck, the fact that you have to keep yourself on the cutting edge of technology, that long hours and few vacations are a fact of a consultant's life, that you must learn to wear a lot of hats and master all facets of business because the buck stops with you—if you don't have any other staff on which to fall back, and that feast or famine is the name of the game when you are a consultant.
Yes, it can be a tough job. So why on earth would so many people be foolish enough to expend so much effort to do a job that sounds so unpredictable and hard to do? Well, as we learned in their answers to the second part of the question...what's the best part...the rewards may not be as numerous as the potential disadvantages, but they are important rewards!
Not everyone will agree, but I'm sure many will. Think about your job. What are the things most people complain about? Let's see...there's the boss you hate, the stupid people with which you have to work, the rotten hours, the lousy pay, the fact that you're not appreciated, you get stuck doing work you hate, you need to get approval in triplicate just to sneeze and the work you do isn't fulfilling—not satisfying enough to keep your interest or make you feel like you've actually accomplished anything worthwhile. Is that what's getting you down, bunkie?
Well, there you have the answer. The reason consultants work under more pressure, longer hours and under somewhat precarious circumstances is because the rewards they do get are the big ones.
It's hard to hate your boss when your boss is staring back at you in the mirror. And if you're a one person shop, then you're in trouble if you complain that your colleagues are idiots! Yes, the hours can be rough when you have to work long hours or deep into the night to finish a project when you'd rather be doing something else. But for the most part, you can plan your own work schedule...walk the dog, go to the kids games, get the shopping done when everyone else is at work and you're not wasting hours commuting! Yes, the pay is tricky... particularly when it's non-existent and you have to survive. But seeing that you do keep yourself on the cutting edge of your trade, you're one of the best!
Smart business managers are willing to pay the price to get an expert who will do a job better than others. Which means you make more money than you could make for the same hours of work at a regular job. It's the price of quality and expertise. If your career is going well, you don't have to get stuck taking on work you don't want to do. If you're lucky and things are going well, you can choose to only take on the interesting/rewarding jobs. And because you're your own boss and an expert, you don't have to ask permission to do what needs to be done...you just do it. And there's a tremendous satisfaction in that fact, alone!
But the most important reward, which I'm sure my colleagues will agree as being one of the main reasons we deal with the down side, is because it's extremely rewarding in and of itself to be an expert who is appreciated for their skills and abilities. People want what you have to offer. And not just the fact that you can write code or solve a technical problem. Sure, a lot of people can do that. But because you have become...whether force-fed or through desire...a well-rounded professional.
When a consultant has spare time, they're not out partying. Not because it's not in their nature (HA...have you ever attended an IT conference!<smirk>). But because they know how to make the most of their time and they use that extra time to learn and become even better at what they do. They have a drive to be the best, so they're constantly pushing themselves to learn more about the technology, as well as the business end...which includes customer relations and all aspects of being a consummate professional.
Think of your home as your business. If you needed to hire someone to do an important repair or improvement to your home...which would you choose. The cheaper fix-it company who does a half-assed job, drags the project on for much longer than is necessary and causes disruption in your life, as well as giving you a migraine every time you have to deal with them? Or would you be willing to pay more to get a dynamic professional who knows what they need to do and gets down to business to get the job done...and done right?
As they say, you get what you pay for!
This month we hit the most important and most sensitive question...the customer! We asked our group to tell us about the good/bad issues of dealing with customers. As a consultant, you may not have a boss in the job-related sense of the word. But in the business-sense, your customer is your boss. They are the ones who cause you to work long hours, if necessary...pay your salary...and make the demands. And just like bosses...there are good ones who work with you to make the job very rewarding. And there are also those who can cause you to run screaming!
Phrasing the questions this month was a bit difficult due to the fact this is such a sensitive subject. So we left the basic interpretation to the consultant to discipher. Overall, we just asked them to provide good and bad comments as they related to the customer and their dealings with them.
The Bad Customer Issues...
This question really came down to only one thing for me - not responding in a timely manor. I could have said being too picky but I am a perfectionist myself and want my clients to have the best and therefore when they want things perfect it doesn't bother me. I could have said bugging me with 50 emails in one day but I like the fact that the lines of communication are open enough for them to feel comfortable emailing me at will, even when its off topic from the project. Not responding in a timely manor can make things very difficult for a consultant. Keep this in mind when dealing with a consultant: You are dealing with a person that is wearing every hat inside of a company and can't devote 100% of their time to one area. I, myself schedule during the week time to work on projects, time to work on the growth of the company, time to work on the books, time for sales and marketing, and some fun time when I get to work on fun projects (like the applications I develop for the public <shameless plug>Cfont pro (http://www.cfontpro.com)</shameless plug>. When I work on a project and have to wait a week for a clients response and other projects come on board, it makes scheduling a nightmare. The bad clients expect work completed now, but take their time responding when I have an issue that holds the project up.
First off, I have to say that I don't have very many problems with
clients because I don't get involved with bad ones in the first place.
Sorting out good clients from bad ones quickly, before you make any
commitments, takes a lot of experience. Luckily I gained that experience
working for other people so I never suffered too much from my mistakes.
During the five years I've been in business for myself I've taken on
only one client whom I personally didn't like. Even here I was aware this
was the case going into the project, but I took a calculated risk because he
wasn't completely insufferable and I thought it would lead to significantly
more work (it didn't). Here are a few things I've learned to watch out for
and avoid in potential clients:
* Clients who tell you up-front that they're demanding and hard to please.
This translates into "unreasonable". Let someone else suffer with these
* Clients who try to get you to lower your price once you've given them a
quote. These people will nickel and dime you all the way down the road. Stay
away from them.
* Clients who insist that you work on-site even when there is no advantage
in doing so. These people are control freaks. If they can't see you they
don't think you're doing anything valuable. Politely suggest they look
* Clients who ask you to take an equity stake in their project rather than
charging the standard rate for your work. There are so many ways you can get
screwed doing this that I advise you never to accept these offers. The only
exception is when you are intimately familiar with both the person making
the offer and the market for the product in question.
Customers who are so concerned about their own image and agenda that they will pay you to make them look good. Makes me feel like a whore. (Can I say that?) I won't do business in that way. We recently had a potential customer tell us that her company has decided they need a new technology implemented, but they haven't gathered any business requirements. They asked us to come and document the business requirements that would support their new technology. (We have accepted the job, but we are going to develop the business requirements as they ARE, not as she wishes them to be. Should be interesting.)
A customer who thinks he is always right, especially when he actually is not. For
example, a customer calls me to say that my report is working incorrectly (which
worked just fine for several months). He insists that I have to correct it. I ask him to
check everything. We spend several hours only to discover that what is wrong is that he imported old data or made an incorrect selection.
A difficult customer is someone who doesn’t hold up their end of the project. When someone hires me for a web design project, what they are paying me for is my expertise. Part of that expertise is to deliver a specific project at a fixed price by a particular date. I even have both parties sign a contract committing to it. That said, however, I also rely on the customer to provide me with necessary information to carry out my tasks. That means coming up with all the content, photographs, and graphics they want to be on their website. To safeguard against lazy customers, built into my contract is wording that states the customer is responsible for delivering specific information, products, graphics, etc. by start of project, or by specific milestones within the project. That keeps everything on track and makes the customer co-responsible for their project. Most clients love my organization and are so excited about getting a new website that they are more than willing to provide all the necessary materials on time.
A difficult customer ignores this. Not only that, they ignore emails requesting information, they stall, make excuses, and try to change the project at every step and turn—even when the have already signed a contract agreeing not to do so. Ironically enough, these uncooperative customers are the exact same ones who penny pinch and complain a lot! Maybe it is just temperament but these kinds of people drive me bananas! Thankfully I have only one customer right now that may wait weeks before returning my phone calls and emails, only to be annoyed with me that the process is taking so long. Gently I remind them that I’ve been waiting for them to do X,Y, Z and that once they do so I will be happy to resume work. That is usually enough to get the ball moving again, but it’s not an ideal situation.
For me, difficult customers are a liability because they waste too much of my time on administrative duties; time that I can be using to earn a living by building websites for other customers. To avoid working with difficult work relationships, during the contract negotiation process I try to weed out potential bad customers by their temperament and if they’re too demanding or wishy-washy I will decline bidding on their projects. Every once it a while, though, a bad customer slips through the cracks, so when that happens I complete their job as fast as possible and move on.
So my advice to customers out there who think this sounds a little like them: To make your consultant’s life easier and get your project completed on time, LISTEN TO YOUR CONSULTANT, PROVIDE THEM WITH THE MATERIALS THEY ASK FOR IN A TIMELY MANNER, AND THANK THEM FOR THEIR COMMITMENT TO YOUR PROJECT. Remember, you hired them because they are the expert.
At this point in my career, I can usually recognize and avoid a bad customer. Plus, I have an initial document that I send to anyone requesting a quote that outlines the basics of how the project phases will proceed. It explains how I work and helps to weed out the problem customers. That is not to say that I will avoid someone who doesn't quite understand what they want, because I'll be more than happy to work with them to better understand all potential solutions. What I mean is that I don't want to work with a customer who wants the moon, but expects you to deliver it quickly...without taking time to properly scope out the project details and pay for you to do that type of analysis, if the project is large enough to need that extra effort. Business professionals understand that projects need planning.
That said, I also find one of the most aggravating aspects of a project to be trying to work with a client who is poor at communicating. In these times of spam overdose and filters that trash assumed spam emails, it's important to keep the lines of communication open with quick and timely emails back and forth, as needed. A good client will acknowledge your emails, communicate freely and give you good feedback about both their schedule and their testing.
There's nothing more frustrating than to email a client questions you need answered to do your work or send them files for approval or testing and then not hear back from them for some time. A professional client will take a moment to reply to confirm that they have the information you sent and let you know when you might expect the reply you need. It doesn't take much effort. One of my clients at the moment is someone who is not particularly savvy when it comes to computers. Yet he never fails to reply to all my emails within a few hours, even if it's just to say "okay." I never have to worry that we're not on the same page. Alternatively, I also have been working with someone who touts himself as a long time professional in the technology field. Yet I rarely ever get a reply to any of my emails and I have a strong feeling that he has no idea what's going on. He'll suddenly ask me a question that I know I've answered in details several times.That's not only rude, but bad business sense.
But the worst is the potential client who asks you a lot of details about cost and timelines and then bails without so much as a thank you! You work up a good proposal and send it off. Okay, so maybe the quote turns out to be sticker shock because they didn't realize the work the project will entail and they can't afford to use your services. A professional replies to say thanks, but no thanks. Any potential client who doesn't even have the courtesy to do that isn't someone you'll ever want to work with in the future!
I find it difficult to deal with the fact that often clients will approach me with their needs and ask me to give them a whole read on it, how long it will take, how much it will cost, etc., and then, armed with this information… they disappear! I wish all clients would come to me when they’re ready to plunk down their money. Or sometimes they’ll get all this info from me and then they’ll have to go run it past their boss, and I won’t hear from them again. Very frustrating.
Another common occurrence that’s almost a cliché these days is what’s commonly called “feature creep” – when, no matter how hard you try to get project requirements clearly defined up front, halfway through, the client realizes they forgot to mention a feature they need done which wasn’t part of the original design. This can cause many problems. For one thing, sometimes a change like that forces you to rethink the entire design of the system. Or, at a minimum, it creates a quandary about how to handle the financial end of things – certainly if the project is being billed on a time & materials basis, then there’s not much of a problem, but if the project is on a fixed price, then you have to renegotiate for this new feature, and it’s nice to try to arrive at something both parties will be happy with, which is often easier said than done. It can be a difficult balance to have both the client happy and the consultant happy.
It’s difficult when a client knows a lot about computer technology. While it can be a benefit for the client to understand enough about technology so as to have an appreciation of what’s involved to produce a particular result, however, if the client is too savvy, they can be savvy enough just to be dangerous. And annoying. Then they may think they know how you should do something, or think you should be doing something another way, and often they’re just plain wrong, and should leave it to the professional they hired to do the job.
Computer consulting consists of two facets when you get down to it – we provide a technology solution, and the client pays the money due. So from the consultant’s point of view, I’m providing the technology solution, let me handle that part, while the client’s job is to pay their bill at the agreed-upon time. If they don’t, it can be very frustrating. Then much of my time that could be spent working on providing the solution can be spent chasing down a payment, and it can just cause a lot of tension.
Sometimes when I quote a price, I feel like a plumber when he tells you it will cost $7000 to fix your leaking sink. Sometimes I have the feeling that people think computer technology should cost nothing or very little.
I've had very few of these. A bad client to me doesn't clearly define the
expected outcome and the framework for it (and I'm getting better at either
extracting it from them or just walking away). A bad client doesn't
understand that tasks C and D are an order of magnitude more work than A and
B were, despite numerous discussions. A bad client doesn't understand or try
to understand the limitations of a platform, and why he should hire a SQL
guy to do that project, not an Excel guy.
When proposed with the question of what I find difficult or "bad" when
dealing with customers isn't a question that's easy. I mean it's not simply
a list that you can provide. Instead it's something that is fluid. It can
change from customer to customer, and yes it can completely be dependant on
the type of mood I may be in that day. That said I'll try to limit it to
just a couple items.
The number 1 item, for me, that I would have to say is usually the deciding
factor in classifying an "easy" or "tough" customer is patience. Patience is
the key. I do all I can to take my time and try to understand what the
customer wants. This is usually NOT what they say, and that's where it's
tough. The customer very rarely speaks the same language as a developer or
consultant. Quite often the customer tries to tell you what they think you
need to know instead of just coming right to the point of what they need. I
usually have to poke and nudge the customers to get all the details I need.
To a customer this often comes across like you don't fully understand them
and they often lose patience. This is where the skills come in.
You need to
find a way to set the customer at ease and make them understand that you
understand, and at the same time you need to get them to divulge all the
information you need from them to do the work. I've had meetings with
customers where they thought it would be a "quick" meeting and in 10 minutes
they'd be out the door. 2 hours later I'm still asking questions on their
specifications. I find that many customers go from eager, to frustrated fast
but after the questions they come to the realization that these questions
were necessary. It's quite common for customers, during these question
sessions, to see their needs in a whole new light, often leading them to
revelations or ideas of how to make their products even better.
In short, be patient with your consultant and take the time to not only
understand what they are asking but why they are asking them.
Unfortunately, one of the realities of consulting is that you will run across people who want something for nothing. Some people don't get that time is money. Or more specifically that my time is money. Some customers have no idea what they want and can't figure it out until they see what they *don't* want. Revisions mean time, which again means money. Some customers also don't seem to understand that delays on their part will result in delays in delivering the project. We actually have included a clause in our contract that says if the client fails to give us access to the necessary materials or personnel for us to complete our work "in a timely manner" it may result in increased project costs or delays.
The Good Customer Issues...
I really enjoy working with clients who are beginning to intermediate
level developers and want to learn more but have called me because they're
stuck on something and need someone with more expertise to help them out.
I've built many excellent long-term relationships by mentoring these people.
I teach them the right way to do all the things I've done a hundred times
and they keep paying me to take the lead in programming the next step up in
complexity, which is the fun part for me. It's a classic win-win situation.
One word: Communication. Its starts with communicating the details of the project and keeping the lines of communication open during the duration of the project. Projects are rarely as black and white as the specification presented by a client and keeping the lines of communication open during the project keeps the project moving along and ultimately results in a better project deliverable (website, web application, or desktop application).
Most of my clients are good clients. Many of my favorite clients are technically, numerically, or analytically adept; scientists, engineers, finance people; and they even do a lot of work in Excel and VBA. They know
what they want, they have an idea what development is like and they have at least some clue of what can be expected out of Excel. Some of my clients are other consultants, who are either more generalist than I, or have expertise in other aspects of the work (e.g., their strength is analysis of the results that come out of my projects); they come to me to fill a gap. In some cases I've even worked side-by-side with clients in development of a project for a different end-user.
A good client expects me to get to his project very soon, but not necessarily today unless his office is burning down (and if it is burning down, I'll get to it today). A good client pays in a timely fashion; I can handle a 30 day cycle, but my mortgage company won't tolerate a 90 day cycle, so why should I?
A customer who really likes to help me understand what he needs. That is an intellectual customer.
For example when he finds an error - he tries to understand what can
caused this error, and then gives me suggestions, or he tries to reproduce
the error once more and describes all the steps.
The prize client is the one who understands that you have valuable skills. They understand that you are an expert in your field and that your expertise is valuable to their business. And they understand the value of what you can offer them to save them time, money or improve their image.
A client who understands enough about what you do to see the potential for their business is one you defintely want to keep happy so they return because working with them is a joy. A professional customer will understand that good-faith deposits are required, that a fully detailed project analysis is not part of the free quote estimate. They can see the big picture and know that spending money for a custom solution, built by an experienced expert, will greatly enhance their business process in the long run.
I once read a line in some management book that stuck with me over the years as a sign of a quality professional. It said something like..."A good manager hires people who know more about the job than they do." And that's so true! The few terrific bosses I've ever worked for were those who hired you because they knew you knew how to do the job required and then they let you do the job without continual challenges. They trusted you to do the job (or hang yourself and then fire you<g>) and they were comfortable in their own abilities so that they didn't need to show off their own expertise in your field. The bad bosses were the ones who were constantly telling you how to do your job. They hire you for your skills but then don't trust you enough to use those skills...they are the control freaks.
Those same people are out there as your potential clients. The good ones trust you to be the expert, the poor ones are continually challenging your decisions or work and are people to avoid.
A terrific customer is someone who wants to support you to do your best work for them. Translation: Terrific customers listen to consultants, take direction, give constructive feedback, provide documentation/information/etc on time, and most importantly, terrific customers thank consultants for their work and let them know how much they like the project as the project progresses.
Good feedback lets the consultant know they’re on track and things are going well. If there are problems with the project, a terrific customer finds a way to tell the consultant they are unhappy with something without changing the scope of the project. And, if the scope of the project really needs to change, terrific customers are more than willing to make contract addendums and pay additional fees as needed.
Terrific customers are extremely happy when the project is complete and they brag to all their friends about the project and the consultant. Terrific customers want their consultants to succeed because the consultant helped them succeed. Not only are terrific customers the best way to get new clients, but if they’re so terrific, we’re more likely to suggest them and their services to our friends and family. When you’re a good consultant and your customer is terrific, it’s a win-win situation!
[Sincerely apologies to Arvin Meyer! He sent his replies to me early, but...sadly, my @#$% email filters ate his email. So when it came time to post his answers...they were missing. And right now Arvin is too busy with projects to dig them up again. So if we get them in the future, we'll post them in a future article and I'll link them from here. So sorry, Arvin!!]
It's easy to identify good customers: they know what they want, appreciate what you do, and pay promptly. For example, even if you have never created a brochure or a Web page yourself, you know what you like. Good customers find *examples* of what they are looking for before they talk to a web designer or graphic artist. Good customers also have defined goals for their project and have determined the message they want to convey. (A project can't meet goals if none have been defined.) Good customers also recognize good work and understand that it has monetary value. And finally, it goes without saying that good customers also pay their bills ;-)
Communication is the key to good relations between consultants and clients.
Before any work is undertaken, the client and the consultant should have a
shared understanding of the client's objectives. One way to arrive at such
an understanding is to describe in writing the client's current situation
and then describe in writing the new situation that the client would like to
be in. Another approach is to describe any data or documents to be
processed, then describe the process to be applied to the data or documents,
and then describe the resulting state of the data or documents.
Establishing milestones is another important part of good communication
between a consultant and a client. Instead of agreeing on a single
objective, such as a delivery date and project budget, the consultant and
client are usually better off to agree on a series of intermediate
objectives leading up to the final objective. Intermediate objectives might
include analyzing user needs, developing a functional specification,
developing a prototype user interface, developing specific portions of
functionality, and developing a user guide. If intermediate objectives
aren't achieved by the dates agreed upon, the consultant and client can use
that fact as an opportunity to troubleshoot the relationship and the
development work, and thereby get the project back on track.
For me a terrific customer is often a repeat customer. When you work with
the same customer on multiple projects you can develop a dialog of not only
their current needs, but their past and future path as well. When you can
sit with a customer and really get into the project from not only a
consultant perspective but also as a sounding board, that's what makes the
job fun and the customer great to deal with. I love going into a customer
location and just chatting about their applications and not just as a coder
but as an "outside advisor". It's great when you can help the customer see
new potentials and opportunities within their business practices. While, as
I mentioned earlier, this usually only comes about with repeat customers
I've also found it in first time customers. When this happens with a new
customer I find myself looking forward to working with them. This makes my
time with them more productive, my work more enjoyable and usually more
productive and often leads to a great relationship with long term potential.
It’s very pleasant when a client will agree to make a good faith deposit at the beginning of a project.
It’s a real benefit to both parties when a client is willing to foot the bill for the creation of a well-defined project specification at the onset of a project. It helps guarantee the client gets what she wants and there are no surprises down the road.
I enjoy when clients are fun to relate with and not just focused solely on work. What’s the fun of working if you don’t enjoy each other’s company?
Customers who are open minded and genuinely appreciate that you are adding value to their business. You can build a relationship with them. Even if they don't have additional work for you, they are willing to network and recommend you to other people where they feel you can add value. It's great to work with people who recognize that you possess skills they simply don't want to, or can't afford to. That's the whole point of hiring a consultant, isn't it?