When Should a Consultant Question Decisions?
bay43270 asks: "Presumably, companies hire consultants because they need technical expertise. At some point (if not on a daily basis) a consultant is asked to do something that isn't in the best interest of the company (and therefore may not be in the best interest of the consultant in the long run). The consultant must ask 'do I just say "yes sir" and go to work, or do I try to explain things? If so, how hard do I push?' When should a good consultant question a decision, and how does the situation differ with contract programmers?"
... on the reaction you get the first time you try it. As an employee or contractor I would feel obligated to point out why something may be a bad idea. If I get my head bitten off after that I would default to "Yes sir, here you go, exactly what you asked for." Fortunately I have a boss who listens when I point things out. Sometimes he acts on my recommendations. Sometimes his response is "You have a point, but we're still doing it this way."
Yeah, I know - a lousy answer, but it's the only one I've got.
"An unarmed man can only flee from evil, and evil is not overcome by fleeing from it." Col. Jeff Cooper
what I do is explain why my experience and expertese tells me it is a wrong thing to do. I give examples, and send it to the appropriet people. I tell them I feel its part of my resposibilty to the company to give them my opinion and expert analysy. then I do it how they want me to.
This tact has always been met warmly. They don't always go with my suggestion, but they always appriate my input.
The Kruger Dunning explains most post on
Presumably, companies hire consultants because they need technical expertise.
I'm not sure if I'd make that assumption. A company may hire a consultant because they want an outside opinion. Everyone at the company gets so used to thinking the same way they lose sight of the forest for the trees. If I were a consultant, one of the first things I would make sure I understand is exactly why I'm being hired. It is entirely possible that the company may claim to want an outside opinion but there actions seems to indicate that they do not. In such cases, you may need to remind them periodicially what you were hired to do.
If, for some reason, you don't have this initial discussion with them, I think you still have to assume that they want you to critically examine their decisions. If they finally get fed up with you questioning their every move, I'm sure they'll let you know. At that point you can decide whether you want to continue to work for a company that disregards your opinion.
GMD
watch this
The difference between a consultant and a contractor is just exactly that which you mention.
A contractor typically agrees to do a job, supplies the tools and expertise, and completes the project as agreed.
A consultant takes a problem, develops a plan of action, and is entrusted with providing an opinion on anything that is detrimental. As a consultant, it's your JOB to bring it up-- But if they say "We know, but we just want it done this way", well that's then your job.
A 'consultant' is someone who is brought in tooffer their advice, expertise and so forth.(Thus the word 'consultant', or 'one who is consulted')
Once they have done so, many bounce back and forth between consultant and contractor-- Writing the job tasks and then following through with them. By definition, the input of a consultant is wanted- She works primarily in the business/planning sense, almost as more of an adviser or planner.
I've done both extensively, myself,for your reference.
-Kysh
--=:: Wings and tail and snout and scales of blackest night
This happens regularly to me.
:-)
My general coping methodology is to identify my concerns (expressed in terms of business consequences) but ultimately, I will defer to the legitimate authority of the client who is retaining us and cope as well as I can.
There is always the possibility that:
(a) You could be wrong
(b) Your client's position is formed on the basis of additional information you don't have to hand.
On the other hand, that doesn't mean you shouldn't keep some sort of mutually visible (and emotively neutral!) audit trail of your concerns as a CYA mechanism
I think this is really unethical. If you take the job, then do the work. Doing a lousy job not only going to hurt you, it's going to hurt your reputation.
Simply stated, if a client is paying cheaply (well, as close as that gets in consulting), they deserve the minimum information and just get what they ask for.
If a client pays well or tips well or has been a long time repeat client, they deserve that extra time taken to show which judgement would be best and why.
That's just plain irresponsible.
You are a consultant because they are going to you for advice, in addition to implementation -- if you were there solely for implementation, your title would be "Gofer" or some such.
In other words, it doesn't matter how much they are paying you, you signed on for the gig, and if they want to implement something that you feel is a bad idea, it's your responsibility -- per your job description -- to advise against it.
evil adrian
If you are truly a consultant, then you are paid your fee for doing what your contract stipulates. One of the critical legal distinctions between being an employee and being a consultant is that an employee has a stake in the company's future, whereas a contractor is strictly a temporary resource being used to fit the particular needs of the company at that time.
I've always been very careful to stay out of such things unless they are directly covered under what I am supposed to be doing. For example, back when I did SAP consulting, my job was to devise the role assignments so as to avoid collusion between employees. When some group (I believe it was Finance), wanted to create combined roles just to 'make it easier', I stepped up. My job was to ensure that the new roles had a minimal risk of collusion and Finance wanted to do something directly contrary to that. In that case, I took it to my contact person (note, NOT my boss) and explained. He then had the Finance group meet with the consultants to justify their need (they were shot down).
However, if it's a question of implementation or something, like where the client is bringing you on to do 10 tasks, if those tasks are the wrong tasks to be doing or incorrect - too bad. You get paid to do your contractual assignment.
Look at it this way - the company went out of their way to bring you on as a consultant rather than a regular employee. (Note I did not say 'hire you') There's a reason for that - they believe that you have certain talents and skills that can directly impact one of their objectives. You weren't brought on to create the objectives.
Things can get very ugly, legally, if you and your client begin to act as if an employer-employee relationship exists.
Microsoft had this sort of problem a few years ago where they had all these permatemp contractors. Basically people they didn't want to hire full-time so they just called them consultants, but continued to use them over and over on different assignments. The permatemps argued that they were really full-time employees and sued for a fair chunk of change, and won. Consequently, if a company brings you on as a contractor, they want to do everything possible to make sure that the distinction exists, lest you sue them for backpay, overtime and benefits. For that reason I think you'd be totally out of line speaking up.
You're a consultant, finish your job there and move on to the next client.
if a client is paying cheaply...they deserve the minimum information and just get what they ask for...If a client pays well or tips well or has been a long time repeat client, they deserve that extra time taken to show which judgement would be best and why
Nice work ethic there, Sparky! Nothing like doing a good job for the sake of doing a good job. No sir-e! Show me the money!
Tip: You should go into medicine. There's tons of money to be made off of pesky poor people and, hell, since they aren't paying well you can just throw a bottle of asprin at them and save your best work for people who are worthy (rich).
Please. You are hired to do a job. When you were brought on, if you had a problem with the rate, you could have said something. Hell, you could still say something. That's called negotiation. But it isn't blackmail. "Oh, I'll only work hard if you keep meeting my demands." Show some class. Show some self-respect. Demonstrate you have a moral sense of right and wrong and you aren't just a high tech whore...
I would have to say that explosives are the most abused technology in all of history.
You were hired to do a job. You took the job and they pay you. You should ALWAYS tell the client if something is wrong. Not argue, mind you - just inform. If they want to know why, you tell them. If they don't, you don't.
If they are a "good client", you might want to argue the point more without their asking for it.
I'm assuming the poster is in the US. I'm from Sweden myself, and I'm currently working in USA (since 6 years). I can clearly see a big cultural difference here. In Sweden (at least in the companies I've been working for), you're always assumed to question whatever management ask you to do, regardless of your position in the company. They are always grateful if you find a better solution and count on you to express any doubts or questions regarding the proposed task.
While I've been in the US, I've been asking questions in the same way and this sometimes lead to real frustration. People don't want to be told that they might be wrong. The response is typically, "well, it's nice of you to express your opinion, but this is how we do it" without even be willing to discuss the matter.
This is just my experience and hopefully not typical in the US workplace.
Jim in Az
You should always let them know if they are making a bad decision. They may not always take your recommendation, and may even get to the point where they EXPECT you to argue (like they did with me) -- but otherwise you are just a seat filler.
You are hired for your technical expertise. If they say, "It must be done like this", then I have no problem speaking up with a "that will be extremely slow".
But here's the key: Be prepared to provide an alternative. If you critisize, but don't provide a solution, they may just see your comment as non-productive. However, if you get in the habit of providing better solutions, they may start asking you to find a solution to begin with.
Malachi
http://www.google.com/profiles/malachid
No, you said:
if a client is paying cheaply [...], they deserve the minimum information and just get what they ask for.
If a client pays well [...], they deserve that extra time taken to show which judgement would be best and why.
Your performance should not be tied to the amount you are paid. If they pay too little for your expertise, don't accept the job. This is unethical if you did not inform your "cheap" employer that this is what they're getting before signing. They read your resume, offered you money for the knowledge that resume represents, and you took the money.
Instead, how much you say should be determined by how receptive the client is to your ideas, not by how much they pay.
Just make sure that you don't give them so much information that they feel they no longer need your services, as that could also be a dangerous move.
This is also unethical. A consultant's job is to teach at the pace the students learn, not at the pace you can find a next gig.
1. Don't "unsell" anything that your sales team has sold. It doesn't matter that they dont need that particular widget - don't tell them that.
2. Make recomendations for how they could do things better. They will expect this. This is the difference between a consultant and a contractor.
3. Don't make the customer feel like an idiot for having designed/implemented something in a less-than-perfect manner. Politely suggest the necessary changes and give them good reasons why they need said changes. And don't make the customer feel like an idiot.
These 3 should get you started...
I'd rather be a conservative nutjob than a liberal with no nuts and no job.
Trackable info is GOLD. Take the following which happened to a guy I know at the same company I'm contracted to:
.doc files .doc .docs .docs .doc .doc
Guy I know got fired from [US printer company], then hired back as a contract. When working the contract, a full time employee complained about the quality of his test matrix, so they scheduled meetings and re-wrote it. Both of them kept notes, and both emailed the other with their copy of the notes to make sure they had all the same info. She complained again, then they did the meetings, re-wrote the notes, etc etc. It went on like this for about 7 iterations:
1)need more test cases
-doubled # of test cases
2)need test overviews seperated into different docs
-seperated into 3 different
3)need more test cases
-added test cases to each
4)need fewer
-combined to 2
5)too many test cases
-reduced test cases in each
6)don't like formatting of
-used different fonts, spacing, etc
7)too many test cases and docs
-combined docs; reduced test cases
8)[yelling] you are a terrible engineer (I kid you not)
-take it up the butt because you can't talk that way to employees but they can to you.
The result of this month of run-around that she gave the guy was that she didn't like him and wanted his project canceled and delayed (ie no work for months) so that a different contractor could be brought in to do the same job . . . one that would do the work just how she wanted it (YES MAN) but with out her actually doing the work.
At meetings with the VP of the contract agency, and meetings with the [US printer company] bosses the guy presented 300+ pages of printouts including each iteration of the test spec, the notes from each meeting, and all emails between them (he auto logged all emails). The VPs concluded that the guy did an excelent job of fulfilling the job requirements, but that because she didn't like him his contract would be canceled. The contract firm VP admitted privately later that this is very common with [US printer company] and there is absolutely nothing that could be done about it. Since both bosses agreed, the guys record was not adversely affected, but he still can't work in her division ever again.
When you offer your trained expert opinion to an idiot, expect nothing less that idiocy in return.
Hopefully this isn't a common experience with other companies and other contract workers.
robi
The answer is simple.
Stratigic errors are invariably traced back to moments when the group/project changed direction. The small daily things are just that, small, they are dealt with and things carry on. Tactical mistakes on Tactical issues are just the day to day part.
One of the most important pieces of information being bought by anybody employing anyone for any purpose is the employee's "list of known bad things."
Pointers:
0) TAKE RESPONSIBILITY for EVERY MISTAKE YOU MAKE. Don't make a bid deal over them, don't "fall on your sword" just say "my bad" and move on. Hell take the casual fall for others if necessary to get the repairs started. To the greatest extent, who is at fault is the last thing that matters once the mistake is out. Most people have already decided anyway and almost everybody almost always knows the exact truth before the showdown anyway. As long as enough was learned to prevent a repeat, the issue is over.
1) Teling your boss "no" is your most sacroscant duty, but it should be approached the way you would tell him his fly is down (or there is toilet paper hanging out of her skirt band.) That is TACT and URGENCY are at war. A timly rescue of face in an emergency is more important than tact and will be remembered positively; but in the absence of extreme pressure, being less-than-tactful will be remembered negatively.
2) Know the difference between the stratigic and the tactical, NEVER let a issue or mistake you know is stratgic get treated as a tactical issue. "I didn't think it would matter this much" is the lament of the under informed. "I could have told you it would" is the response of the guy who most needs to be fired. 8-)
3) State your position as a recommendataion, especially if your boss is well invested in ego games. "I would reccomend against because..."
4) The next step is to banish "ok, but..." assume any positive assertion will be processed only up until the "but" and that the but, and all the following words will be. "We could do that but it will have problems when..." will feel like a vote in favor.
5) Learn the prefix phrase "I have no informed opinion", stress the "informed" as necessary. This phrase will, up front and attached to what you really want to say, easily and professionally presage that you would be guessing, are willing to guess, or not willing to guess about. Advice given in known ignorance is not a crime, it's a sin...
6) Finally, be willing to be out voted or overruled, and never let the fact that you were so overruled or outvoted color your ego or implementation. Presume there are factors you may not know or have control over and be part of the team once the team moves.
Many people suggest getting everything in writing. Don't do that. Just get the important things in writing. It's only important to get things into the record at whatever level "the record" belongs. Overstressing the "I want it in writing" vibe makes you look either weak willed or un-trustworthy. Depending on the type and nature of the circumstance being discussed there are lots of ways to get on the record. (for instance... 8-)
1) Get it in writing as a direct order if you must.
2) Send it in email with a request for confirmation or clarification.
3) Send an "unless otherwise directed" email. (especially when others are unwilling to make any decision at all, time is being wasted, and you know there is no inescapable harm. Fait Acompli can be outstanding mojo.)
4) (in casual company on minor matters where the relationship is good) just say "I reserve the right to laugh at everybody when the thing catches fire." (but don't over use this unless it's family 8-)
(The secret evil thing most people forget, if you bother to get it into the preminant record, * keep * a copy of that record somwhere you control, don't just leave it on the corporate email server... 8-)
In short, the three greatest failures in an employee of any sort are:
-- Failure to speak, to risk speaking, when others are in danger.
-- Failure to act when direction has been set.
-- Failure to balance both tact and urgency in any assessment.
Innocent people shouldn't be forced to pay for inferior software development.
--"Code Complete" Microsoft Press
I think there is a critical difference between a contractor and a consultant. The former is hired to complete a specified task (the more specific the better). The latter is hired to provide information, knowledge, expertise, etc. in order to make better decisions.
;>
So I'm puzzled at the claim that "make a minimal number of decisions" is to be applied to a consultant. Surely when you consult a lawyer you expect advice, not someone to just file the papers you specify
Working as a government consultant for the past 3 years has shown me the importance of having all decisions in writing. No matter how small it seems, e-mailing parties responsible for a confirmation to go ahead with objections noted is a must for consultants, then you can't be blamed for other incompetent peoples faults.
So yeah as div_2n says, get everything in writing, even if it's just an e-mail, it will be documentary evidence down the track if you find yourself as the scapegoat for bad decisions.
I could tell you, but then I'd have to bill you.
A contractor does as there told, and in the absence of being told anything, may do nothing. (Although this would be considered poor even for a contractor). A contracter is contracted to perform a service, code for example. Given a set of specifications, they code well, debug well and implement well.
A consultant is a value add. They are a contractor plus, they provide additional expertise and insight gained from experience that is sometimes difficult to find within a company. Many companies that hire consultants have an in-house staff consisting of "big fish in a small pond." This is not demeaning as it sounds. Consider a tennis player who only plays high school students. With few exceptions the best they will become are as good as their experience. Development is the same way. I tell people when I leave, their people will know as much about what I bring as I can pass along.
This was all leading into the question. If you are unable to explain the reason to take an action, or to select a different path, one of several things may be occurring.
I am not explaining the options well. An issue for you to deal with and not your client. My inability to explain a situation sufficiently to be convincing, is my issue not theirs.
I am working against "it cannot be done this way" mentality. On the last two sites I worked at, I was told they could not, or specifically, it was impossible to do what I was asking. As it turned out, it was impossible because they had never done it and did not know how. In two situations at the last client, I was able to remove a full time manual process (30+ hours per week) by automating it in less than one week. A miracle? No. I knew it was possible.
You don't know the politics. A good read for Developers and Leaders alike is Rapid Application Development - Taming wild software Schedules. It gives insight into this aspect. In many cases a project cannot get approval to do it "right", but can get approval to "do it" then "do it right" in support. Logical from the outside? No, but understandable.
You are missing something and they may not want to tell you. I have seen projects were they were approved to the dollar. If it went over, even by a few hundred dollars, it was killed. Even if it lost thousands. The logic(?) being that it is better to kill a project that is over budget immediately, rather than let it continue on. This may be the case or it may simply be you do not know all the players, policy, and interfaces involved.
In some of these cases you can keep trying. Hoping to add value. The attempt, given it has good business sense behind it, will keep that client happy, even when they do not choose your ideas. At least they see new ones coming and maybe the next one will hit.
Personally, I think that's doing your job. You say "It's a bad idea. I won't do it unless I have it in writing that I was opposed so I don't get blamed for doing what I think it is going to do"
If anything, it might convince the higher-ups that maybe it's not such a smart idea if the expert is so adamant about assuming responsibility for what he expects to happen.
If you show that you're happy to do something you disagree with (albeit not without avoiding misrepresentation of your actions) then you'd look a lot better in management's eyes.
Karma: Non-Heinous
Basically, if they're paying the bill, you have a responsibility to deliver what they want (if possible). And if you can't or won't, you have a responsibility to tell them.
'What they want' is the question. They may want opinions, or they may simply want hands typing. It's okay to ask. And if you don't like the answer, then you can decide how important 'being right' is to you. Keep in mind that 'Right' is often relative. And sometimes it takes people time to come around, longer if they've been forced into a corner.
I've been lucky that most of my clients have wanted my opinions and experience along with actual code. They haven't always listened and it has often been frustrating. But even though I may know certain aspects of 3D optimization (in my case) better than them, they know their business and their overall needs better than me. In many cases, I was probably right about 'what we should do' and they were undoubtedly more right about 'what they could afford to do.' It's their company, afterall.
Sorry if that isn't as specific as possible, but the thing I've learned after 10 years is that every case is different and flexibility is key.
That is to say, if you've signed a contract stating that you'll implement X, Y, and Z, then sure, you implement X, Y, and Z, and walk away.
If your role is truly that of a consultant, then you have a responsibility to speak up. If your client is looking to satisfy a requirement, and they're considering doing it in a completely half-baked way, that will only marginally address their concern, and create a number of additional problems along the way, you have to say something. That's a fundamental difference between the roles of contractor, and consultant.
It's true that you need to exercise a certain degree of diplomancy, and you need to be able to deal with people, many of whom will see you as a threat... You can be absolutely certain that at least one guy (The one that came up with the half-baked scheme) is going to be bitter.
That's the job...
As far as covering yourself, you need only document your recommendations. Email is sufficient for this... Put your recommendations and your objections in email, and get a delivery confirmations. You cannot be held liable for poor results if your client chooses to disregard your input...
Quite the contrary, if you are in a consulting role, and you don't speak up, that's probably the bigger risk. If everything goes to hell, they can turn around and say "Why didn't you tell us? You're the expert..."
It's entirely possible that you'll end up in an environment that's impossible. You're told not to raise objections, or make waves... Essentially, you learn that you've been brought in simply to give a piss-poor project the air of legitimacy... If you do this long enough, it's inevitable. If you find yourself in that position, walk.
I'm not just saying that... I've done it twice in the past 12 years.
For those that would die defending it, Freedom
has a sweet taste that the protected will never know.
You can never sa "no." You can only say "yes," then lead them to the conclusion that really isn't the best option.
Presenting options, explaining the risks, and showing why something isn't the best way are certainly valid (and expected) actions. If done appropriately and tactfully, it is certainly worth doing. If the person telling you to do this significantly outranks you (i.e. their CIO, you would match do a junior level), take it to your leadership.
Be sure to listen to what you are being told before acting (and even after). You may find that, while it doesn't make sense in the abstract, but, in the context of the clients business, it may make more sense (for technical, legal, political, or financial reasons).
Also, make sure that whatever opinion you are going forward with has the client in mind. For instance, don't push a certain tool just because you personally favor it.
If they still insist on whatever it is you have a problem with, you have two choices: just do it, or quit.
After reading the story above, there are a few things that come to mind that we do where I am currently working:
:)
1. Maintain a Risk Register. Any project manager worth there salt would want to know what the risks, how to mitigate those risks and what they are going to cost. If you are being asked to cut corners, inform the PM to add your concerns to the register. The project is doomed to failure if the risks arn't known or mitigated.
2. Most consultants would have a formal reporting mechanism to the client, a client progress meeting for example. If you have concerns a very powerful way of communicating those concerns is to formally report it via the client progress meeting. If the Project / Programme manager is not taking your risk on board, the project sponsor and business should be in a position to bring pressure to bear and deal with the issue. I myself have been in several situations where problems have come to light, that we highlighted on the client progress report many months earlier and effectively covered ourselves by highlighting the risk.
3. If you are consulting, there is an air of professionalism to highlighting issues as you see them. Ultimately in the end you will get a good reputation and be offered more work. I have seen this happen in many places. Before anyone chips in with scope creep and people going out of business, if you are silly enough to bid for work without including sufficient contingency both in time and price to cover unforseen issues and not fully understanding the problem, then you deserve to lose money.
4. Microsoft, yep I know most of you hate them, but they have a very effective programme management framework called MSF. One of the features of it is a process called War Room. In this, All functional and technical leads, Business Analysts, Management and sometimes developers come together and quickly discuss what they are doing and the issues they are having. This is an excellent way for a consultant, or anybody in fact, to highlight issues that may not be making up to management and in many cases come up with a solution.
I could go on for hours but my fingers are starting to hurt
Disclaimer: I am not a lawyer, the above is not legal advice. Under some of the above scenarios, you should seriously consider retaining a lawyer
----
Open mind, insert foot.
I read through some of the comments here, and thought I'd put in my $0.02....
First off, you have your integrity. If you see something wrong, you have a duty, more than your job, to mention it. Measure the response.
Personally, ethics is a very important part of my job. I don't always win, and sometimes, I'm thought of as a troublemaker.
That's not what I'm doing, though. I feel that whatever job you do, you should do it to the best of your ability....
Abe Lincoln said it best... "Whatever you are, Be good at it..." (I paraphrase.)
Be responsible, be good, and be right. In the same breath, also recognize when you are wrong.
Don't be afraid to be wrong, and *don't afraid to take a chance to be right*. Nothing we do is certain.
If we all give in and compromise our ethics, then what have we become? Worthless, in my humble opinion.
Our country is built on people who take chances. Sometimes they succeed and sometimes they don't.... But they never know until they try.
"Never give up, Never surrender!" -- to quote Galaxy Quest. This is not only a silly saying, but really a mantra that we all should aspire to.
Otherwise, what are you trying to accomplish? Money? It's simply pretty paper. It will not last... And in the end you will be left empty, void and dead.
Behave like individuals, and work well with others in teams.
Okay, I'll step off my soapbox now. I hope you
get what I'm trying to say...
Chris
Nothing in this life is certain, except for truth.
You are correct that a "contractor" is typically hired to do a specific task, while a "consultant" is expected to provide expertise and guidance. However, the difference between those two is mostly in the mind of the one doing the work.
The general tone of the original article strikes me as argumentative and defensive. It is a consultant's job to offer options, advice, and approaches the client may not have considered. That information should not be presented as questioning the decisions of client management, but as an opportunity for the client to do things differently than they had planned.
When you are presenting those alternatives, it is critical that you present not only your preferred solution, but options which you might not like. Provide the client management with the pros and cons of different approaches, and let them do their job: making the final decision.
Remember that as a consultant you often do not have detailed information about enterprise licenses the client may have in place, knowledge of the corporate skillset, or even awareness of internal corporate directives.
As an example of why you should leave the client to make the final decision, consider a favourite Slashdot topic: Linux vs. Microsoft solutions. While you might "know" that Linux is a more cost-effective solution than one from Microsoft, the client might also be considering existing skillsets of the internal staff, existing contracts with data center support providers, etc. It is far from unusual for the retraining costs for internal staff and the costs of renegotiating third-party support contracts to absolutely dwarf the cost savings on the software itself.
Your job as a consultant is to advise, not dictate. If you have a good relationship with the client management, you might tactfully ask why they chose the solution they did, but you should not undercut their authority -- not if you want a long-term business relationship.
I do not fail; I succeed at finding out what does not work.
Here's how free market capitalism works. You do not inherently deserve $100 an hour, no matter how well trained you are, and no matter how many $100 an hour gigs you've landed before. You only deserve $100 an hour if somebody is willing to pay at least that, right now. If the only job offer you can find pays $30 an hour, you're worth $30 an hour. Obsessing about your vaporized $100 rate, or worse, doing a sub-par job because of it, will serve no one well.