How on earth can your software project survive without strategy?

Lionel Aimerie
6 min readMay 16, 2024

--

A team of people in suits and construction headgear facing a cathedral

The decision to invest in software can be a significant moment for a company. Whether it’s a brand new application, a migration forced by licensing changes, or a legacy system struggling on modern devices, the need for skilled engineers and a strategic approach become paramount to help stay technologically relevant and perhaps more vitally, to keep your business operations afloat.

Hence, before diving headfirst into outsourcing, ponder this: there’s a misconception in tech and it is that software is a commodity, a set of instructions that are simply coded and documented. Frankly, that’s like mistaking the blueprint of a cathedral for the actual cathedral which is, in fact, the accumulated knowledge of the builders, the vision of the architects, and the masons who’ve honed their craft over years.

This analogy has limits though. Cathedrals are built once, designed to last forever, and are threatened only by entropy. Software, on the other hand, is a living organism that thrives on adaptation. Complexified further by the exponential changes in tech, it needs to respond to security updates, library deprecation, and the ever-evolving user experience landscape.

At this point, it seems rudimentary to state that outsourcing software development requires careful consideration. You pay a handsome fee for a team to build your product, yet their loyalty lies with the next project. Your brainchild seems destined to become an orphan, neglected over months, years until it crumbles under its own weight. The only option then is to rebuild from scratch — a costly and time-consuming endeavor.

What I am advocating is independence, continuity and complete control in the destiny of your software. Instead of outsourcing, the safer, strategic bet lies in building your very own development team. This keeps the knowledge around your project in-house, ensuring its continued health and relevance. This is, of course, a significant financial commitment. And wouldn’t the backbone of your business be worth the long term investment?

Building an Antifragile Team

For true resilience, knowledge redundancy is key. An “antifragile” team ensures that project knowledge remains accessible when any team member leaves. This requires some proper planning to avoid single points of failure. It certainly wouldn’t hurt to actively motivate and foster passion within the team. Ownership is crucial.

Here’s the real kicker. Total ownership of a software solution isn’t simply a handshake deal between two parties — it’s a collaboration that starts with strong leadership. Everyone, from top to bottom, must understand the application’s purpose and its importance to you. This vision needs clear, concise communication across all levels. If someone doesn’t “get it”, everyone down the line will be lost. You’ll end up with a team of headless chickens doing the job, uninspired and clueless, and I hate to break it to you but it’s what you are guaranteed to get from an outsourced team of developers.

My Experience: A Cautionary Tale

We’ve seen this play out too often. In my numerous roles as CTO of software development companies and in-house CIO consultant, I’ve observed the making of many applications based on both the visions of clients and stakeholders. In whichever scenario, the sales pitch always promised to deliver quality turnkey solutions. In reality, solutions do get delivered, well, ahem, in varying degrees of quality but once the initial features are complete, the focus quickly shifts to refinement and maintenance but the client is always under the impression that what they have is a “finished” product. Psst, I’ll let you in on an industry secret. If your software were a cathedral, all you have now is the foundation. Something that you sure hope is strong enough to build upon over time.

And before you can even think about maintenance, let alone enhancements, new projects come around, and these outsourced senior staff gravitate towards more “interesting” challenges. The original project ends up cobbled together by a rushed team of junior developers. Long-term robustness suffers as features are duct-taped together and unnecessarily overengineered.

This may be a stunning revelation to some and especially to those embarking on the path of building a software for the first time. These aren’t dirty secrets, simply a sad fact that project delivery often marks the beginning of the real struggle. Yet, many clients, satisfied with their “cathedral,” neglect proper follow-up and maintenance, oblivious to the fact that they possess something far more organic — a living system that demands ongoing care and support.

Frankly, this all just feels like a hit and run scenario. Service providers rarely emphasize the importance of post-delivery maintenance upfront. Why would they? Scaring a potential client off with no end in sight. Truth be told, we used to sell it as an afterthought. A small monthly fee for a day’s work from an average skilled developer. This only benefited us if minimal maintenance was required. Frameworks and operating systems were left neglected and only patched up when it became absolutely necessary. That simply meant that the next substantial upgrade would generally amount to a good headache.

This approach is obviously inadequate. Proper software maintenance requires developers who understand the application, ideally someone from the original team with a deep understanding of the business vision notwithstanding the added complexity with multi-component solutions like mobile apps interacting with cloud platforms. How can a mere thousand dollars a month guarantee this level of expertise?

The True Cost of Ownership

Here’s a reality check in the Singapore context. For a non-trivial application, say an e-commerce platform with integrations like payments, authentication, and marketing tools, the initial development cost can range from S$100,000 to S$250,000. The first year’s maintenance would probably focus on feature adjustments and bug fixes, and cost around 50% of that initial cost. The subsequent years usually see a drop to 25%. All in all, this translates to an estimated yearly cost of S$30,000 to S$65,000 in the long run to keep this specific application up and running. Of course, your mileage may vary.

Building Your Own Team: A Different Path

Outsourced development comes with significant caveats. For anything beyond a proof-of-concept, building your own team is a seriously better option, but I won’t sugarcoat it. Building a team isn’t easy because the world of information technology has its own rules and culture. You don’t need to be an insider but when building your application, you’ll need your own “priests” (remember our cathedral analogy?). More aptly, you’ll need a technical leader, the keystone of your project.

How Can Movosoft Help You?

We want you and your business to avoid all the above-mentioned pitfalls and have centered our energy and focus on technological strategy consulting. Over the years, we’ve helped businesses build teams and define projects that align with their specific needs. We then coached these teams, fostering productive habits and instilled a sense of rhythm. At times, I even stay on as an ongoing consultant, offering support as and when it is needed.

This approach ensures the domain knowledge stays within the team. As an outsider, I bring a broader, more objective perspective without being bogged down by the daily grind. This allows me to identify dysfunctional patterns, poor data models, or the superfluous adoption of trendy shortcuts. I act as a value-adding teammate, leveraging the varied experience of my Movosoft experts and bringing to the table the crucial questions you might miss.

At Movosoft, we apply these same concepts in our work. Over the years, I’ve built up a global network of talented minds in various domains who, like me, prize simplicity and robustness. Together, we cut to the chase and work on specific problems, each contributing their expertise. It’s a collaborative effort, a team of passionate builders focused on one true north with every intention to craft resilient software that solves real problems.

Yes, we’re rewriting the tech narrative, building enduring software solutions, not fleeting mirages. Let’s focus on crafting tools and solutions that will last.

A button that calls to action: “Talk About Your Project Today”

--

--