How do I know if I need to build my own software?

...or buy a ready-to-go solution

PotterWhen running a business in a modern world, sooner or later you most probably will face the situation where you need a software to process one or another task faster/easier than it is by doing it manually.

We can take one of the most widespread issue solving software choices across the modern businesses – Customer Relationship Management (CRM) platform, for example.

Let’s not rise and try to answer the question why you need it in this topic, as if you are here, you already know you need it. You just are in the front of a very challenging question: Do I need to build my own custom software or I could go on with some ready solution?

Canned software

As for the start, you will most likely lean towards the decision to buy some off-the-shelf software. By staying on the same CRM topic, it might be SugarCRM or Vtiger, let’s say. Without any means of promoting these two products, I must say, whenever you hear some business wondering about what CRM to choose, these are the first to candidates on the table.

And no doubt – these products have proven themselves to be good enough for most of the situations and canned software like this may save you a lot of precious golden coins!

Buy installing the ready-to-go software you’ll get the basic customer management tools right away. Some plugins providing integration with the Asterisk VoIP server are also couple of clicks away.

Soon you will find out that with some little extra effort you can customize the data you want to store in your customer database too, so it is all quite handy and well performing.

So, why should I consider investing into custom software?

Custom software, in essence, can give benefits to your business if:

a) you want to be better than your competitors on the market, assuming they are using an off-the-shelf solution;

b) you want to grow you business large enough to cover the costs of the custom made system, which, in hand can do things that canned systems cannot do, therefore the return of investment is presumably high enough to do it.

While development of a custom software is more expensive quest than buying a ready-to-go software, it may be worth it. Remember, however, that development of a custom software will require significat resources, energy time and patience.

Here are some aspects of a custom-made software to consider:

  • Off-the shelf software is not meant to handle every need every its buyer might have. It is because this type of software is built based on mainstream needs the particular business vertical is having in some period of time. If you business has some special needs or it works in a specific market conditions, a custom software might qualify a lot better in meeting these requirements;
  • Ready-to-go solutions are rigid. Most of the software you can buy out there, will not allow you to modify its functionality in a reasonable way. There will be plenty of functions missing and plenty of functions absolutely unnecessary for your business case.
  • Canned software may not be compatible with other IT solutions. No secret, that your business might be already using some other software for accomplishing certain tasks, or you are willing to integrate with the system of your partners. Take in account that canned software might never (highly depends on the license terms of the software, its technical capabilities and architecture) be able to integrate with these other systems, whereas the custom made software can always be adapted for doing any job (literally);
  • Canned software may not be ergonomic enough when implementing your business case and workflows. “One size fits it all” case – you can wear a suite couple of sizes off yours and it might be OK, but you will always be thinking about something more comfortable. A custom made software is called custom because it will implement the workflows and processes you particularly need.

Why should you consider buying a canned solution?

Let’s jump back to the other side of the puddle for a second. Remember that under some circumstances it still might be more reasonable to stick with off-the-shelf solutions, especially for smaller businesses. Take these factors in account:

  • Limited budget. The costs of development of your own software can be a good enough reason to avoid this option. The mainstream solutions are a lot cheaper, therefore, might make a lot more financial sense for companies with smaller budgets.
  • Lack of technical skills. If you consider building the software yourself (inside your own company), make sure the team you have there has enough brainpower and skills in understanding your business case correctly, and that they have enough knowledge in technology in order to build the product. Making wrong decisions in either of these areas can lead to catastrophic results which cost you a fortune and leave you without working solution.
  • Good, canned software is already on the market. For common businesses, like warehouses, there generally designed software solutions already available on the market. You can just buy them and most likely, they will serve your needs very well.

How can custom developed software help your business?

Nowadays, no business can “stay on the same rails for two days”. To survive, your business needs to adapt itself to the new conditions quite often. It makes sense, if you also adapt your software to meet the new challenges, isn’t it?

  • Increased productivity. The program which is developed to serve your needs, does it. It does it exactly in the way you need, so it serves you, and not you serve the program. This is where you gain speed.
  • Competitive advantage. When you are using the same software your competitor does, you cannot really outperform him by the software. You must use some other (marketing, for example) tools but the software will do exactly the same it does for the competitor. By investing in your own software, you can eventually outperform them, and that advantage grows as you invest more into proprietary systems.
  • Faster reaction time. To develop good custom software, you first need to hire a great team that will accomplish the task. Once that team has settled down, they can build a wide variety of systems, sub-systems, tools. Anything that your business will require as it grows, evolves and adapts to the challenging market situations. Your primary goal is to dominate the market. And the tools you have, must help you in doing it, not put the obstacles in your way.

Always remember – once you build a custom software, it will be come your business family member who will live with you grow with you and will require you attention and also some resources, especially, nowadays, when technologies evolve not buy years or months, but by days and even hours.