8 Tips for Software Developers Starting Their Own Business
Are you an in-house dev thinking about going out on your own? Here are the 8 things I wish I’d known when I was in your shoes over a decade ago.
Get the best financial planner you can afford.
Ask everyone you know for recommendations. Make sure that the person that you choose is someone that you like and respect. They should be the principle individual in their firm. Do not select a junior person, and do not select your cousin Louie.
Establish a relationship with a lawyer
You can start off by having them incorporate your new business. As with the financial planner, get a senior person, and not your cousin Louie. If you don’t have an established go-to person for legal questions, you will probably let important issues go unanswered when they crop up down the road because you’ll be in a hurry it’ll seem like too much work to find someone.
Stay on top of your finances
I use QuickBooks, but there are plenty of options out there. Get a package that is appropriate to your business and stay on top of your accounts religiously. If you can afford it, pay someone to do your books. If tax time rolls around and you find out that you owe Uncle Sam $20k that you don’t have, money is going to get tight fast. And if money gets tight, you’re going to start making bad business decisions, like taking on clients you don’t trust, starting jobs that you are not interested in, borrowing from Peter to pay Paul, etc.
Become a recognized expert in your niche
It is tough to overspecialize these days. Selecting a tight slice of the market will allow you to more easily become the “go to” person. You’ll start getting referrals without even asking for them. Your website will naturally float to the top of search results made by potential clients in need of your specialty. Publishers will approach you about writing books on your area of expertise. Conference organizers will invite you to speak. It will be easier for you to get quoted in the media. Soon - say, 3 to 6 months - you’ll find that you don’t have to do any sales because customers are coming to you organically.
Stay small
Adding head count for the sake of saying that you are “growing” is just plain silly. You grow your business by increasing profits, not by adding bodies. This will allow you to be very choosy about who you work with. Of course, this means turning away a lot of work, but that’s okay. It’s better than scrambling to keep a bunch of employees busy when a big client evaporates unexpectedly.
Never bill by the hour
How much time it takes you to do the work is irrelevant to the client. In fact, they probably want it done yesterday, so the quicker the better. Quote the client a fixed price for the project based on their perceived value of the outcome. Stick to your price no matter what and keep working until they are happy. Request 100% payment up front and if they balk, offer to accept 50% in advance and 50% in 30 days, regardless of whether or not you are done.
You have to set your fee fairly high in order to make up for all the risk you are taking on, but you’ll find that customers are willing to pay a premium for a fixed price because it allows them to make an ROI decision before the project starts, instead of being nickel and dime-d with change orders for six months and ultimately going over budget anyway.
Check your ego at the door
It does not matter how amazing you are at your craft. It does not matter how many awards you have won for your work. It does not matter that your peers throw rose petals at your feet as you pass. What matters is delivering 100% customer satisfaction. And 100% customer satisfaction comes from achieving your client’s goals. I don’t care how mind-blowingly awesome your work is, if it doesn’t deliver the agreed upon business outcomes for your customer, you have failed.
Do not commit to a timeline
A software project is a collaboration between you and your client. If the client takes three weeks to approve a layout, the schedule is going to slide. If your project contact goes on vacation, the schedule is going to slide. You can commit to being responsive and timely, and you can say something like “this project will take at least three months to complete”, but you are not in control of the schedule. Best to be clear about this reality and set expectations appropriately before your get started.
Questions? Shoot me an email.