Most developers start as salaried employees, slogging
through code and loving it because they never imagined a job could be
challenging, educational, and downright fun. Where else can you learn
new things every day, play around with computers, and get paid for it?
Aside from working at Best Buy.
A certain percentage of developers become unhappy with
salaried development over time (typically it’s shortly after they’re
asked to manage people, or maintain legacy code), and they dream of
breaking out of the cube walls and running their own show. Some choose
consulting, but many more inevitably decide to build a software product.
“After all,” they think “you code it up and sell it a thousand times –
it’s like printing your own money! I build apps all the time, how hard
could it be to launch a product?”
Against All Odds
And most often the developer who chooses to become a consultant (whether
as a freelancer or working for a company), does okay. She doesn’t have a
ton of risk and she gets paid for the hours she works, so as long as
she has consulting gigs she can live high on the hog
But developers who make the leap to develop a product are another story. Building a product involves a
large up-front time investment,
and as a result is far riskier than becoming a consultant because you
have to wait months to find out if your effort will generate revenue. In
addition, growing a product to the point of providing substantial
income is a long, arduous road.
But let’s say, for the sake of argument, that you spend 6 months of
your spare time and you now own a web-based car key locator that sells
100 copies per month at $25 a pop. At long last, after months of working
nights and weekends, spending every waking moment poring over your
code, marketing, selling, and burning the midnight oil, you’re living
the dream of a MicroISV.
Except for one thing.
The Inmates are Running the Asylum
In our completely un-contrived scenario you’re now making $2500/month
from your product, but since you make $60k as a salaried developer
you’re not going to move back in with your parents so you can quit your
day job. So you work 8-10 hours during the day writing code for someone
else, and come home each night to a slow but steady stream of support
emails. And the worst part is that if you’ve built your software right
the majority of the issues will not be problems with your product, but
degraded OS installations, crazy configurations, a customer who doesn’t
know how to double-click, etc…
The next step is to figure out, between the 5-10 hours per week
you’re spending on support, and the 40-50 hours per week you spend at
work, how you’re going to find time to add new features. And the kicker
is that support burden actually worsens with time because your customer
base grows. After 1 month you have 100 customers with potential
problems, after a year, 1,200.
And yes, the person you decided to sell to even though they
complained about the high price ($25) and then couldn’t get it installed
on their Win95 machine so you spent 3 hours on the phone with them and
finally got it working only through an act of ritual sacrifice is still
hanging around, emailing you weekly wondering when the next release is
coming out with his feature requests included (requests that not a
single one of your other 1199 customers have conceived of).
But you persevere, and manage to slog your way through the incoming support requests and get started on new features.
What you find is that ongoing development, as with any legacy system,
is much slower than green field development. You’re now tied to legacy
code and design decisions, and you soon realize this isn’t what you
signed up for when you had that brilliant flash of insight that people
need web-based help locating their keys.
It’s about this time that support emails start going unanswered,
releases stop, and the product withers on the vine. It may wind up for
sale on
SitePoint, or it may be relegated to the bone yard of failed software products.
The Upside
The flip side to all of this is what you’ve already heard on the blogs of successful product developers.
Once a product hits critical mass you’ve conquered the hardest part of the equation. After that the
exponential leverage of software products
kicks in and you can live large on your empire of web-based
unlocking-device locator applications. It’s a recurring revenue stream
that can grow far beyond what you would make as a consultant, all the
while creating
balance sheet value meaning one day you can sell it for stacks of proverbial cash and retire.
This is unlike your consultant buddy, whose consulting firm is worth
about 42 cents (he had an unused stamp on his desk) once he decides to
retire.
But there is a
dip
before you get to this place of exponential leverage and proverbial
cash. A big dip. And if you can get through it once, it’s more likely
that you’ll be able to get through it with your next product. And the
one after that.
Once you make it to the other side, you’ve learned what it
takes to launch and maintain a product, and next time you will have a
monumentally better chance of success because you are now a more savvy
software entrepreneur.
Congratulations! Go buy yourself a nice bottle of wine and sit back, relax…and enjoy answering your support emails.
here to share what I've learned in my 11 years as a self-funded startup founder.
Luckily several thousand people have decided to stick around and join the conversation.
Comments
Post a Comment