Fog Creek Software
Discussion Board




Consulting?

Can someone help me understand what really 'consulting' means?
I mean what does it means that a software company does consulting besides software development?
Thanks.

Henry G.
Saturday, January 03, 2004

Well, I guess it can be many different things, but the stuff Ive been involved in is spec writing, giving second opinions on other peoples specs, datamodels...

Eric DeBois
Saturday, January 03, 2004

"Consulting" is generally used to describe the business relationship with the people who pay for the software they develop.

If you develop a product, which people come in to purchase after it's already been developed, that's not consulting.  But if you develop something specifically tailored for a customer, that's generally considered consulting.

T. Norman
Saturday, January 03, 2004

Well consulting doesn't necessarily mean you personally are going to develop anything or provide them with anything other than your experience, knowledge and considered opinion.  But if that consultancy is going to be worth while then its likely going to be a significant factor in whatever the decision or implementation process is.

Consultancy can be at any stage of the development lifecycle and be on any specific or general area as agreed.

Consultancy can be directly for an end user organisation, the intermediate dealer/var or the publisher/author.

Simon Lucy
Saturday, January 03, 2004

Consultant = One who consults

Dennis Forbes
Saturday, January 03, 2004

It means providing a service as a non-employee.

That service can be anything from analysis, application development, system integration, to system administration.

There are three ways to be a consultant.
1) Independant Contractor (IC) - gets paid on a 1099 from many clients for small short term projects.

2) Employee of a consulting company or body shop (W2) - gets paid on W2 for longer term projects.

3) Employee of your own corporation providing services to either the client directly or to a body shop. This is called being Corp-to-Corp.

The safest from an IRS standpoint is #2. The next safest is #3. However, #1 isn't safe because the IRS can reclassify you as an employee of your client if you work for a particular client almost exclusively.

NYC Consultant
Saturday, January 03, 2004

"Consulting" as classically used in the engineering and professional services fields used to mean that you *consulted* - you *only* provided advice, and generally not deliverable work.

Used in the context of software development, the role of a 'real' consultant might be to provide architectural steering, generate system designs, design a database, etc. without doing much, if any, coding.

However, the term consultant has been mongrelized in our industry to be equivalent to the role of independent contractor. When someone tells you they are a consultant and they do hands-on development as a rule, chances are they are inflating their role just as everyone else is expected to do.

Also, the body shops tend to label their outsourced non-expert drones on their payroll "consultants" as well, so there is a lot of clash in the name space.

An independent contractor performs work on a free lance, non permanent employee basis.  This is a legal definition that influences how you report your earnings to the IRS (in the US).

The most proper description of what most self employed people in this industry do is independent contracting, and not consulting.

Bored Bystander
Saturday, January 03, 2004

Can a company Outsource Consulting to an Independent Contractor?

Indian Developer in India
Saturday, January 03, 2004

Let me put it this way: the territory of independent contracting and consulting can overlap but each can also be distinct from the other. Think of a venn diagram wherein the two circles describing each set overlap.

So you can have: IC but not a consultant (freelance programmer, say); "consultant" but not an IC (bodyshop employee, or perhaps a true expert that is on someone else's payroll); or self employed consultant.

I don't think it makes that much difference functionally, though. Clients  generally don't want to acknowledge that they need expert level external help. And most heads down programmers farmed out through the high tech temp agencies like EDS or Computer Horizons love the ego boost of being labeled a consultant.

Bored Bystander
Saturday, January 03, 2004

True.

But how is the onus differentiated; IC vis-a-vis Cons.? Is it on a cse by case basis, written down explicitly in the signed contracts or are there general legal assumptions as to what a IC should be responsible for and what a Cons. is accountable for?

Indian Developer in India
Saturday, January 03, 2004

>>  are there general legal assumptions as to what a IC should be responsible for and what a Cons. is accountable for?

This is getting very pedantic.

An independent contractor is simply a worker who is not an employee of the party that is receiving his services. An IC is a separate business, a vendor.

A consultant is a subject matter expert whose classical role is to give advice and render judgements.

An IC is not a lesser grade of consultant, although many in our industry may treat the different situations in that manner. A consultant may or may not be an IC. An IC may or may not be a consultant.

As far as the degree of professional liability, my non-lawyer's guess is that the title is immaterial, it probably depends upon how much credence your client or employer places in your judgement. If they consider you a low grade code slinger, you probably have little professional liability. If the client considers your judgement "make or break" of their profitability, you are probably facing some degree of professional liability for your actions.

It just all depends.

Bored Bystander
Saturday, January 03, 2004

Henry G, when a software company is doing consulting, it usually means they're doing a specific task for another company, such as adapting a system for the customer, or sometimes writing one specifically for the customer. It usually implies they're getting paid by the hour.

Anything else?
Saturday, January 03, 2004

Anything else:

Not necesarily true in any regard, see above.

Simon Lucy
Sunday, January 04, 2004

--"Consultant = One who consults "----

Should be, after all the ant ending is the present particiiple which is active, but in current usage

consultant = one who is consulted

Stephen Jones
Sunday, January 04, 2004

Simon Lucy, several replies here address the generic question of what is a consultant, rather than the question posed by the OP.

Anything else?
Sunday, January 04, 2004

Anything else:

Which is why I said what I said, since I run a software consultancy.  There is no bound to what a consultant may or may not do for a particular client.  Its the specific client relationship that determines what is done.

And hourly charging isn't implied I often have fixed price projects which are pure consultancy.

Simon Lucy
Monday, January 05, 2004


One thing "Real" consultants often do is come in, analyze things, and make recommendations. 

They provide a "fresh set of eyes" to the organization, and can help you see things that are obvious that you don't see yourself, etc, etc.

My experience with this kind of consultant in software is that they interview lots of people and ask things like "what is your biggest problem?" then they come back with a presentation and things like "You need to work on requirement gathering."

DUH! #%$#YU^&*I We hired you because we knew we had problems with that!!

The best consultants can pull this off and actually add value at the same time, because they analyze the business relationships and make recommendations for improvements.  The worst just ask a bunch of questions and then parrot the answers back to you re-phrased.

The wierd thing is - a successfull consultant can BS his way into consulting for a architecture firm - when he knows nothing about the subject - then use that "sucess" to build his business in that area, because now he has "experience."

Then he can use tangential experience - Nothing into web dev into software dev into autocad into architecture, etc.


Now, the guys who actually _build_ software systems, the true independent contractors - how they became called "consultants" I don't know.  It sure makes the landscape confusing, though.



regards,

Matt H.
Monday, January 05, 2004

*  Recent Topics

*  Fog Creek Home