What do you think are the key values and skills that a good software consultant should have? How do you think they should act? What do you think the 10 basic rules of a good software consultant should be?
The reason I ask is because I so often hear about bad consultants and consultancy firms failing to deliver products up to standard, on time and within budget. I am going to give my basic 10 tips for becoming a good software consultant based on the failures I have seen in consultants and consultancy firms of the past. Feel free to add your own and build on those that I have suggested and recommended.
1. Always turn up on time, fit into your working environment and have a professional working attitude.
2. Ensure that you know what it is that you need to deliver. Get a specification that is UNAMBIGUOUS agreed and signed up against by both yourself as a consultant and also with the management so that you both know what it is that you have to deliver.
3. Ensure that an accurate and reasonable deliverable time scale is agreed upon between the contractor and the company and that it is absolutely clear what is delivered, i.e. whether it is just the source code, a complete and tested system etc.
4. If there are bugs (if... try to avoid these where possible!) in the system do your best as a consultant to minimise the impact of these to your client and their customers. If it is a major bug, fix them as quickly as you can and make sure that they are fully tested so that you can be sure that you haven't introduced any further issues into the software.
5. Ensure that your work processes are clear and suitable for the task at hand.
6. If the scope of the work suddenly changes, ensure that the client knows what has happened and let them understand the impact of this change in terms of time to completion, cost and project management.
7. If you find a problem with the work or don't think you will be able to deliver a complete solution yourself let the client know that. Don't just work around it or leave the problems unchecked until the delivery date, this leads to bad client relations and you want repeat business from them if you can manage it, and rememer that by not delivering you make all consultants look bad. It reduces trust in the consultancy business as a whole!
8. Only take on work that you have the correct skills set for. Steep learning curves slow projects down and create an element of risk that the contract may not be honoured.
9. You are expected to deliver all or part of a complete solution. Make sure you deliver it and that your client is happy with what has been delivered.
10. Make sure that you have excellent communications channels between yourself and your client. A breakdown of these could be the difference between the success and failure of a working relationship!
I am absolutely certain that there are many more pieces of advice that could be given on this subject so I look forward to hearing a few of them from consultants and clients to consultants out there. Maybe we can build up a strong set of rules for consultants to follow... maybe the "Rules of the Consultant" or something like that.
posted @ Wednesday, February 01, 2006 7:56 AM