Modularis

Three Timeless Principles of Well-Engineered Enterprise Software

SHARE THIS

 

With the recent Big Tech layoffs and rising uncertainty in the tech economy, many software company CEOs, investors, and R&D teams are feeling a heightened sense of pressure and frustration. Expectations are high, competition is tight, and many software teams are trying to do more with less

It’s time to take a step back and look at the big picture of what it takes for software companies to succeed in today’s environment. It’s time to get back to first principles. If your company wants to turn software R&D into a revenue-driving engine, your leadership team needs a strategic focus on how to create more successful software products–it’s about delivering more value, not writing more code. 

Four universal outcomes are necessary for a software company to be successful with a software product or platform: 

  1. Stability: Software products need to be rock-solid and stable; if the product isn’t stable, you can’t keep existing customers or land new ones. Plus, you’ll burn all your resources fighting fires. 
  2. Scalability: Once the product is stable, your sales team needs to be able to provision new customers and light-up users without affecting stability. 
  3. Profitability: Operating costs, both in terms of infrastructure and ongoing maintenance costs must be controlled and optimized. After all, if running your product isn’t profitable, who cares if it’s stable and scalable? 
  4. Serviceability: Your company needs to keep the product running and relevant in the market for years. To do this, it must be easy to enhance and extend it without sacrificing stability, scalability, or profitability. If care isn’t taken to ensure serviceability, you’ll inevitably and unnecessarily be trying to rewrite it in a few short years. 

So how can your software company get to this point, where you’re achieving all four of these outcomes? How can you make sure that your company is successful not just in software development, but in engineering, delivering, and selling profitable, successful, and long-lived software products? 

You need to invest in and solidify the three pillars of well-engineered software: platform engineering strategy, product management strategy, and alignment of your business and technology roadmaps. 

  1. Platform Engineering Strategy

If you ask most software company CEOs, “How strong is your platform engineering strategy and product engineering strategy?” Too many would say “I don’t know,” or “Not very good.” 

Platform engineering strategy is all about facilitating the execution of software projects; it’s where engineering and development fit together. Ask yourself: 

  • How well are you executing on a platform or product design? 
  • How well can you deliver software products that are built right, built fast, and built to last? 
  • How efficient, effective, and productive is your development team at building your software products, features, or components? 

Often there’s an attitude among software CEOs and investors of “I’m the idea person; I have developers, I give them an idea, and I let them figure out how to build it.” But this always results in software development turning into a black hole – you keep putting time and money into it, and are never sure when if ever you will get it back out. 

  1. Product Management Strategy 

Unfortunately, many software companies’ product management strategies may not even exist. Product management has to inform the platform engineering side what software products, features, or components need to be built, and in which quarter, to meet the needs of the customers and market and drive growth. 

Even if you’re powerful at platform engineering and can build anything you want on time, on budget, and with high quality – if you’re not building the right things to drive your growth, what’s the point? 

What’s your strategy for figuring it out and managing it? 

For your company to get a better handle on product management, you need to be able to answer the following questions: 

  • Who is the owner of each product? This is the individual responsible for figuring out exactly what a product needs to do to drive growth and keep customers happy.
  • How well does your portfolio of products meet the needs of the market? What’s the gap between you and your competitors?
  • What is the mix in the product portfolio of legacy products vs. modern products, and how should we package them to leverage strengths and mitigate weaknesses?
  • What gaps in our product offering could be addressed by acquiring other software companies? 

This is all part of a rock-solid product management strategy. Without a handle on this, even if your engineering and development are perfect, you’ll gain no traction and you’ll burn cash. This is about the fundamental alignment of your technology efforts with the needs of your business. 

  1. Business Roadmap and Technology Roadmap 

Your company needs total alignment of your business roadmap and technology roadmap. Ask yourself: 

  • How well-defined are your business milestones over the next 12-24 months?
  • How well-defined are your technology milestones over the same period? 
  • Are specific tech milestones attached to specific business milestones?
  • How do you communicate expectations to your product management and engineering teams for component, feature, and product deliverables?
  • How much time and money will the company need to invest in software R&D to meet your goals? How confident are you that both risk and ROI will be acceptable and you won’t have to “go back to the well” later?

You already align your sales, marketing, finance, customer service, and professional services teams around your core rocks/goals. But what about R&D? How well and thoughtfully integrated are your R&D efforts with everything else? If R&D fails or underperforms, that impacts the success of every team at the table. 

A technology roadmap is the quickest way to answer these questions and build a plan for all to follow. Bring team leads from all departments and software development together to create a pragmatic and achievable 12-24 month roadmap that identifies technical milestones that must be achieved each quarter to meet business milestones agreed upon by the rest of the organization. 

Everyone should have a say when defining and making commitments on this roadmap. Remember this is a living document and a core communication and accountability tool for stakeholders to execute your plan. 

Think Like an Investor: Minimize Risk, Maximize Return 

Remember: every new software product you create, and every innovative new software feature you deploy is an investment of time, talent, resources, and capital. Your company needs a return on that investment. 

To earn the returns you’re after, your company needs developers to create products that have a high rate of return (profitable and scalable) while minimizing risk (stable and serviceable).  

The only way to deliver minimum risk and maximum return is to gain mastery in platform engineering, product management, and alignment of your business goals with your technology choices. 

Once you have addressed these three pillars, your software developers will begin to think like engineers, building software products and components around the four universal outcomes of software engineering: stability, scalability, profitability, and serviceability.

Or as we say, software that’s built right, built fast, and built to last. 

Want to Improve Your Software ROI? Boost Your Innovation Fraction

There is no better measure of how good your company is in developing software than your innovation fraction. 

At many companies, the time spent on innovation, or the creation of new products and features that add value for your customer, is only 20% of total development time. That means only 20% of your software R&D investment is going to yield a return, and 80% is earmarked for maintenance. 

If only 20 cents of every dollar is yielding strategic results and 80 cents is keeping the lights on, this is going to limit your company’s growth and valuation. 

Successful software product development depends on flipping that fraction and spending 80% of your development time on value creation while knocking maintenance down to 20%. 

What’s your Innovation Fraction? Schedule a 1:1 with our CEO, A.J. Singh to see how this one calculation can change the entire software development process, and get our tool for free!