Whether to build a feature from scratch or use third-party software isn’t always an easy choice. It is even more challenging when you have fewer resources, both financially and manpower. This is the time every decision is count and affects the business as a whole. Let’s see how we can tackle this to some extent.
There are a couple of points that you can consider before taking a decision in similar scenarios, especially when the stakes are high. These points are the lessons I learned during the years and pick the top ones here to share with you.
Understand the business value. In order to start discovering how to choose a suitable feature development strategy, it all starts with an understanding of the value of the feature in your business. The business here is not only restricted to the economic aspect.
A simple definition of business value in our case is the impact of the feature on all forms of value that determines the health of the organization. In software companies can translate into multiple things such as better performance, better usability, more availability of service, tighter security or even better team agility. These are all business values. Some of them are more important in certain organizations and some less. That’s why to tackle software challenges, it’s always important you have a clear picture of what is your organizational priorities.
A simple definition of business value in our case is the impact of the feature on all forms of value that determines the health of the organization. In software companies can translate into multiple things such as better performance, better usability, more availability of service, tighter security or even better team agility.
It’s important to have a clear picture of the above values and priorities in your organization, especially if you are a startup. Small business tolerance of mistake is usually low and it can lead to the failure of the startup at some point. In larger companies, there is a higher tolerance for mistakes and failures, when a bad decision taken.
Measure the correlation between business value and your resources. The correlation between the feature’s business value and the amount of the time the development team needs to invest is a crucial point to measure before jump into the development. The more your feature business values go up and become a need for your revenue funnel, the more your team should invest their resources and make sure it is reliable at any time, it is scalable enough and it is maintainable for the future.
Have a clear overview of organization size and policies. There are various things that might limit your decision makings, such as company policies, software licensing or manpower.
How complete is good enough? In today’s software industry when we talk about third-party, it means many things. It can be an Open Source Software (OSS) package, managed services by various cloud providers like Amazon and Google, a mix of the last two and comes with easier UI to get the job done or other combinations. As you can see, we can leverage these options and pick the one that fits our needs and future proof our solution too.
Sometimes picking up a ready service with zero development is a good choice as long as your business does not depend on it too much. And some other time, it’s better you pick up a managed service, integrate it with your app and build a simple UI to start with. This at least gives you the power of scaling whenever you need to do it, based on your business needs and many other factors that you might miss to calculate at the start.