OK, so you need to build a CRM. This article will show you exactly how to think about this and what you need to do.
I am assuming you have already decided that you ARE going to build your own CRM. If you are still open to consider alternatives, then you should read these first: Should I Build my Own CRM?
Building your own CRM is the absolute best choice for anyone needing a CRM; provided you have the time and resources to do it right. When you build your own CRM, you can build in exactly what you need and leave out all the rest of the bloat that you normally find in CRM’s.
Find the Resources
When you build your own CRM, you will need to allocate your programming resources adequately.
Never Outsource Development
When planning to build your own CRM, don’t even think about using outside programming resources to tackle a project as big and as important as this one. There are several reasons this is a bad idea, the most costly being when your CRM breaks and the team that built it is not around to patch it up for you!
Allocate your Inside Development Resources
To take on a project like a CRM, you will need dedicated programmers to build and maintain the software for the long haul. This is not a “build it and then forget it” proposition. The software must evolve, it will break, and it must be kept relevant into the future. This is not Microsoft Word you are building, this is a living breathing product.
Make sure you have a programmer or team who is ready to be married to the product. If this is a show stopper for you then you should take a step back and read this: Build Your Own CRM: Good Idea or Bad Idea?
The term CRM is pretty broad and can include a lot of different features and functions. The first thing you need to do is to map out what YOU need it to do. Forget about what a traditional CRM can do and think of this as a tool for your business. If there are things that are typically in a CRM but you don’t need them, leave those things out. If there are things that typically are not in a CRM, but you need that functionality, add those items.
Here is a list of common components you might need or want in a CRM:
Pipeline Sales Management
Social Media Integration
Client Referral Tree
Free Recorded Message
(This is not meant to be an exhaustive list, but it will serve as a good starting point.)
Software Requirement Specification (SRS)
Once the list of features and functions is complete, someone will need to design how the program is going to work. This should be done by a professional and can be outsourced if needed.
Every aspect of how the product will be used, including the user experience (UX) is considered in this step.
This is usually done using a wireframe or prototype tool and should include input from the eventual users of the product. Remember, if now one uses your CRM, it doesn’t matter what features and benefits it provides!
User Interface (UI)
Similar to the User Experience, you will want a friendly and easy to understand user interface. Again, this function can be outsourced if needed.
You are not looking for your artsy fartsy brother-in-law here who is great at creating logos, you want someone who designs User Interfaces for a living.
Set up a Testing Environment
You will need a testing environment completely separate from your published code. This will be identical to your current working environment, but will include new features and bug fixes. Your QA person will be in charge of this environment to make sure everything new that is introduced to the product doesn’t break something else.
By the way, your QA person can’t be part of your development team. You almost want an adversarial relationship between your programmers and your QA people. QA’s job is to break what the programmers deliver – not just rubber stamp it.
This should give you a great starting point as you go down the road to build your own CRM. However, if it is at all possible, you should also consider a much faster and easier route: White Labeling a CRM that is already built, tested and ready to go.