The Artima Developer Community
Sponsored Link

Weblogs Forum
What is Consulting?

35 replies on 3 pages. Most recent reply: Jun 13, 2006 11:36 AM by Bruce Eckel

Welcome Guest
  Sign In

Go back to the topic listing  Back to Topic List Click to reply to this topic  Reply to this Topic Click to search messages in this forum  Search Forum Click for a threaded view of the topic  Threaded View   
Previous Topic   Next Topic
Flat View: This topic has 35 replies on 3 pages [ 1 2 3 | » ]
Bruce Eckel

Posts: 874
Nickname: beckel
Registered: Jun, 2003

What is Consulting? (View in Weblogs)
Posted: Aug 4, 2005 10:25 AM
Reply to this message Reply
Summary
A few years ago, close on the heels of the dot-com bust, Rational basically imploded. IBM felt that there was still value in what was left of the company, and paid an exorbitant amount for the remains.
Advertisement

The company made money by consulting and by selling a software product (Rose) that was supposed to help you create UML and thus good programs. They had produced a series of books on the "Rational Unified Process" (RUP) which generally seemed to have reasonable advice. But advice that appears to be rational does not necessarily solve real design problems, as we saw in the "structured design" movement of the 70's. This seems to happen over and over in our industry -- it's easy to focus on one aspect that seems to be "the solution" and miss the big picture, and to produce unintended consequences that eliminate the benefit of what may seem so clear in isolation.

Jon Hopkins created the original Rose program which seemed reasonably good. This was purchased by Rational, rather than being created within the company.

How is it that a company that purported to teach you how to create good software ended up creating a product (Rose) that was so universally reviled? Is Rose what eventually destroyed the company, when potential customers asked that same question?

Is it even possible to scale a consulting operation, without turning it into a body shop? Andersen Consulting is another example. Yes, they provided bodies and I've talked to some of those bodies who got great value out of the process, but how much value did the client companies get -- or did they just get reasonably competent, medium-term temporary workers? This isn't to say that such a service isn't a valuable one, but is it consulting, or does it just assume that name to justify higher fees?

Lots of people that call themselves consultants do things that I would not personally consider consulting. I think consulting is when you have some kind of special expertise -- come by through hard struggle and learning -- that you transfer to a group of people, in a relatively short period of time, and in a way that is unique for that group. I also think that consulting involves addressing particular issues faced by that group.

If it was easy to transfer to someone else, then a client could acquire that expertise without a custom consulting session (it could be turned into a seminar, for example). Ironically, many consulting firms feel the pressure to grow and make more money, and end up ignoring this principal fact. Instead, they succumb to simple arithmetic and decide that they need to "scale up" by adding more bodies, pretending that each of these bodies can be imprinted with the experience and hard-learned lessons of the principal consultants. It becomes clear within the consulting firm that this isn't so, and so the firm, as it grows, must change its perspective about the meaning of the word "consulting." And under certain economic conditions (rampant growth in the industry) the service provided by this reinvented consulting firm is still valuable. But it is a far cry from what the original firm offered, although that firm is still charging fees as if each client was getting the services of a principal consultant. And if the economy turns, as the computer economy has done many times, the consulting firms are the first to fall, as they are the easiest way to cut costs.

It's tempting to make the analogy to a ponzi scheme, but it's not that bad. Both forms of a consulting firm (first-class consultants only vs. high-tech body shop) have value. The problem is the temptation to present the second form as the first, in order to apply the same high fees of the first-class consultant to each additional body added to the shop. The goal of the company becomes "how do we transfer the aura of authority from the high-image consultant(s) to anyone who works for us, so that we can charge the highest fees possible?" Or to simplify, at some point the bean-counter mentality takes over and the mission statement of the company goes from "how do we provide the greatest value to the customer?" to "how do we charge the highest fees possible?" (You can argue that this is the fundamental shift that any publicly-held company goes through. After all, a public company is legally beholden to maximize shareholder value, so how could it be otherwise?)

Perhaps the problem comes down to this: consulting (what I consider consulting, anyway) doesn't scale. For me, it involves a lot of study and struggle, and occasionally I go out and transfer some of what I've learned to a client. Because I need to pay for the time I spend on my own while struggling with these ideas, I must charge a premium when I visit a client. Money, however, isn't the most important form of payment. An energizing experience is worth a lot more than a high fee. An interesting project -- especially one using Python -- is always tempting.

Just like the folks who used to work for Andersen Consulting, I often learn a lot by working on a client's problem, so it would be tempting to say that I could continue learning and make more money by spending more time on the road, and that may be true to a point but it won't scale that far. You have to spend some amount of time recharging your mental batteries. Gerald Weinberg said that you can only spend three days a week on average doing actual consulting. You must spend one day a week on marketing, and one day acquiring new knowledge, so that you continue to update the value that you provide.

