When was the last time you:
- Wanted a piece of furniture, and thought, “I will learn carpentry, and build a desk!”
- Wanted to fix your car, and thought, “I’ll become a mechanic!”
- Wanted a new dress or shirt, and thought, “I am going to learn to sew!”
Fifty or more years ago, these were more common thoughts. People took up crafts and pursued skills in order to do it themselves. Today’s car engine is one big sealed-block of electronic software-driven steel… if I had a wrench in my hand I wouldn’t know where to begin. The closest I may come to building a desk is putting one together that’s been precut and needs assembly. I once had a neighbor who repaired Singer sewing machines… it is a good thing he retired early. Continual progress makes things cheaper and more readily available so you don’t need to do-it-yourself, and this is a good thing!
While it seems quaint now, it used to be expensive to build an app and start a company around it. Hardware was expensive. Software was expensive. Storage was expensive. Engineers, however, were relatively cheap.
However, now the expensive part of custom software development is the engineer! Salaries were around $28,000 in the US in 1985, now they are around $90,000 and rising. A software developer inside your company has become obsolete. If you plan on building a company around your software idea the most expensive route is to hire and manage your own software developers.
When I hear of a small business that built a company around its own software team, I want to know everything about them – I get a rush of nostalgic joy. I had exciting times in those environments in the late 1990’s, but they are growing rare because it doesn’t make good business sense anymore.
Cultural values are changing too and employees inside companies want more. Let’s imagine you get lucky and build a significant part of your company around a rockstar coder. I know from personal experience that good developers love what they do, and when you love what you do, you need challenge. Often a good developer will leave your company despite excellent raises because he’s bored. Why? When your business gets better, a skilled “creator” want new challenges, not “maintenance”.
Today, if you have a great idea for a software product, you need to either be an engineer or find one. Tomorrow, that billion-dollar startup acquisition might not need an engineer at all.
Don’t reinvent the wheel. Concentrate on your business, and don’t get stuck working in it.