Many software developers at one point in their career may wish to go out on their own and start their own software development business. Some do, but the majority usually stays employed for various reasons, including not knowing where to start and how to proceed. In this post, we’ll look at some of the steps necessary to start your own software consultancy. From there, you can choose what path you want to take.
I’ve spent nearly 20 years of a 30+ year career in software development as an independent consultant. What’s in this blog post is what I’ve learned that has worked for me, or other consultants who I have worked with.
You’re ready to hit the ground running and start making megabucks as a consultant. But how do you get started? It’s a bit more than going out and buying some business cards then yelling “I’m open for business!”. There are some things you’ll need to do to make success more likely. First, some “housekeeping”, which is to say, all of that not-so-fun stuff that goes into consulting. Some of this advice here in the “Getting started” section largely applies to folks residing in the USA. Other countries may have different requirements regarding taxes or laws about opening a business.
Make a business plan
Just like at a company, if you don’t make a plan with goals, you don’t know if you’re actually accomplishing what you set out to do. Your plan may be to reach a certain amount of revenue or clients, or perhaps to secure work in a certain specialization. If you plan on incorporating, getting lines of credit, or taking out loans for any reason, you may be required to provide a business plan.
Get an attorney
Get yourself an attorney that specializes in small businesses and sole proprietors. You don’t have to spend a great deal of money, but you should have someone available to field questions, double check documents and contracts, and generally help you on the legal side of things.
Depending on the type of work you’ll be doing, your lawyer can help you create templates for SOWs (Statement of Work) and other legal documents you’ll need when dealing with clients. Absolutely do not engage with clients without a SOW and a contract. Legal documents such as contracts are there to benefit both parties and clearly define the scope and type of work so there is no confusion. If you’ve only worked for an employer before, you might not have dealt with contracts and statements of work. Your lawyer can show you how it all works and guide you through it.
Get an accountant
If you already have one you like, great! You can probably just continue using her. Taxes can become complex quickly so it’s best to go with a professional. There will be expenses you could deduct as well as other accounting practices you simply won’t know about unless you’re an actual accountant. It’s foolish to spend billable hours on something like filing and paying taxes, when you can be out there billing.
Start your business
How you proceed here largely depends on where you live. In the USA, you can go as a sole proprietor, LLC, or S-Corp. The type of business you choose affects how you pay taxes and run your business. Your accountant will help you make the choice based on your goals in your business plan. This choice not only affects how you pay and file taxes, but also which clients you may work with. Some large corporations will only work with an LLC or S-Corp, and not a sole proprietor.
You’ll have expenses, so you’ll need to open a small business bank account. Keep your own money and the money you designate for your business separate, even if you register as a sole proprietor. It’s easier to organize expenses and taxes when accounts are separate. It’s also easier to prove to the tax authorities that you’re paying taxes correctly.
If you will travel for your business, get a credit card specifically for the business. Use this card for office expenses, marketing expenses, or any business (again, not personal) expenses. Keep receipts to match your bank statements and ask your accountant what is tax deductible. Don’t assume and you use your business credit card to pay for it. Ask first. Tax law changes yearly so what is deductible this year might not be next year.
Get yourself liability insurance at a minimum. Some large corporations require it. If you like your current auto or home insurer, see what they have for self-employed folks.
This absolutely varies from country to country. In the USA, companies deduct taxes from paychecks for folks who are employed part or full-time. This includes an unemployment insurance tax that now comes out of your own pocket. Once you run your own business you must do all the tax administration yourself. Your accountant should guide you and get you the forms to pay taxes either quarterly (most common) or yearly, as well as an estimate of how much you might pay. Just be sure to pay on time to avoid late fees.
Marketing and sales
Whether you like it or not, you must market and sell yourself. If you plan on taking on employees at some point, you must sell your company’s services. Invest the time to take at least an intro course on sales/marketing, or do some deep reading on it. As an independent contractor you’ll now have what sales people call a “pipeline” and you need to keep it filled so there are as few gaps in work as possible.
Most tech people hope to avoid any sort of marketing and sales activity but this is a huge mistake. It doesn’t matter if you are a full time employee or an independent consultant. Employees must market themselves for raises and promotions while consultants do it to land the next gig. Both do it to become recognized as a highly competent professional, and possibly an expert. Your work only speaks for itself after someone else knows about it.
The best way to get clients is through word of mouth. Word of mouth is the most personal way to market yourself or a product. This is because you’ve built up enough trust that someone else will vouch for your expertise or product’s quality. So call upon your professional colleagues who you’ve worked with in the past to see if there are any contracts in your area of specialization. Check in with colleagues of previous employers to see if there’s any contract work at those places.
Here’s another to file under “like it or not, you must do this”. It’s social networking. Everybody wants to see some sort of online presence before they are willing to pay for a product or services. Publish a website with at least some information about you and your specialization. You might want to combine it with a blog (more on that below). Twitter and LinkedIn are popular online spots for people to research companies and individuals, and highly recommended for visibility. Both are also easy ways to communicate with potential customers via direct messages.
Public speaking is a great way to showcase your skills as well as tell the world that you are out and available to take on business! Speak about the area of expertise that you want to work in. Start at user groups and meetups, then submit to other conferences as well. Nowadays, there are many options for speaking virtually as well, which often leave a nice recording you can use to promote yourself. Pro tip: Don’t forget to actually tell people that you’re accepting clients during a talk. If the audience doesn’t know, they won’t approach you for work.
Blogging is similar to speaking, but to state the obvious – it’s just written down instead. The nice thing about blogging is that you can make a post about a topic, particularly if it solves a problem, then hand it out as a “free sample”, so to speak. This works out great when others need help overcoming that same problem. You can point them in the right direction, then follow up with your newly learned sales and marketing skills to land the gig solving this problem. Blogging is a great way to show off your expertise as well as communication and writing skills.
Participate in an OSS project or start your own. If you have written a utility that proves useful in different scenarios then consider making it OSS and charging for support by the incident or better yet, through an SLA (Service Level Agreement) with various pricing tiers. Your attorney can help you create an SLA.
If you have the budget then consider sponsoring software development events. This can be in the form of an actual sponsorship or simply buying branded swag (pens, stickers, etc…) and passing it out with business cards while you’re networking.
You are networking, right? This is imperative. If you do not have established professional relationships, the whole “word of mouth” thing goes out the window. If you want to be successful, you must curate professional relationships regardless of whether you are consulting or a full time employee.
How to set consulting rates
There are several things to consider when setting your rate to ensure you aren’t charging too little or too much. The goal is to bring in more money than you spend. However, as a self-employed person, you must pay for your own health insurance, liability insurance, unemployment taxes, and other expenses such as office supplies and travel expenses. All of this goes into the cost of doing business. (Often abbreviated as COGS, Cost of Goods Sold. You are the goods.) You are no longer paid for vacation, sick days, or holidays. A good estimate is to reduce your overall billable time in weeks from 52 weeks to roughly 40.
You will often have down time in between projects. Of course, the optimum situation is to keep your project pipeline flowing so that one job stops just when you’re starting the next (see Marketing and sales). But this doesn’t always happen, and as an independent contractor, you must account for this yourself. In large consulting shops, it’s called being “on the bench”.
When you’re on the bench, it’s a great time for keeping up with new technologies or learning new things. You are now the employer to yourself, so you’ll be eating the cost of training materials as well as giving up billable time to learn. However, don’t count on being able to learn on the job. Consultants are expected to know what they’re doing before they start new projects.
It can cost a lot of money to be a small business or self-employed. Make sure your rates cover it, including bench time, while also providing for you to live.
What happens if you don’t get clients and go for a few months without work? The common suggestion is to save approximately 3 months worth of living expenses for those times where you might not be working. The stress of not being able to pay bills makes it a lot harder to also run a business well. Since you no longer have a steady income you must learn to live with variable income. Making sure you have some money held for such occasions eases this burden.
For extra financial security, consider creating a source of backup income through investments or passive income streams. If investing, check with a financial advisor. For passive income streams, YouTube, Tiktok, and Udemy are popular platforms. Of course, you must invest some up-front time for this, so you might want to do it after hours while you’re still employed to get a good start. These won’t return megabucks right away, if at all. But they will supplement a small portion of your income (about 1-5%). Weigh the time against what you reasonably think you’ll get in return.
Get into the “consultant’s mindset”. There’s going to be a lot of time that you must spend on the boring details of taxes, scheduling, paying bills, finding work, and everything but working on the cool stuff you prefer to work on. So make sure you track not just working hours but other hours so that you know exactly how many hours you’re spending on non-revenue generating tasks. This will also help you adjust your billable rates. Once something becomes too time consuming or burdensome, you can then justify the expense of hiring someone else to do those things (e.g., a sales person, office assistant, bookkeeper, etc…). Being an independent consultant is a constant balance of your billable vs non-billable hours.
 I know someone who did this. He simply bought business cards and set up a landline (early 2000’s). He expected that “If you build it, they will come.” It didn’t work then. It won’t work now.