If you work for yourself or within a small, privately-held group, you can make the decisions that maintain this balance, but as soon as the idea of scaling intrudes (or perhaps "scaling with the primary objective of amplifying the cash flow of the company"), I think the eventual fate of the consulting company is sealed.

Consulting is first and foremost a human activity, and I believe that the primary motivation must be in improving the quality of the client's experience. One reason that the consulting fee must be relatively high is that this experience is a rare thing, both for the consultant and for the client, and the consultant is being paid for the unpaid time that he or she invests. But this form of consulting doesn't scale, not even on an individual level. A consultant who spends all his time on the road is not allowing the time for reading, communicating and reflection that I consider essential to maintain quality. Installing the same techniques in the same way from company to company is something, and it may have value, but it isn't what I would call consulting.

One of the ironies of consulting is that the goal of the consultant must be to make him or herself obsolete. You must so effectively transfer your knowledge and solve the client's problem that they don't need you anymore. But when a consulting firm scales up, their primary objective shifts away from providing value to the client towards providing consistent cash flow for the company. This pushes towards making the customer dependent upon the consulting firm. One of the things that makes a good consultant unusual is the counter-tendency of not wanting to drift into anything that looks like an employee relationship, despite the promise of consistent cash flow. What makes me happiest is to see people understand what I give them, put it to work, and show me that they no longer need me.


Here are some articles that have been suggested by readers that relate to this topic:

Joel Spolsky wrote about consulting firms just moments before the dot-com bust, while his company was still consulting to generate money for product development.


chandrakant

Posts: 2
Nickname: ceegee
Registered: Feb, 2005

Re: What is Consulting? Posted: Aug 4, 2005 11:21 AM
Reply to this message Reply
This is very true. I hadnt given much thought to it before, thanks for putting it in perspective. I guess the problem is with the "need for consistent cash flow". The individual consultant can alternate between periods of negative and positive cash flow but when theres a bigger company, it needs to constantly generate revenue.
So the conclusion I am drawing to myself is that if one wants to constantly keep learning, write software for customers that truly makes them happy, then it might be worthwhile to go independent, or maybe join a very small company where you have a lot of control on what you do.

Bruce Eckel

Posts: 874
Nickname: beckel
Registered: Jun, 2003

Re: What is Consulting? Posted: Aug 4, 2005 12:54 PM
Reply to this message Reply
The question about scaling that I posed here produces another question: how big can a consulting group get before it tends to cross the line? This may be connected to the question: how big can a programming team be before adding new people decreases productivity. Of course, this kind of thinking may eventually be discovered to be an oversimplification, and that other factors may have a bigger impact. However, we humans love to be able to reduce things to their simplest form, so we can say that it was just a matter of having one too many people that caused the lifeboat to sink.

It's also possible that alternate structures support customer-focused consulting. For example, Tim Lister (coauthor of Peopleware) is part of the Atlantic Systems Guild, which is a group of consultants that provide support for each other. In that case, the goal of the organization is explicitly designed to be "for the support of the participants," in contrast to many organizations where the (usually unspoken) goal is to increase the power of the organization at the expense of the participants.

Brian Panulla

Posts: 6
Nickname: bpanulla
Registered: Aug, 2005

Re: What is Consulting? Posted: Aug 4, 2005 1:55 PM
Reply to this message Reply
Very insightful. I was a principal in a startup consulting firm in the dotcom days, and this really rings true.

One of the oddest realizations that came from that experience was the idea that your product was your time. If you want to grow, you can't just produce more units like in manufacturing... you need to add more time capacity, either by working longer hours or by hiring more consultants. If you try to squeeze more hours our of yourself and your team, at some point your quality of life degrades and morale suffers. Bring on more help and you get the issues Bruce illustrated. I don't see how any "consulting" company can win without staying small.

I was also very frustrated by my inability to really dig in to problems. I tried very hard to keep estimated costs low to land the projects, and then to meet those estimates to maintain good customer relationships. This meant I stopped really being able to produce the same thought-out, high quality of work I could as a regular staff developer. Add to that the bouncing from project to project and it was hard to feel grounded.

John D. Mitchell

Posts: 244
Nickname: johnm
Registered: Apr, 2003

Re: What is Consulting? Posted: Aug 4, 2005 1:57 PM
Reply to this message Reply
> The question about scaling that I posed here produces
> another question: how big can a consulting group get
> before it tends to cross the line?

0... :-)

Though, I think you mean to ask what's the maximum size it can be before it falls from service into power games. In the computer consulting arena, I've never seen anything more than a couple of people working together sustain that level for any non-trivial amount of time. Alas, there's lots of small (10-100 people) shops who play that marketing game to the hilt.

> This may be connected
> to the question: how big can a programming team be before
> adding new people decreases productivity.

