Perhaps the only thing harder than establishing an independent software development business is figuring out how to make that business grow.
After all, that client or two you had in hand to springboard yourself into being your own boss can sustain your business for only so long. Then the overhead of maintaining past client projects, filing paperwork, and chasing down unpaid invoices soon has you spinning your wheels with little idea of how to move forward.
Here, we take a look at five ways to bring more business (and revenue) in through the door. Each offers a different path to suit your business style. Read on -- and bolster that bottom line.
Strategy Zero: Do nothing
Strategy Zero is the default or status quo option that many independent developers employ: Do nothing, and see what happens.
As a business strategy, it is neither inherently good nor inherently bad, and it's often expressed as “follow your passions,” “follow the market,” or “go with the flow.”
As you can guess, Strategy Zero is a very passive approach to running a business, quite common among freelancers and small ISVs. Often it can lead to the more proactive form of growing yourself instead of growing your business, as many of the practitioners of the “follow your passions” approach to business end up giving up freelancing in favor of finding an employer that appreciates their talents, especially if they find the effort necessary to build a business distracting them from a true position of assembling solutions from technology .
“To build your own business you have to spend energy building your business, and I preferred to spend it on my professional work,” says Martin Fowler, chief scientist at ThoughtWorks. “So that led me to being either a sole independent or later an employee.”
This is a valid personal strategy. Martin Fowler found a home, as did Kent Beck (at Facebook). Both seem to be happy; you might be, too. Consider that if you are unhappy in your current job, the cause might be the company that keeps you!
Since Strategy Zero isn't technically growing your business (except perhaps accidentally), let's look at the more traditional business-growth strategies and example tactics for each.
Strategy One: Increase market penetration
Strategy One is the simplest option in growing your independent software business: Sell more of what you already have to existing customers.
The simplest tactic for this strategy is to raise your prices. You get better at what you do every year, so why not charge more for it? There are several ways to justify (aka sell) higher prices to clients.
First, you can limit your availability by taking on only a few select clients, ones where you can provide the most value. Exclusivity and reputation can increase income without having to increase your business overhead. This is most appropriate for a truly independent developer -- aka the Brand of One -- but it can work for any business that is services-oriented, rather than product-oriented.
The second way is to elevate your reputation. This method often results in higher revenue because clients will pay more for a higher perception of quality, knowledge, and service. For example, you can write books, garner publicity, publish articles at reputable IT outlets, take on higher-profile clients, present at conferences, create conferences, and so on, all of which raise awareness of your services and expertise.
Another way to sell more of what you already have to your existing client base is to change your pricing structure. For example, you can change pricing tiers to encourage greater and/or more predictable consumption, a practice that might include discounts for longer-term commitments, increased minimum commitment/order sizes, and longer termination-notice periods.
You can also institute short-term or "rush" pricing to make smaller projects more profitable and to compensate for schedule disruptions.
You can shift to value-based pricing, where the price for your services is proportional to the value provided to the customer, instead of by time-and-materials-plus-margin. This is especially appropriate for specialized services that provide high payoffs to the client, not for commodity development services.
Another key is to always keep in mind ways to increase repeat business. This could mean shortening cycle/iteration times (and scoping projects appropriately), making more frequent enhancements to your projects or products, and actively looking for and asking about additional ways to help existing customers.
Note: You should always be pursuing this last tactic regardless of your overall growth strategy.
Strategy Two: New markets
Strategy Two is a little harder, a little riskier, and a lot more work, but could ultimately be more rewarding: Sell what you already have, but to new customers.
Finding new customers is challenging, but there are several tactics for growing your client roster by tapping new markets. The first is to analyze new markets or regions with an eye toward finding customers that have needs similar to those of your existing clients. You can cross-sell to new markets by asking current customers for referrals outside their industry. Similar analysis can help you uncover ways to repurpose your existing services/products to fulfill the needs of another market.
You can also study industry surveys, trends, and news to see if a new market is leaning in the direction of your existing services/products, then partner with companies already established in those markets, to help introduce your products/services to their customers. This can best be achieved by finding a company whose services or products complement yours. Thus, you can work together to embed your services/products into each other’s deals or find ways to combined your services to add value that neither you nor the partner company can provide.
And of course, you can always give away your services/products on a limited basis in a new market to see how people use what you have to offer. Innovative uses of your services/products may arise and you can then capitalize on them.
Strategy Three: New products/services
Strategy Three is likewise more difficult: Create something new and sell it to existing customers.
Strategy Three requires you to understand what needs your existing customers may have that you can fill. This means asking specific questions, listening carefully, collecting war stories and wish lists, and examining them for patterns and trends. While you should be doing this all the time anyway (as part of customer support and nurturing), there are times when a concerted effort in this area is required to jump-start a fresh line of business.
Every successful business product or service fulfills a need. Sometimes customers will jump up and tell you about their needs ("Hey can you write me a program to transfer this FTP data file into Salesforce?"); other times they will not. Resist the temptation to short-cut this process, and keep in mind that customers who help you in this endeavor are graciously donating their time and knowledge to your immediate benefit, not theirs -- so keep your surveys short, interactions simple, and thank-yous tangible and profuse.
While this strategy is similar to starting a new business, it has one distinct advantage that new businesses do not have: existing customers to talk to.
Strategy Four: New products/services for new markets
Strategy Four is the most difficult approach to business growth: Create something new and sell it to new customers. This is the "blank slate" strategy, and it is exactly the situation you have when you start a new business: what to sell, and to whom?
While Strategy Four may appear to be a combination of strategies Two (new markets) and Three (new products/services), it's more complicated. It’s an equation with two unknowns. Strategy Two is easier because you already have products/services to sell; you only need to find new people to sell them to. Strategy Three is easier because you already have existing customers; you simply need to find new products/services that they need.
Strategy Four is hard. While most of the tactics from Strategies Two and Three may be applied here, they tend to be “shots in the dark” unless you already have a clear picture of who you are, what you are good at, and whom you want to serve. Practical techniques for systematic exploration such as Business Canvas and Lean Startup can help immensely, but you have to be willing to discard great ideas to get to the ones that actually work.
The place to start is reflective: Who are you, and what do you really want? Once you know those two things, you can begin to explore the market: Who are your customers, and what do they really want? When you find a harmonious solution, grow along that path. But keep looking for other paths, and don't be a bottleneck!
- Download: The professional programmer's business survival guide
- Download: 29 tips for succeeding as an independent developer
- Download: InfoWorld's quick guide to Linux admin essentials
- 14 nightmare clients -- and how to defang them
- The 10 commandments of IT consulting success
- 13 insider tips for acing your job interview
- 10 hard-earned lessons of a lifetime in IT
- The 14 mistakes that will kill your independent development shop
- 15 tips for success as an independent software developer
- Boom or bust: The lowdown on code academies
- Fatal distraction: 7 IT mistakes that will get you fired
- The best of the worst: The dirty IT jobs hall of fame
- 15 workplace barriers to better code
- Bloopers, breakdowns, and bad jobs: The IT chronicles