Why Custom Software
It typically starts with an inefficient business process - hand written time cards, data manually manipulated in spreadsheets, inventory being tracked on paper and orders via fax (Yikes!). At some point someone gets to their breaking point and shouts something like, “this is ridiculous in this day in age, there has got to be a better way to do this!” (often while banging their head on a desk or fax machine).
The most dangerous phrase in the language is, "We've always done it this way."
- Grace Hopper, Computer Programming Pioneer
Most times this person is ignored, because... well... change is hard. Other times those statements lead to your company looking for a better way. That path can often lead to considering a custom software solution or off-the-shelf software. There is a time and place for both. This post is intended to clarify some of the mystique around custom solutions, and give some guidance on if it is a fit for you! Hope it helps.
Let’s start at the beginning . . . what do we mean by “Custom Software”? - Custom software development is the process of designing, developing, deploying and maintaining software for a specific set of users, functions or organizations. In contrast to commercial off-the-shelf software (COTS), custom software development typically aims at a defined set of requirements or business processes. COTS targets a broad set of requirements, allowing it to be packaged and commercially marketed and distributed.
But I’ve heard . . .
- "It’s too expensive”: In the past couple of years the cost of custom software has become very competitive. When you partner with an experienced shop they are often able to use code and processes that have already been developed, as well as take advantage of increased automation, both of which help reduce the cost. With a COTS solution the total cost of ownership can be higher because of ongoing “per user” fees that increase as you grow, implementation costs, and the need to pay for functionality that may never be used by your organization.
- "It’s slow to build and complex to deploy”: Most custom software actually comes together quicker than you might think. This is because we leverage tools and platforms that already exist and are proven (frameworks, UI kits, design patterns, etc.). Also, because custom solutions are tailored to your business process and workflow they are typically operationalized faster than a COTS solution that requires training, and potentially altering how your organization works.
- "It can be buggy and hard to maintain”: Your custom software partner should have a plan in place to support and maintain the software they have built. This typically is in the form of a monthly cadence of monitoring for bugs, security updates and feature requests. It’s also important to stay on top of changes to any supporting tools or integrations, so on-going testing of these should be part of cadence. Of course, keep in mind this process is no different from a COTS solution, only that the on-going maintenance costs are much higher than custom solutions!
So how do I know if it’s for me?
It could be for you if . . .
You have a specific business requirement, process, workflow you want to automate
If there is a COTS option, it either has too many features (too expensive) or would force you to change your business process
You already have custom software that needs to be modernized
You require specific integrations to unique hardware or software systems
It’s not for you if . . .
You need a solution in place tomorrow
There is a COTS solution that fits your requirements, business process and budget perfectly
Do you see yourself in this position? Give us a call or email and we'll set up you up with our complimentary Technical Consultation to help understand the best path forward in your digital transformation.