Starting a Software Consulting Business
Here are some suggestions for anyone considering starting a software consulting business, including people who are out of work and have been approached by someone they know to do a bit of freelance work. Some of the information is specific to Washington State, or to Seattle, and some of it isn't. Some of the information is specific to software consulting businesses, and some applies to other businesses. Whatever your situation, I hope you find it useful.
Of course, it should go without saying that this page contains information that is meant to be helpful and correct, but it may contain errors, generally is just my personal experience, and is not meant to substitute for legal advice, tax advice, or any other kind of advice that you should consult a professional for.
If you have further questions, or suggestions of information I should add, please contact Poplar ProductivityWare.
- Recommended books and resources
- Skills you will need
- What and when to charge
- Getting clients (Marketing)
- Accounting and records
- Taxes, licenses, etc.
- Insurance, retirement, and reserves
Recommended books and resources
Here are a couple of books I'd recommend, with much more comprehensive discussions on how to start and run a business:
- Small Time Operator, by Bernard Kamoroff, has frequent new editions (23rd in 1998) published by Bell Springs Publishing, and is an excellent general reference on starting and running a small business.
- Entrepreneurship for Dummies, by Kathleen Allen, is another good reference, a little more oriented towards "making it big".
- The Concise Guide to Becoming an Independent Consultant, by Herman Holtz, is a good guide on how to start and run your consulting business.
- Crossing the Chasm, by Geoffrey A. Moore, is the excellent standard reference on high-tech marketing
- Guerrilla Marketing, by Jay Conrad Levinson, is a guide to marketing on a budget, focused on what will help you make a profit in your business
- Consultant and Independent Contractor Agreements, by Stephen Fishman et al., is a guide to creating contractor agreements, with a CD-ROM. I haven't used it myself, but it comes highly recommended.
I'd also recommend checking at your local SBA office (you can find it via www.sba.gov) to see what resources they have available, such as SCORE volunteer counseling and seminars. Your local community college probably also has some useful seminars, and maybe a class on starting your own business that could be very helpful.
Also, the Seattle chapter of Digital Eve has compiled a useful resource list, which includes some links related to starting a business.
Skills you will need
Here is a short list of skills that you will need to have (or hire), in order to run your consulting business. You may be able to learn them in classes at your local community college, books, or seminars (check out the Resources section above).
Just a word on passion... It's been said many times, but I think it bears saying again: start a business doing something you are passionate about, or at least something you enjoy doing. Besides the fact that you will be devoting a lot of time to your business, people will be more likely to hire you to do something, if you are excited about what you are doing. Another suggestion is that before starting a business, make sure you have worked in a similar job for at least a year or two -- that's probably the only way to find out if you will really enjoy it, and it's a lot less risky than venturing out on your own.
That said, here is a list of skills you will also need:
- The specific skill you are selling as a consultant (i.e., your niche of software development) -- you will need to have lots of skill and experience (not just a degree) to establish credibility so that people will want to hire you as a consultant.
- General organization skills -- you may be able to hire a professional organizer to help you.
- Self-motivation -- the ability to get things done once you've decided they need to get done, stay on task, etc. without anyone prodding you -- you may be able to hire a business coach to prod you.
- Flexibility -- if the initial idea of the services you want to provide doesn't work out, or if your initial business plan proves to be unsound, you will need to be flexible enough to change course.
- Willingness to live with uncertainty -- at least at first your income will not be steady, and you will probably never have certainty about your income level. If you aren't willing to live with that, you might want to consider getting a regular job, rather than going into business for yourself.
- Budgeting -- if you are the type of person who spends money when you have it, you will need to introduce better discipline into your spending habits before you start your business, because you may have a month or two, at times, with insufficient income to take care of your basic living expenses (food and rent/mortgage). See the Insurance section below for more information on financial needs.
- Basic record-keeping, bookkeeping, and accounting -- you may be able to hire a bookkeeper to help you, and you will probably want to hire a CPA to make sure your books are set up correctly and review your taxes -- see the Records and Accounting section below for more information.
- Marketing -- you may be able to hire a consultant to help in this area, and probably will want to have a professional to design a logo, business cards, web site, etc. -- see also the Getting Clients section below.
- Sales negotiations
- Personnel management, if you will have employees
What and when to charge
I can't include any discussion of specific amounts to charge, as that might be construed as price fixing. But here is a suggestion for how to figure out what to charge:
- Start with what you think you would be making, or should be making, in a full-time regular job, as a reasonable annual salary. That is, your gross annual pay, not including benefits, and assuming that the job comes with the usual benefits (health, dental, and life insurance, sick leave, vacation, etc.).
- Divide that amount by 1000, to get a reasonable hourly consulting rate. For instance, if you think your reasonable annual salary is $30,000, then your reasonable consulting rate is $30/hour.
This is just a "rule of thumb" calculation. It takes into account that you have to pay for the fringe benefits a job would provide yourself, and that you will have some "overhead" time (time spent finding, rather than working for, clients).
If you are still not sure what to charge per hour, you might check out these web sites:
- An excellent set of articles on different careers, including education background required, what the job is like, and expected salary.
- Another site, Career Overview, with similar information.
- Realrates.com, which has self-reported information on actual people's salaries and consulting rates, for computer-related work
Some clients will want fixed-price bids for a job. In my opinion, at least when you are getting started, it's better to avoid this if possible, because the clients probably don't have their project completely thought out, and it's very difficult to bid on a moving target. If you do have to do a fixed-price bid, be sure to estimate the time it will take you to (a) hammer out actual requirements, (b) write the software, (c) test and debug, (d) install on the client's system, and (e) train the client to use it.
One further suggestion: make sure to start clocking billable hours fairly soon after you start talking to your client about the project. One or two hours of investigation or narrowing down specs is OK, but you don't want to get into a situation where you spend hours and hours figuring out what they really want, and then they don't hire you. So, once it gets to an hour or two of discussions, you probably should bring up the question of signing a contract, and your hourly rate. If this scares the client away, they probably weren't going to hire (or pay) you anyway.
I don't think it's necessary to have a long contract filled with legal terms. It's better to not work for anyone that you don't trust, unless you are willing to take the risk of not getting paid, or of getting sued. And if you do get sued, a long legal-language-filled contract is not going to help you. At least, I don't think it will, but I'm not an attorney, so you might want to contact one to get their opinion.
Instead of a long contract, I suggest a short letter of agreement, which you should sign with all of your clients. Try to make sure that your client has actually read it before they sign it, because the aim is actually to come to an agreement with them, and avoid problems in the future by agreeing on the responsibilities of both parties. This letter should contain the following elements, written in clear language:
- What work you are doing for the client: this could be fairly detailed, or you can leave it general. If you are doing a fixed-price bid, be very specific. If you are working on an hourly basis, you can probably be a bit more general, but it doesn't hurt to put in any specifics you know, so that you are in agreement about what software you are writing and what it will do.
- Whose responsibility it is to maintain back-up copies of the source code and running software, after it's been delivered (this should normally be the client).
- Whose responsibility it is to test the software (this should normally be the client, who has final say over accepting the software as "working"). Also, who has liability if it doesn't work, or for how the results are used (this should be the client).
- Time frames for finding/fixing bugs, on a fixed-price bid. For instance, you might specify a 2-week testing period for the client to find problems and for you to fix them, and that after that period, there would be additional charges for changes and bug fixes to the software.
- Who owns copyrights and use rights on the software? You might specify that the client gets full rights (after payment of invoices). Or you might consider licensing the software, so that you can use it again in your work for another client. A third option is to make all the work you do open-source.
- Invoices and payments: how often you will send the client invoices for the work, and how long they have to pay up.
- Proprietary and confidential information: you should agree never to reveal any proprietary information about the client to other parties without their consent. You might want to put in writing, however, that you can use the fact that you worked for them as public information (e.g., for your resume or on-line client list).
- Independent Contractor clause: a clause stating that you are intending to perform the work as an independent contractor, not as an employee, and that you are responsible for all taxes and expenses, and will perform the work when and where you want to. Sample clause: "The parties intend CONTRACTOR to be an independent contractor in the performance of these services. CONTRACTOR shall have the right to control and determine the method and means of performing the services, and retains the right to work for other clients during the time frame of the relationship with CLIENT. CONTRACTOR is responsible for all expenses required for performance of services. CONTRACTOR states that she is licensed to do business in the state of Washington as an independent software service provider, and is responsible for all IRS and state tax liabilities that may result from this work, employment insurance, and benefits."
Once you draft your letter agreement, it is probably a good idea to have a business attorney familiar with the laws of your state review it, before using it. Also, if you come across a client that wants you to use their contract, you probably should have your attorney review it, or at least make sure that it contains the main points listed above, and is reasonably balanced.
Getting clients (Marketing)
In order to stay in business, you will need to have clients, and in order to have clients, you will need to do some marketing. My suggestion is that you develop a marketing plan, and this section discusses some aspects of creating a plan. You may want to hire a marketing consultant to help you through this process, or attend a business planning workshop -- your local SBA office is a good place to check for workshops.
You will need to start by narrowing down your business. What do you do better than anyone else, or with more enthusiasm, and who could benefit from your services? Don't claim to be able to do anything and everything for everyone, but be honest, and offer one or two specific services that you think specific businesses or people will pay for. Make sure you can put your ideas in writing, in the form of a business web site, business brochure, and business card. If you can't do that, you probably need to do more thinking before you start on your marketing effort.
Once you have figured out what services you are offering, you will need to choose a business name, logo, and general look for your marketing materials. You want your business card, brochure, and web site all to line up with your business plan, and project the same professional image. You will probably want to hire a graphics professional to help with this.
Once you have the basics in place, you need to actually meet prospective clients to connect them with your web site, business card, and brochure. The most effective way to do this in a service business is probably networking. This can start out simply: ask your former employers and co-workers for referrals. You might also want to attend business networking events, or join a business organization. Another way to get visibility is to sponsor a meeting for an organization, or to give a talk there. Check out our article on networking for more ideas.
Once you have met your prospective clients or referral partners, keep in mind that they will forget who you are unless you keep in touch. This could mean sending them an email message every few months with a brief update on what you are working on, or calling them on the phone, or perhaps meeting some of them for coffee.
Although referrals are considered the best way to get clients by many business people, there are other ways. For instance, you could try cold calling, advertising, or direct mail -- but these methods are costly and traditionally have low yield.
Another possibility is to participate in web directories. There are several types:
- Sites where you can list yourself as a consultant, and look for consulting job possibilities -- but it tends to be a bidding war, with the low bid getting the job. I haven't had much luck with them, and don't particularly have any to recommend.
- General Web directories, such as Open Directory Project (free!), business.com (not free!), and Yahoo! (not free!). Getting your own web site listed in the Open Directory Project will definitely help your prospects for Google searches.
- Social networking directories, such as LinkedIn and Facebook. LinkedIn is probably the best one for making professional connections, while Facebook may be better if your consulting business has a more social side or a young client base.
- The US Small Business Administration also has a Business Card Directory, where you can create a free on-line searchable business card.
Another possible source of clients is government. Here are a few links related to that:
- Seattle Daily Journal of Commerce -- this newspaper and web site lists (subscription only) most large government contracting opportunities in the Seattle/Washington area, and also has news stories of business interest.
- PTAC home page. PTAC stands for Procurement Technical Assistance Center. They provide a lot of free services to help you with doing business with government, including an email service that will send you relevant opportunities to apply for.
- The Seattle SBA office has monthly briefings about government procurement, which are highly recommended.
- If you are a woman, disabled, or member of a minority group, and a business owner in Washington, you might want to consider registering as such with the Washington State Office of Minority and Women's Business Enterprises
- Various US and Western Washington bidding opportunities sites. Note that
for many of these, you may be able to get on a roster to receive email
notices of new bidding opportunities -- check links on these sites.
- Federal Business Opportunities page
- US Small Business Administration's "Sub-Net" (sub-contracting opportunities)
- Washington State General Administration
- Washington Technical and Community Colleges - Information Technology
- King County (you may also want to click on the Consultants and Construction tabs at this site while you're there)
- Snohomish County
- City of Bellevue
- City of Bothell
- City of Lynnwood
- City of Seattle - Information Technology
- City of Seattle - General
- City of Seattle - another site
And finally, you can try to find people who are already looking for your type of business, and contact them. Places to look:
- On-line or print advertising, such as Craig's List or your local newspaper. Craig's List has a classification for "Gigs", where people list their short-term project needs.
- Notice boards for organizations you belong to -- for instance, the user group for your favorite software might have a job board.
- Twitter -- some people will use Twitter to post a query such as "Anyone know someone who can help me with xyz?". You can set up a search using search.twitter.com (check out the advanced searching capabilities) for the word "anyone" along with a keyword from your area of expertise, restrict it to your geographical area, and monitor the results in your RSS reader or by email using TweetBeep.
Accounting and records
Note: Consult a professional -- this is not advice from an accounting professional, just some things to think about.
Here are a few hints on accounting. The first idea I'd like to offer is to keep it simple. Accounting is not that difficult for a small Seattle-based software consulting business, since your expenses should be minimal, and you probably don't have to deal with sales tax, employees, and other nightmares. The easiest thing to do is probably to use Quicken, Microsoft Money, or some program like that to keep track of things. Figure out what types of expenses you can deduct on your federal Schedule C, and keep track of them by those categories; you'll probably have to customize the categories in the program you're using, so they make sense for your business. QuickBooks and other full-fledged accounting programs are probably overkill.
It also makes things much simpler if you open a separate business checking account (which should come with a debit card). Any revenue you have from consulting should be deposited in that account, and then you can write yourself checks from that account, to get the money over into your personal account. All business expenses should be paid via check or debit card from that account as well, but if you must buy something using cash, you can write yourself a check to reimburse the amount. Make sure to keep track of which checks you wrote to yourself were for "personal draws" and which were for expenses (and the category of the expenses).
Keep all your receipts for expenses, of course, and copies of all the invoices you send out, in case you ever get audited. You'll also want to keep track of your mileage to and from any job sites (and/or bus fare you spent), and your "overhead" hours (hours spent on things other than direct client work).
If some of this doesn't make sense, or if you normally use a CPA to do your taxes, or aren't all that familiar with standard accounting, or don't want to read the IRS publications, you should probably consult a professional for help before getting too far into your business.
Taxes, licenses, etc.
Note: Consult a professional -- this is not advice from a tax or business licensing expert, just some things to think about.
Anyone who is self-employed in the US will probably need to file quarterly estimated taxes with the IRS. If you had a job, your employer would withhold taxes from your pay, but now you have to do it yourself. The taxes you will pay at the end of the year will also include self-employment tax, which is basically the Social Security and Medicare tax that your employer would have withheld, plus the amounts they would have paid on your behalf (they pay half, if you're employed). So, be sure to calculate (or have an accountant help you calculate) your estimated tax burden correctly, and send in 1/4 of it each quarter to the IRS. You can get the forms (1040-ES) and instructions on the IRS web site, at www.irs.gov. While you're there, order or download Publication 334, "Tax Guide for Small Business".
When you file your federal income tax, assuming that you are a sole proprietor and not incorporated, you'll have to file either a Schedule C or Schedule C-EZ, to report your profits from self employment -- here is where keeping track of your expenses saves you tax money.
If you are eventually planning to have employees (besides yourself) in your business, you will need to get an EIN (Employer taxpayer ID number) from the IRS for your business. If not, you will be operating as a "sole proprietor" and you can just use your social security number as your EIN. (However, you might want to get an EIN for your company anyway -- it is free, and since you'll have to give your EIN out frequently, you might want to have a separate number to protect the confidentiality of your SSN.) Getting an EIN is quick and simple -- instructions are available on the IRS EIN web page.
In Washington state, if you want to do business as a consultant, you will need to get a business license, and pay business taxes. If you live in Seattle (and possibly other counties/cities in the state), you will also have to get a city business license and pay (or at least file) city business taxes. For more information on State requirements, visit the Washington State "Access" home page, and click on the "Doing Business" section. There's a LOT of good information there, including information on electronic filing of business taxes. Seattle requirements can be found on the Seattle home page, in the business section; Seattle taxes can now also be filed on-line.
In other states and localities, you may or may not need a business license. However, if you are doing business under anything other than your full, legal name with optional suffix (e.g. Joseph P. Smith Software, vs. Joe Smith Software or Smith Software or Joe's Software), you will probably need to file for a "doing business as" (DBA) name for your business. You may also decide to incorporate as an LLC, S-Corporation, or C-Corporation -- check the resources above or consult an attorney for more information.
Insurance, Retirement, and Reserves
There are several types of insurance you will probably want to consider getting. I'm not an insurance agent, so take any advice here as my opinion only. In this section, I've also included some information on retirement plans.
- Cash reserves: A ballpark figure is that (if possible), it's a good idea to have on hand 3-6 months of living expenses, plus an amount to cover your yearly out-of-pocket maximum for your health insurance plan's deductible/co-pay, and perhaps your auto or home insurance deductible as well. Keep this in a bank or a money market mutual fund, somewhere safe where it will earn a little bit of interest but definitely not go down in value.
- Retirement: At a job, you usually can participate in a 401-K plan. As a self-employed individual, you can do something similar for yourself -- there are several options. A fairly simple one is to start an SEP-IRA, where you can contribute a certain portion of your net profit each year. It is now also possible for small businesses, even without employees, to set up their own 401-K plans, and this might be more beneficial than an SEP-IRA, depending on your circumstances. There are also plans called SIMPLE, but they are far from simple to set up and maintain! The IRS web site has information on them (see Publication 560, "Retirement Plans for Small Business"), and some banks and brokerage houses make it fairly easy to set them up -- ask yours and get going by the end of the first year you're in business, so as not to lose out. You should probably also consult with an accounting professional to figure out what type of plan is best for you.
- Health insurance: Regence and Primera offer individual plans for self-employed individuals in the Seattle area. It's almost certainly less expensive than your COBRA plan, but the coverage might also be less. A fairly healthy person may want to consider a low-cost, high-deductible "catastrophic" plan, which doesn't cover routine doctor visits, but will protect you from financial ruin if you end up in the hospital. There is more information on individual health insurance available from the Washington Insurance Commissioner's publications list. Two on-line vendors of health insurance also have decent guides: eHealthInsurance (click on "Help Center"), and 1st Health Insurance Quotes.
- Dental insurance: Individual dental coverage is generally not cost-effective, and most plans have very low maximum yearly payment amounts. The purpose of insurance should be to protect you from financial disaster, and with a low maximum payment, these plans don't.
- Industrial insurance (worker's compensation): Some health insurance plans don't cover on-the-job injuries, which might include repetitive stress injuries or accidents occurring while driving to visit one of your clients. If you find yourself in that situation, you might want to consider buying into the state Industrial Insurance program. In Washington, it's pretty inexpensive and pretty easy; see the Labor and Industries web site.
- Life insurance: If you have dependents, you probably should get some; if no one is dependent on your income except yourself, you probably don't need it (though it may make sense as an investment)
- Long-term disability insurance: Everyone probably needs this: it covers the cost of living if you should become unable to work due to injury or illness.
- Car, house, and general liability insurance: You will need to make sure that you are covered for liability and your own losses such as: working at other peoples' offices (e.g. if you spill coffee in a keyboard and wreck it), business meetings and business deliveries in your home (e.g. if someone trips on your sidewalk), driving to and from business appointments, and fire/theft/damage of your business equipment. Some of these coverages may be available as riders on your current car and homeowner/renter insurance policies.
- Professional liability insurance (also known as Errors and Omissions): this covers your liability for your clients' losses due to things such as malfunctions in the software you wrote. It is quite expensive ($1000 per year minimum), and may not be necessary if you have a good contract and you are not working in sensitive areas such as medical software (consult your business and contracts attorney, and see the Contracts section above).