Yeah, partly the sheer quantity of interactions (think: Brooks' Mythical Man-Month) induces other psychological and sociological mechanisms to dominate (e.g., politics). So, part of the question is the usual slew of issues of governance, management, and control of the organization such that it fosters the hiring, training, and growth of people who care (aka intent) enough (aka have the will).

[...]
> It's also possible that alternate structures support
> customer-focused consulting. For example, Tim Lister
> (coauthor of Peopleware) is part of the Atlantic Systems
> Guild, which is a group of consultants that provide
> support for each other. In that case, the goal of the
> organization is explicitly designed to be "for the support
> of the participants," in contrast to many organizations
> where the (usually unspoken) goal is to increase the power
> of the organization at the expense of the participants.

Indeed, that's one model that seems to be helpful.

The power politics of e.g., Andersen Consulting was well known even to most of their clients and yet the clients still hired them. Personally, I think that that's a much bigger problem. For example, look at how the Big whatever accounting firms and Wall Street (or technology :-) analysts are similarly completely compromised in their stated responsibilities versus their actual jobs (and the pressures and incentives in which they must operate). So, of course they can't be trusted -- and yet people do over and over and over again to their own detriment. Frightening.

John D. Mitchell

Posts: 244
Nickname: johnm
Registered: Apr, 2003

Product vs. Service mindset Posted: Aug 4, 2005 2:02 PM
Reply to this message Reply
> One of the oddest realizations that came from that
> experience was the idea that your product was your time.
> If you want to grow, you can't just produce more units
> like in manufacturing... you need to add more time
> capacity, either by working longer hours or by hiring more
> consultants. If you try to squeeze more hours our of
> yourself and your team, at some point your quality of life
> degrades and morale suffers. Bring on more help and you
> get the issues Bruce illustrated. I don't see how any
> "consulting" company can win without staying small.

Indeed. It's always seemed odd to me how many people/organizations apply the same old, mechanistic, Tayloristic approaches to people-centric problems. Not only does that failue, it is by definition doomed to failure -- it's quite literally inhumane.

John D. Mitchell

Posts: 244
Nickname: johnm
Registered: Apr, 2003

What is "growth"? Posted: Aug 4, 2005 2:07 PM
Reply to this message Reply
One underlying assumption of your question is the perception that a "consulting" company "needs" to grow. Why?

Does the great family restaurant downtown need to aspire to become a national chain to be "successful"?

Does an artist need to clone himself or produce mountains of crap to make a difference?

Does the social worker need to save everybody or be considered a failure?

Bruce Eckel

Posts: 874
Nickname: beckel
Registered: Jun, 2003

Re: What is "growth"? Posted: Aug 4, 2005 2:44 PM
Reply to this message Reply
> One underlying assumption of your question is the
> perception that a "consulting" company "needs" to grow.
> Why?

I've often wondered that myself. There is certainly a large faction that argues that a company that's not growing is stagnating. Also, what is "growth?" I would argue that it can and should mean "getting better at what you are doing."

For many years I've tried (and generally failed) to figure out how to work with other people, not because it would necessarily make more money (although it probably would, and in fact it seems likely that it would have to in order to support that model), but because I find it stimulating to work with (the right) other people. But I'm still talking about a handful of people, more on the scale of Tim's Atlantic Systems Guild. And I would think of it more as a personal support group of people that I could have stimulating interactions with (too bad businesses can't be that way; see: http://www.paulgraham.com/opensource.html).

John D. Mitchell

Posts: 244
Nickname: johnm
Registered: Apr, 2003

Re: What is "growth"? Posted: Aug 4, 2005 3:56 PM
Reply to this message Reply
> I've often wondered that myself. There is certainly a
> large faction that argues that a company that's not
> growing is stagnating.

Indeed. However, look at the entire economic model that that sort of thinking is predicated upon.

> Also, what is "growth?" I would
> argue that it can and should mean "getting better at what
> you are doing."

Indeed.

> For many years I've tried (and generally failed) to figure
> out how to work with other people, not because it would
> necessarily make more money (although it probably would,
> and in fact it seems likely that it would have to
> in order to support that model), but because I find it
> stimulating to work with (the right) other people. But I'm
> still talking about a handful of people, more on the scale
> of Tim's Atlantic Systems Guild. And I would think of it
> more as a personal support group of people that I could
> have stimulating interactions with (too bad businesses
> can't be that way; see:
> http://www.paulgraham.com/opensource.html).

One hint at a model is Hollywood. Putting together teams of "experts" for specific projects (with a large amount of fairly standardized supporting services).

chandrakant

Posts: 2
Nickname: ceegee
Registered: Feb, 2005

Re: What is "growth"? Posted: Aug 4, 2005 4:24 PM
Reply to this message Reply
> I've often wondered that myself. There is certainly a
> large faction that argues that a company that's not
> growing is stagnating. Also, what is "growth?" I would
> argue that it can and should mean "getting better at what
> you are doing."

Yes I do believe that growth only means "getting better at the services you provide". In fact, I also believe that the small, focussed companies/teams are the organizations of the future. So if I started a company, I would focus on maintaining a small number of people, and indicate that continuous and critical learning is essential to be part of my team.

>
> For many years I've tried (and generally failed) to figure
> out how to work with other people, not because it would
> necessarily make more money (although it probably would,
> and in fact it seems likely that it would have to
> in order to support that model), but because I find it
> stimulating to work with (the right) other people. But I'm
> still talking about a handful of people, more on the scale
> of Tim's Atlantic Systems Guild. And I would think of it
> more as a personal support group of people that I could
> have stimulating interactions with (too bad businesses
> can't be that way; see:
> http://www.paulgraham.com/opensource.html).

I hear what you say here. Currently I work in an organization where most people are complacent and do not have the drive to learn more. As I result, my only feedback mechanism is through writings and posts of competent software professionals like you. However, if and when I do join a team with a lot of good programmers, I often wonder if the people are good to get along with. I do not have enough experience here to suggest how to work with other people. But I believe there are some things one can do to ensure that one is always good to work with. Be always humble, explain your ideas like you are trying to explain to a 3-yr old, and if someone says something you dont like, first try to understand why the person is behaving the way he/she is. I guess then, conversely, these criteria can also be used to be evaluate if someone is good to work with.

Hugh Fisher

Posts: 5
Nickname: laranzu
Registered: Jul, 2003

Re: What is Consulting? Posted: Aug 4, 2005 8:11 PM
Reply to this message Reply
Joel of Joel on Software has a terrific description of what happens when a consulting company grows in "Big Mac vs Naked Chef"
<http://www.joelonsoftware.com/articles/fog0000000024.html>

Joe

Posts: 24
Nickname: larson
Registered: Nov, 2004

Re: What is Consulting? Posted: Aug 5, 2005 5:58 AM
Reply to this message Reply
> Joel of Joel on Software has a terrific description of
> what happens when a consulting company grows in "Big Mac
> vs Naked Chef"
> <http://www.joelonsoftware.com/articles/fog0000000024.html>

Funny enough Joel has an interesting business concept: He spends his time writing funny articles that build up his reputation. Then he hires a couple of CS students that work for free for him during their summer break, so they can put "worked for joel" on their CV's.

This is very similar to what the big consulting companies do (although Joel is in the business of selling products)...

Bruce Eckel

Posts: 874
Nickname: beckel
Registered: Jun, 2003

Re: What is Consulting? Posted: Aug 5, 2005 1:22 PM
Reply to this message Reply
> Funny enough Joel has an interesting business concept: He
> spends his time writing funny articles that build up his
> reputation. Then he hires a couple of CS students that
> work for free for him during their summer break, so they
> can put "worked for joel" on their CV's.

My understanding is that he has a regular well-paid group of programmers, and I believe he pays the summer interns as well.

I interviewed him this spring and the impression I get is that the articles often happen to him in the middle of the night, in addition to his normal working hours.

Robert Parnell

Posts: 22
Nickname: robparnl
Registered: Jul, 2005

Re: What is Consulting? Posted: Aug 6, 2005 12:32 PM
Reply to this message Reply
Well,

there you go. Is Joe a real programmer? Or just a hack. Personally, reading this rather "deflats" my opinion of him. I'm not buying the book, now.

Ahaha

John D. Mitchell

Posts: 244
Nickname: johnm
Registered: Apr, 2003

Appeals to Authority Posted: Aug 6, 2005 1:15 PM
Reply to this message Reply
> there you go. Is Joe a real programmer? Or just a hack.
> Personally, reading this rather "deflats" my opinion of
> him. I'm not buying the book, now.

Hmm... isn't this an example of the (other side of the coin of the) problem that Bruce brought up in this thread? I.e., this expectation that "gurus" are/must-be some kind of magical, perfect authority. So, while we believe the myth, we get sucked into all of the holes and failings of the expert and when we stop believing we polarize and see nothing but the holes and failings. Isn't part of the point of being e.g., a professional that we look at what's actually presented and use our own talents, skills, knowlege, etc. to discern what's valuable from what's nonsense? For me personally, I regularly find myself reading or talking with people that I don't generally agree with but they get me to think about something differently.

Flat View: This topic has 35 replies on 3 pages [ 1  2  3 | » ]
Topic: What is Consulting? Previous Topic   Next Topic Topic: Wither Those Tiers


Sponsored Links



Google
  Web Artima.com   

Copyright © 1996-2014 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use - Advertise with Us