Rewind 15 years, my startup client and I are on a conference call, staring at each other dumbfounded.
Dumbfounded this very expensive, highly-regarded, software development firm built something so obviously unusable.
That they built it wrong and still charged my client - that was annoying.
That nobody on their side caught it and fixed it, or even acknowledged it, prior to this presentation - that was the absolutely baffling part.
“They want another $10K to fix it”, my client defeatedly confides. I can tell from his tone this wasn’t the first time the dev firm shook him down for funds beyond the original estimate. “We can’t launch this. I can’t work with them any more. What if I gave you the $10K and we figure out what can be salvaged.”
A seed-stage startup founder I talked with two-weeks ago: “The dev firm gave us an estimate of $500K - I’m not even sure what they were estimating against, yes I dropped them.”
After more than a quarter century in creative and technology work, I’ve hear so many horror stories like the ones above, I’m surprised when an engagement with a dev shop is even a moderate success.
All too often, a startup founder, attempting to manifest the ultimate, fullest vision their head the fastest, scouts out a professional software development shop, or other professional creative technology firm.
This is always a bad idea - as dev shops also want to manifest your ultimate, fullest, vision. But that price tag is so often out of reach (even moreso with Section 174 in effect)
For starters, if you’re not able to commit a minimum of $100K for custom software, just put down the phone. It’s not just about having the funding, it’s about being able to sufficiently direct the team to build cost-effectively and understand the business impacts of the tradeoffs along the way, and have clear confidence this will substantially drive sales.
Software teams are like lawyers - they will ask a ton of questions you haven’t yet considered and they’ll bill you hourly to find answers. Which means - not having an answer is the most expensive answer.
This made for some awkwardness in one incubator I was involved in. We had teams of enthusiastic software engineers chomping at the bit to use their talents to help us turn ideas into product. Unfortunately, the moment they were engaged, a meter started running - to the tune of multiple hundreds of dollars and hour. This inherently locked us into a direction, prematurely. My goal was to hold off engaging them until we had strong confidence in the customer needs, my best defense was; “software is automation, we don’t know what we’re automating yet.”
Software development used to require professional-level programming expertise for almost any change. As making even the most trivial change (e.g. a label on a button) was expensive and error-prone. This meant highly detailed specification documents and wireframes, and pixel perfect UI mockups were the norm. Let’s get every detail completely planned out because this is so labor-intensive.
Thankfully, we haven’t lived in that world for nearly 20 years. Since the wide-spread adoption of template-based software frameworks like WordPress and Ruby on Rails (there are many, many more, these are just the ones I still go back to).
WordPress was a catalyst for me to leave the world of highly-detailed UX documentation and never look back. WordPress showed me a world where everything was templated and changes immediately cascaded across the entire environment, and these changes could be made in moments. Software no longer needed to be built from scratch, but the plugin & theme architecture of WordPress meant we could build only the most unique parts of our application - leveraging the built-in authentication, content management, and API hooks. Stuff we needed, but didn’t need to build ourselves. Suddenly creating and maintaining software was fast and non-technical.
Today, the options for non-technical founders have continued to flourish.
Unfortunately, too many founders don’t fully explore these no-code, low-code options and instead shop around for very expensive custom software dev shops - rather than critically looking at what’s absolutely needed to grow their business (**cough** sales **cough**).
I was once approached by a founder to build a Ruby on Rails ecommerce site for tea.
Considering Shopify existed at the time, it felt like an overly-heavy choice to me, but it was absolutely do able. They blinked when I shared a high-level estimate.
The volume of tea he needed to sell to pay off these custom dev fees, was a magnitude higher than he was forecasting.
Product - Sales = Waste
Investing in a custom software development without the sales volume to support it means time, dollars, and effort are being wasted.
About a year later, I met with him again and asked if he made progress on the site.
“Yep, it’s launched. I ended up teaching myself Rails.”
No, you don’t need to become your own the technical co-founder, but it is one potential point on the spectrum, and one well within reach.
YCombinator argues it is better to find a technical co-founder than engage a dev firm or go without.
The goal here is to find a technical co-founder that’s as obsessed with solving this particular problem as you are. Because of this obsession, they’ll will work entirely for equity and a deferred salary.
It’s not just the technical expertise they bring, there’s also the partnership, the ability to debate trade-offs in a low-risk manner, with someone that’s not always on the clock.
Software development shops, when managed well, will create perfection for you.
Your best customers are struggling, and they don’t need perfect, they just need improvement.
Improvement is a far lower bar, and one you can readily sell today, tomorrow, and next week.
Until those sales have accumulated a few $100K, your product simply don’t need the polish, optimizations, and attention to detail an experienced team of professionals will bring. Nor will you know what to automate.
If you’re struggling to figure out an alternative path - give me a call, I’ve been told one of my superpowers is super scrappy prototypes.