Perhaps you’ve been on the hunt for a while — looking for membership management software that meets every need your group requires. Or maybe you are seeking membership software that allows you to neatly follow a business process that your old, dying software accommodates. If you haven’t found a membership database that meets your criteria, you might be tempted to find a developer to build a custom system for you. Here are six reasons why coding a custom membership system isn’t a good idea.
1. Custom development requires a heavy investment of time on your part
How soon do you need your new membership database? Yesterday? Custom development takes time, almost always more time than one anticipates. You are better off using off-the-shelf software if speed and in-house personnel resources are concerns.
- Creating specifications documentation takes time and skill. Outlining what you want the software to do isn’t enough. Successful development projects have detailed requirements and instructions. For example, are you willing to write the interface text and create visual mockups of each part of the member’s journey for joining, renewing and canceling their membership? Do you have someone with the experience, time and aptitude to perform this task well?
- Testing takes time. Consider if you will be testing the developer’s work in house, and if you will also have real members test the system as well. Ideally you will undertake both to identify trouble spots. Making software changes once testing is complete will add to the project timeline.
- Developers are not mind readers. For example, even if you assume all membership systems would include a feature such as a failed payment email, the developer may not anticipate this need. Spending staff time correcting these assumptions increases frustration as well as the cost of the project and speed of delivery.
2. Unanticipated features or “feature creep” adds to the development timeline and cost
Even if your developer has a lot of experience with similar projects, neither of you may anticipate what your needs may be. Some examples of how this could occur include:
- Interconnected parts: Features such as your membership directory, online event registration, shopping cart and forms should tie into your membership database. Each of these features should have its own mockups and text as well as notes about how the feature will interact with your member database and other features. The interaction can be quite complex and it will be difficult to anticipate all the ways you might need the data to be available in the future.
- Reporting: Sometimes reporting is an afterthought after a lengthy development project. You’ll need to communicate clearly what reports you will need. It may be hard to anticipate what reports your board may request in the future. Will you need to pay your developer or someone to add member report functionality later
- Future proofing: Will your software be customizable to accommodate your future needs? For example, you may have a good idea about all the fields you need to request from your members right now. But in the future, you may need to ask for additional information such as new professional certifications that become available. So you’ll need your custom software to be written so that it offers you flexibility in the future to add new fields, hopefully without incurring additional costs when that time comes.
3. Custom code might not be portable and may not have clearly defined ownership
Let’s assume your custom membership software will be designed to work with your content management system (CMS). If you move your website to a new CMS, will your membership software continue to work? You don’t necessarily want to be locked into one platform for your website design should your CMS no longer suit your needs.
What if your developer closes shop or decides to leave self-employment? This isn’t unheard of as skilled programmers are highly in demand and well paid. It will be important that you own the code and that it is written in a way that another programmer can work with the code in the future to add new features or make changes. Writing a contract that specifies these requirements takes skill and may require the help of a specialized attorney with knowledge of intellectual property.
4. Will ongoing support and training be provided?
When you hire a developer to create a custom membership database, you should consider if he or she:
- Is willing to support the membership software on an ongoing basis.
- Has others on standby to assist you when the developer is on vacation or unavailable.
- Will be available to write additional code for features you may want in the future.
- Is interested in answering your questions about the system in a timely manner.
- Will provide training to bring new hires up to speed.
When you use a membership plugin like MembershipWorks that has more than 10,000 customers, your membership platform support needs are covered. We provide live support for calls, emails, training sessions and demos between 10 am and 6 pm US CST each weekday.
5. Compliance and legal issues are expensive and time-consuming
The regulatory landscape related to privacy laws is difficult to adhere to for any software developer. For example, if you have any members of your organization who are citizens of the European Union, you will need to be compliant with the General Data Protection Regulation (GDPR). Compliance with GDPR should involve hiring an attorney to be sure your custom membership software follows the law.
Tax rules are also commonly changed. As more regulations emerge for tech companies in the United States, these compliance issues are too much for one organization to keep up with. In the past two years alone, MembershipWorks has stayed abreast of an increasing list of compliance and legal issues such as GDPR, PSD2 and more.
6. No membership software is ever complete
The technology landscape changes so often now that software demands to be updated. Consider that in 2009 Instagram had not yet launched. Business-to-business websites tended to be brochureware. Sites that had custom programming rarely integrated with other software. Today small business websites can use plugins to add integrations and interactivity that would have been cost-prohibitive 10 years ago. While the efficiencies gained through integrations are fantastic, with integration comes interdependence.
So even if your software does everything you want and you do not anticipate needing changes, third parties such as Stripe, Paypal, QuickBooks, Xero, etc. will unilaterally update their APIs. Those updates will require your software to be updated or re-written regularly to keep up. MembershipWorks has had to update our system many times to keep up with API changes over the years.
When you use a platform like MembershipWorks, development and maintenance efforts are shared across all customers. The cost of remaining legally compliant is also shared among many.
How to make off-the-shelf membership software work for you
Consider if greater expense as well as the time you will take in negotiating a contract, creating specifications, providing feedback to the developer and conducting testing will be worth gaining features that you might not find within an existing membership platform. If just a few features are missing, it might be better to:
- Adjust your business practices to align with your potential membership software. Sometimes the old way of performing tasks was dictated by the lack of technology. One example of old processes is fixed renewal dates. In the past, it was easier to track membership renewals if everyone had the same expiration date. Membership billing was performed manually once a year. Now through modern membership systems, rolling renewals help organizations increase profits by collecting more dues payments up front. Systems such as MembershipWorks will accommodate some holdover processes, but it might not be as profitable to continue as you have before.
- Communicate with potential membership software vendors to see if there are workarounds to help you accomplish your goals.
- Reconsider your “must have” and “good to have” features. Some features may not turn out to be as important to you in the long run. For example, a few years ago many membership groups wanted their own Facebook-like social media system to engage their members. But over time this has proven to have low engagement and is of little use to most organizations. Prioritize what is truly important to your organization.
- Hire a developer to help you. Their expertise will enable you to:
- Investigate, test and implement what customizations are possible within your off-the-shelf system.
- Launch your new system more quickly due to their prior knowledge of this software or familiarity with membership systems in general.
- Make the most of the features available within the system due to their understanding of your business practices and processes.
- Transition systems with fewer headaches due to their expertise in working with data and spreadsheets.