View Single Post
Old 6th August 2007, 16:30   #4 (permalink)
ashwin390
Newbie
 
ashwin390's Avatar
 
Join Date: Jul 2007
Location: Bangalore
Posts: 28
Default

Well, a software consultant has many responsibilities. some of them include
  • Business Development - This is the sales / marketing job that the consultant does. Here, he is responsible for identifying potential customers, contacting them and getting an audience with the "powers-that-be" in a potential client organization
  • Pre-Sales - once the consultant gets an audience, he will make a presentation about his company, their abilities, and their past work to the prospect. If the prospect is impressed, they will issue an "Request-for-proposal (RFP)" - basically stating a problem, and asking the consultants company to respond with a proposal, containing the solution, implementation methodology and costs involved. Also, this will involve the actual deal negotiation and deal signing.
  • Business Analysis - Once a particular company is selected (now called the vendor), the consultant will go to the client, and study the client, the client's processes and the problem in hand.
  • Requirement Gathering - usually a part of business analysis, the consultant will gather, in minute detail, the exact needs and requirements of the client
  • solution Testing - Once a final product/solution is ready, a good consultant will involve himself/herself in testing the product/solution to ensure that it meets the customer requirement.
  • Solution Implementation - Again, the consultant is responsible to ensure that the tested product/solution is properly implemented at the customer's site, and is up and running.
These roles may not necessarily be done by a single consultant. There will generally be different consultants performing these roles. However, the term consultant is a generic or blanket term covering someone who does one or more of these roles.

A software engineer, in the above scheme of things, will come in after the Requirement gathering part. His/Her responsibilities will include
  • Solution Design - once the requirements are gathered, a software architect (promoted software engineer, promotions based on proficiency and experience) will come up with a solution to the clients problem
  • Solution development - This is where your software engineers will do the coding work to actually create the solution. To put it very simplistically, your architect is like a car designer - someone who conceptualizes the car, its exterior and its interior, while the engineer is the guy on the assembly line who actually builds the car. This is not exactly true, but its a very very very simplistic metaphor.
  • Solution Testing - this is where the architect, engineer and consultant sit down with the gathered requirements and test it for bugs and the fact that it meets the customer's requirement
  • Solution implementation - this is where an engineer and consultant will go to the customers site and implement the solution.
These are some of the basic, key differences between a software consultant and a software engineer.
__________________
I couldn't fix your brakes, so I made your horn louder.

Hyundai Verna 1.6xi - 2007
Maruti 800 - 2004
Suzuki Samurai - 1997
ashwin390 is offline   Reply With Quote