There comes a point for many companies when they have to decide whether to build or buy software. The answer is not really clear and can change depending on the situation. We decided to tackle this topic to see what would be the best option. Why not share it with others, we thought. Here is what we have gathered.
When talking about a choice such as this one, you need to look at the advantages and disadvantages of both options.
Among the factors you should always keep in mind, these three stand out as the most crucial ones:
As previously discussed, the costs can vary greatly. The ready-made software requires licensing with a monthly fee. In most cases, it is usually cheaper than creating your own.
There are risks that can be attributed to both options. By building you risk losing money on an investment if you choose unreliable development partners. Nothing that can’t be avoided by doing some research. However, the risks of buying one can be quite scary. See, there’s no guarantee that the provider will stay in business. What happens then? The entire system that supports the operations of your company simply stops working without any warning with nothing you can do. This is called the liquidation risk. The fallout of such an event is disastrous.
When it comes down to the problem you face, you need to determine what exactly it is you wish to accomplish. Some issues can be resolved with a simple free application, while others don’t have solutions on the market at all.
It’s possible to adopt a hybrid solution and enhance an open-source product. However, for enterprise software, it is not always advisable. This just multiplies certain negatives, such as the risks, for example. First, you risk finding a dishonest team of developers who are interested only in getting money out of you. Then you have to remember the licensing. It doesn’t eliminate the liquidation risk. So think twice before trying to combine these approaches to software development.
Of course, every situation is different. During the research for this article, we have asked some of our clients about their past experiences on this topic. Here is what one of them has told us about how he came to his conclusion. For the sake of confidentiality, we’ll just call him Mr. Addams.
“Not really a fun story to remember, but here it goes. I started my own business back in 2007. I didn’t have much of a budget back then, so I was cutting costs wherever I could. I’ve pirated some tools, abused the free trials, and that’s just on the software front. As we grew as a company it was hard to explain to the staff why we should stop. Everything was working, we started to turn profits, so why change anything?
After some time I made an executive decision to invest in a proper ERP system. It served us well for almost four years. It was great. Easy to understand, everything was accessible from one place. I didn’t mind paying for it every month since it made my work so much easier. Honestly, I didn’t even need any additional features. But apparently, it just wasn’t that popular. The developers had only this one product they were selling and it just wasn’t that popular.
One day, I got an email from the provider thanking me for using their services but telling me that they are closing down and could not keep the servers up. Thankfully I had enough time to save my databases locally before they were gone. It was devastating enough without it. We had to scramble trying to find a suitable replacement. The productivity was in the gutter, as were our profits. If it was not for Garrett from IT I don’t know whether or not I’d still be in business. He said that if given enough time and maybe some extra developers they could develop something similar.
It took some time, not gonna lie. We adapted though. By the time we finally started to feel more or less comfortable with our workflow, the first functional version of our own ERP system was ready. Sure, it wasn’t perfect, but with time it got better and better.
Now it has even more features I didn’t even know we needed. I also got to make some suggestions regarding the look of it. It was just cool to see your requests manifest in the product. Needless to say, Garrett got a promotion and all of us got our own system that we use to this day. So, if you ask me, you can buy such complex software early on, but as soon as you have the funds, invest in a custom solution.”
Determine what exactly do you need out of the software. The more complex it is the more aspects you should consider. In addition, some problems are more fit to one of the approaches and not the other. For example, there is no use in building your own internal messaging service. Compex PWAs with ERP integrationcan be safely outsourced. However, learning management systems that handle sensitive data should be kept in-house.
See what options are already available. By doing this early on, you get a picture of what you’re choosing from. This is when you should assess the benefits of each canned solution and, most importantly, the areas where each can do better. Be ready to make some compromises. Decide on how important these drawbacks are to your specific situation. Keep in mind, if you find something among the available products, it doesn’t mean you should rush into purchasing. There are still factors to consider.
The previous step helps you see what it would cost to simply buy a ready-made product. It most likely doesn’t have the full functionality that your business demands. Sure, it may do the basics, but nothing too specific. This is why this option is always cheaper.
Thereafter, determine the cost of a custom-built software solution. It will be tailored to your needs and you won’t have to deal with it not delivering on the technical front. Everything that you need will be built into the program itself. Of course, this is the reason for the higher cost of this option.
As mentioned earlier in the article, when you license your software, platform, or infrastructure as a service there is always a chance that the provider will go bankrupt. Maintenance and development of large projects are expensive, and you are not safe even when choosing huge enterprises. Even Google, for example, often cancels its side projects. Decide whether or not the solution you require will be an integral part of your business processes. If it is then it would be safer to build.
We have mentioned sensitive data before. It is highly ill-advised to keep personal information of the clients, trade secrets, and other intellectual property on the cloud. It is one password away from being stolen. In situations like these, it’s better to be safe than sorry. An internal system has an obvious advantage in that regard.
This goes hand in hand with the previous point. With some platforms, you are left at the whim of the provider. Some features you rely on can be removed, the pricing can change, and so on. With a custom product, you are in control.
It is in the nature of business to seek growth. Try to determine whether or not the ready-made solutions can keep up. Many services come with limitations and require you to pay extra for more feature-rich plans.
Custom software development isn’t the perfect go-to for every single case. There are instances where money is an issue, such is the case for many start-ups. Maybe it is a time-sensitive situation with the preferred delivery date being yesterday. However, if it’s not the case then you should always at the very least consider building your own solution. Your business deserves it.