Everybody knows the feeling when you write a big check.
The lump in your throat.
The queasiness in the pit of your stomach.
You know it’s the right decision (at least, you think you know)—but the investment is so significant that you still feel uncomfortable.
This is true for many of us when we make a big-ticket personal purchase, and it’s true for decision makers who are making purchases for their business.
One of the major line items for many businesses is software.
An enterprise-level project can cost tens of thousands of dollars for small business and $500,000 or more for a large corporation. Whether you’re signing a contract for an ERP with significant seat-license fees or committing to a major custom software build, software can take a chunk out of your cash flow.
This investment had better work, or else your company’s bottom line will suffer—which means you could take the fall for a failed investment. And the stats say that major software investments fail far more frequently than they succeed.
If your neck is on the line for the software investment, these stats should really put a lump in your throat.
Thankfully, we can put that aside, because there is good news to focus on. There are proven, cost-effective ways to make sure the software investment you’ve decided to make is the right fit. These are the kinds of tools that will end up with you getting praises (and hopefully raises) instead of sternly worded performance reviews with your board and C-level executive suite.
Here’s the secret: Gaining confidence.
You should have confidence in a software solution before you cut a big check to build it or buy it. If you’re looking for an off-the-shelf solution, you need to be confident that the software product offering will work while also matching your existing processes well.
If you’re looking for custom software, your confidence needs to be in your software development partner—whether it’s an internal person or team, an offshore freelancer, or an established firm.
So how do you gain this confidence that what you’re buying—and that who you’re buying from—is the right fit? Here are three indispensable filters to use before writing a big check to a software development partner, freelance developer, or SaaS company:
One of the reasons software investments go bust is that companies don’t pay enough attention to fit. They go through laundry lists of features and functionality, but pay no attention to how the solution will be built and implemented.
Why is this a big deal? Because the process impacts your ability to use and customize the system.
Buying enterprise-level software is not transactional. You will be in a long-term relationship with your vendor. You will need support and changes and maintenance and hosting over the entire life of your system. You’ll likely be talking to your software partner at least monthly and perhaps weekly for years to come. You need the right fit to make this process smooth so you can avoid frustration and unexpected costs during and after the launch of your software.
How do you define fit?
Fit begins in the planning of your project—identifying a shared understanding of what the software needs to do, and how users will engage with it. This is an essential step in the success of any project.
But fit is more than an understanding of what is going to be built. It’s also about how. This process — from project management to regular updates to ongoing strategy and support to payment terms—will determine how well the software works for your business in the months and years after launch.
How do you test fit?
Start with a trial period or a test engagement. If you’re exploring an off-the-shelf software solution, see if you can get a 14-day or 30-day trial. Most companies offer something of the sort, believing that once you’ll start using your software, you’ll love it. If that’s the case, great—you’ve found your solution. But if you don’t love it, you’ll have great information that came at a no cost and a small time investment. That will help you focus your search further and eventually lead you to a better solution.
If you’re working with a software developer or software development firm, try a small engagement first. Work with the company or the individual on a small project, and see if the project management process fits the way your business needs to work. Does it account for rounds of revisions, change orders, and the like in a way that makes sense? Will you get what you need in a timely manner at a reasonable cost?
Vendors can promise you just about anything. Actually testing the fit will let you know what their promises are actually worth to your business. Knowing this will give you far more security about writing a six-figure check.
Not every software developer is the same. You want a final solution with clean code that can be easily updated as version upgrades are released. You want code that makes sense to other developers so that it’s easy to update and upgrade, even if the original developer who built it is no longer in the picture.
This kind of technical expertise is vital, and even if you’re a COO or CEO who isn’t proficient in Python or any other programming language, you need to be sure about competency if you’re going to have confidence.
Bad code will come back to haunt you. For example, if you have duplicate code or unused code, your software will take longer to fix and maintain. We are currently working with a client that has poorly constructed code that needs a significant overhaul because it did not follow best practices and therefore must be updated in multiple places instead of just one to implement a simple UX change.
How do you define expertise?
Technical expertise is hard to define if you’re not a developer, but here are some good questions to ask a development firm:
- What framework and language do you typically use? Does that match the needs of this particular project?
- How do you use unit tests? What percent of your code is typically covered?
- What source control tools do you use?
- How do you document development specifications?
- How do you track known bugs?
These questions will help you identify how competent a developer or firm is.
If you’re dealing with a SaaS provider, do an online search about known bugs in the software. See what people are saying in forums or on Reddit about how the vendor deals with them. This will give you a good idea of the product’s technical quality.
How do you test expertise?
For a SaaS solution, you can get a feel for expertise by researching how many companies are using a software, and by reading reviews about their experiences. This will give you a good feel for how well built the solution is. If you want to go a step further, talk to a few companies using the software to find out about how well the vendor deals with bugs they report or changes they request.
For a custom software developer or firm, interviews can also be helpful—but you can go further, especially if you’re a CTO, CIO, or IT professional. If your potential vendor has a GitHub repo, check out what they’ve built and how the software development community reacts to it. (Here’s Worthwhile’s, in case you’re curious.) If you’re rebuilding or enhancing an existing solution, you can also hire a potential vendor to review your current code and make recommendations. This will show you how the developer or firm approaches development, so you can tell if the things that are important to your business are also important to them.
If user engagement is vital to your software success, you can choose to do a user interface and user experience (UI/UX) review instead of a code review. You’ll be looking for the same thing—how your vendor thinks, what the level of expertise is, and how well their recommendations match what your business needs.
It’s not enough for your software you build to be technically excellent and built with a perfect process. Ultimately, it has to deliver value to your business. This value could look like:
- New customers
- Increased efficiency
- Lowered expenses
A good business should be answering the value question while considering a software project in order to come up with a budget. Your software partner or software vendor should work with you to make sure the value calculation benefits you.
How do you define value?
The value definition has two parts (obviously): costs and benefits.
In terms of cost, you need to think beyond the initial check you write. We encourage customers to think about a three-year term, and consider costs like:
- Seat licenses
- Version updates
- Feature upgrades
In terms of benefits, you can identify what kind of ROI you hope to get out your project. A good software partner can help you think through benefits so your calculations are thorough.
How do you test value?
One way to test value, especially if you’re working with an experienced developer or with a custom software development firm, is to begin with a small engagement designed to evaluate your software stack and its role in your business. Taking this step may help to unearth new kinds of ROI you haven’t yet seen, and may also help you prioritize what functions software can successfully do in your business.
You’ll want to test any value claims that a company makes about its product with what you know about your business. Marketing claims may not actually bear out in your business, but they can help you see possibilities software offers so you can complete an accurate evaluation on your own.
Your software stack is an incredibly powerful and valuable part of your business. So it should be no surprise that it can come with a high price tag.
But if you can gain confidence in the fit, expertise, and value your software development partner will provide, then you can say with confidence that paying six figures—or even a quarter million or half million dollars—is worth it. When the ROI is in place, then this can actually become the best money your business can spend.