Tips for Starting a Software Consulting Firm? 15
"My key selling points include the ability to construct complex systems relatively quickly, an iterative approach to creating the end product by means of continuous interaction with the client as milestones are reached, since I realize clients don't always know what they want until some test code has been constructed. Honesty, fixed bids, and ability to create more than just software (graphics, documentation, hardware, etc.) are also characteristics I feel makes me unique.
I have done some 'web programming' consulting as a moonlighter, but I don't really want to do just web projects. I'm not interested in trying to get rich quick, just interested in making enough to live comfortably on, without the politics and problems of the corporate America workplace. Thanks for any advice or tips!"
Unique? Gotta prove it. (Score:5, Informative)
etc.
This does not make you unique. Everyone makes those claims. And most of them follow through on those claims most of the time. What would make you unique is if you could do what you promise 100% of the time. But, that's a very hard thing to do. Read the Software Engineering literature and you'll see that a huge percentage of projects fail. Most of the time it's not even for technical reasons. One of the worst situations you can get into as a consultant is to be caught between two powerful factions in a company. DOOM! DOOM!
So, my advice is this:
1) Be honest to the customer. Everyone tries to be. The hard part is being honest with yourself. If the customer is abusing you, you've got to realize it and get rid of them even if it means not eating for a week. If the customer is purposely driving the project into failure for political reasons you have no control over, you've got to admit it and get rid of them because failure will not help you succeed.
2) Don't do fixed bids if you can help it. Believe it or not, just about everyone's tried it, and those kinds of projects can be extremely painful for you. Customers can jerk you around all day because it doesn't cost them anything.
3) Politics: a fact of life. You're not going to get away from politics. In fact, you're likely to run into much more politics. At most consulting companies I've worked for, there has been a project manager AND a client manager. The client manager was in charge of kissing the client's ass, making sure that their vice Presidents ass was getting properly kissed. At smaller companies, the project manager was in charge of managing the relationship with the client.
If you get into business with a partner, realize that finding a business partner can be much more difficult than finding a wife who will love you, put up with your shit, and not cheat on you. Make sure that you put the appropriate amount of consideration into who you take on as a partner. Friends are sometimes NOT the right people to have as a business partner.
OK, that's all my advice. If I had more, I would have to charge you. (consultant joke! - you should have a rolodex full of jokes to tell your clients. Funny consultants make more money, trust me.)
Re:Unique? Gotta prove it. (Score:2, Interesting)
- Be very careful of dealing with two representatives in the company. If they dont communicate they have different ideas that are inevitably contradictory and you ens up makeing something and then chainging alternately between two or more setups as each one looks at it...
- Iterative development processes are good - but be prepared to change _everything_. If there's one thing that clients can be relied upon to do its to tell you they want something, and then tell you they want it a totally different way as soon as they see it (no matter how detailed a description you get from them, no matter how good it is...)
- Get a cheque and cash it for each and every milestone!!!
- Make sure you charge the right amount for ech client. This can be a factor of two or more different for different people - you're just as likely to lose a job by underpitching it as overpitching it if the client is unsure that they'll get what they asked for (doesnt matter if its a five minute job - its the percieved complexity that's just as important...)
- Dont start off with very low prices, it'll be a real pain to raise them afterwards... (and regular clients won't accept it at all...)
Re:Fixed Bids???? (Score:1)
Fixed bid contracts are just fine, as long as you also include language to limit the number of hours you are expected to put into a job.
Example: Provide national ID database programming on Oracle DB, provide secure interfaces for client access, implement solution at all end customer locations, provide on-site training and support services. Not to exceed 10 hours. $10,000.00
This is perfectly legit and I have used this form for jobs several times successfully.
Sure, I'll help ya! (Score:5, Funny)
:)
Learn an industry. (Score:4, Insightful)
Also, nobody is going to beat down any bushes to find you. And your business better look like a real business, not "some guy". Get stationary. Have a real office. Ignore this advice at your absolute peril.
And you want fairly large projects. Little projects take almost as much work, and don't pay anything.
-
A better book (Score:3, Informative)
Secrets of Consulting [amazon.com]
politics ... hah! (Score:3, Informative)
Just a bit of advice . . . you can't get away from politics, ever. If you ignore office politics, you'll get ambushed by those that pay attention, every time. You don't have to be evil, just aware.
And another freebie . . . the problems of the corporate America(n) workplace are automatically the same as yours, trebeled. Sorry.
Tips (Score:5, Insightful)
Get a client! (Score:3, Insightful)
Is now really the right time? (Score:1)
Also, going "solo" will take a lot more time and effort than you can ever imagine. Unless you are a CEO type of person, then please get one as soon as you can. I take it you like the "problem solving" aspect of the IT industry. Then it is essential that you realize what you are good at and not so good at. As a small firm, every person has to pull his or her weight to a maximum extent and this means "Do what you do best and get someone else to do the other stuff".
Take the last quote and read it again. I can't stress the importance of that one enough.
Software Consulting Success (Score:4, Interesting)
1. Establish a beginning to end process. I cannot stress enough how important this is. All of your clients will be clueless about software development, and a little nervous heading into areas they know nothing about.
When you come in and say...
"Well, first we do this, then we do this, then we check here, build here, test here, sign-off here etc etc"
... the client relaxes, because it sounds like you know what you are doing, even if s/he doesn't.
2. Never make the client look like a fool.
As tempting as this is, because you meet some monumental morons (often with million dollar budgets). The key is to maneuveur is such a way that the client takes the credit for all your good ideas. Obviously, you need to gauge the level of incompetence/stupidity of your client and raise your rates accordingly.
3. Never be afraid to pass on a job.
There are great gigs, and there are gigs that will break your heart and send you bankrupt. Don't ever think that you can raise the client's competence in business, it just wont happen. If the project is a bad idea, with an impossible deadline, leave it for some other sucker.
4. Document every change and meeting.
After every meeting with the client(s), write up the important points, especially any changes, and send that e-mail/memo/whatever to the client and ask if you have all the main points, or is there anything else.
This is 'feature-creep' insurance for those times when irresponsible middle-managers in large organisations get a 'please-explain' from their boss and then try and blame you.
Then you politely and calmly pull out your documentation, and ask 'Which features would you like to cut?'
5. Don't forget to feel worthy.
Computer programming is one of the most difficult jobs on planet earth, and there are very few people who are any good at it. Don't be fooled by claims that there are 100 people who can replace you. If you are any good, that's just not true.
So set your rates accordingly. You deserve the rewards that come from hard work. That's why they don't pay filing clerks very much. Anyone can do it. Good programmers should command top dollar.
6. Don't hide anything from the client.
Remember to mention all the 'other' costs of software like implemenation/rollout, training and documentation. And mention them in the first meeting. Make it part of your process (see item 1).
7. Have fun!
I love both consulting and programming. If I wasn't married with kiddie, I'd spend most of my hours on it. And if your client has a major issue with you enjoying yourself, FIND A BETTER CLIENT!!
Document, document, document (Score:1)
Specialise! There are thousands of MCSEs, web-developers, access programmers, pc-support tinkerers. Each of them knows from everything a little bit, but nothing really in-depth. If you want to bill top dollar, you need to provide specialised services.
Document! document! document more! Customer relationships are always nice and cosey, until the blame game starts and the shit is flying around by the truckloads.
(that has been mentioned, but since it's important: If you don't know precisely what you offer or the exact scope of a project, don't offer fixed price. Never! Major consultancy outfits got burned with fixed price offers, there's bo reason why you should have more luck. Always define exit criteria for fixed price projects in advance.
Never start on a project which has either no project sponsor or more then one sponsor. Both cases will burn you badly.
Don't start from a hole. Ideally you have a customer or two, which can help you bootstrap your business.
Well, good luck I guess...