What is better for your nonprofit: tech applications built from scratch or pre-built softwares?
This question is fundamental to any organisation considering implementing technology solutions. However, because of the unique nature of the nonprofit sector where each programme requires a different approach, this isn’t an easy decision to make.
Here is a quick guide to help you pick between building your own technology as opposed to using off-the-shelf softwares.
Custom-built vs pre-existing technology
There are many software solutions available that offer a wide range of features and functionality and are specifically designed for nonprofit organisations. A volunteer management software, for example, will have features and tools for scheduling volunteers, tracking volunteer hours, and managing volunteer information, which might fit the need of the organisation. Using pre-existing software, therefore, can be a faster and a more cost-effective option for a nonprofit.
A common downside to using pre-existing software is that it may not be customisable to the specific needs of an organisation.
However, a common downside to using pre-existing software is that it may not be customisable to the specific needs of an organisation. For example, an off-the-shelf project management software may come with features for invoicing. However, if the organisation does not handle invoicing in-house, those features would be considered unnecessary and simply add to the overall cost of the solution. Similarly, there may be limitations in terms of the number of users that can access the software, which can also restrict the organisation’s ability to use the software in the way they need to.
Custom-built applications can be tailored specifically to the needs and requirements of an organisation. This means that the application will function exactly as the organisation needs it to, without any unnecessary features or limitations. However, building a custom application can be a time-consuming and expensive process. For example, in comparison to a SaaS platform, which can be deployed in three to six weeks, it can take up to months to develop a custom platform based on an organisation’s needs.
Picking the right fit
Discussing the following questions with your team can help in choosing between a custom-built application and a pre-existing one:
1. What is the scale of the programme for which you want to build the technology?
Scale is an important factor to consider when your organisation is looking to incorporate technology into its programmes. The scale of a programme, for instance, will determine the number of users, amount of data to be collected and processed, and complexity of operations. This in turn will inform the choice of technology solution that would be most suitable and effective for your programme.
For example, if an organisation has 20 fieldworkers collecting data in five districts, it might be easier to manage data on any pre-existing software such as an Excel spreadsheet. As the programme grows in size and complexity, however, the amount of data to be collected and processed increases, and the number of users accessing the data grows.
In such scenarios, a custom application could be beneficial over an Excel spreadsheet. A custom application can be designed to handle larger amounts of data and support a larger number of users. It can also include features such as data validation, user permissions, and automated data processing, making it easier to manage data at scale.
2. What is the current manual effort and cost of your operations?
This question should help you understand whether integrating tech will help reduce the cost of operation and the manual effort that the organisation is undertaking. Organisations working with huge amounts of data and field cadres might find it useful if the time taken by certain processes is reduced because of the introduction of technology.
For example, an organisation that previously collected data on paper forms and manually entered information into an Excel spreadsheet can benefit from using a mobile data collection application. The mobile application can allow fieldworkers to collect data electronically and transmit it in real time, reducing the time required to manually enter data as well as the risk of data entry errors.
3. How mature is your programme?
If a programme is at the pilot stage, or at a stage where its design might require more iterations, it might not be useful to get custom-built tech. This is because the tech needs to evolve in tandem with the programme. If one invests in custom-built tech too early, it might mean investing more time and energy to make changes at a later stage. Hence, only when the programme reaches a certain maturity would a custom application be a good integration.
4. How tech-savvy is your in-house team?
Having people with some tech expertise on your team is crucial if you are thinking about building an application from scratch, as there is a lot of pre- and post-work that goes into maintenance as well.
For example, having someone on your team who can work on server maintenance and help out with potential bugs in the software can be beneficial. Moreover, they would have a better understanding of the organisation’s needs and can communicate these effectively to the team developing the application.
This also allows the organisation to have more control over the development process and the final product.
Getting started on building your own application
The above questions can help you assess the tech needs of your organisation and determine whether you need to build a custom application in the first place. In case your organisation decides to go ahead with building one, this checklist can help you get started:
- Getting the required sign-offs: All stakeholders who have decision-making responsibilities in your organisation must be on the same page when it comes to building the application. This means that they should have signed off on its design, the formats of the reports, and the application’s dashboards. In addition to this, they should be aligned on the value addition that a customised application will bring to your programme.
- Exploring existing softwares: It is crucial to understand why existing off-the-shelf technology platforms do not work for your programme. This will bring more clarity on exactly what you need from the custom software. This can also open doors to drawing references from already existing softwares, which might fit in your programme design with a few additional features.
- Creating a blueprint: When designing the custom application, it is important to keep in mind the user journey, which is the sequence of experiences that a user goes through as they interact with a product or service. By creating a blueprint of this, the development team can better understand the needs and expectations of their users, and can create software that is more effective and user-friendly.
- Dedicating sufficient resources: Creating a custom application can be a rigorous and time-consuming activity. It includes coordinating with vendors, internal team meetings, and product management. Additionally, the development process usually involves a testing phase to ensure that the application works as intended. This can also involve iterative design rounds based on feedback from stakeholders. This testing phase requires human resources and capital for equipment and infrastructure, and may also mean hiring external consultants or contractors for specific tasks such as testing, security, and performance optimisation.
- Incorporating feedback: All stakeholders involved in the designing of the application and its management as well as the end users must be part of the design journey at every stage. Their feedback will help you understand the challenges, the gaps, and the drawbacks, and aid you in designing the final product.
Choosing what’s best for your organisation—an application built from scratch or a pre-existing software—is a crucial decision based on your programme’s design and maturity and the team’s skill set. Fortunately, technology solutions allow you the flexibility to continually experiment. Therefore, if your organisation does not want to fully commit to building a new application for reasons of cost, time investment, or lack of skills, it can start slowly by experimenting with pre-existing softwares during the initial stages of its programme. This will also help in building confidence among team members and in-house capacity within the organisation.