What is Salesforce?
Thousands of businesses from all over the world are using Salesforce to manage pipelines, log calls, respond to customers, manage sales processes and much more.
It is a highly customisable platform that helps businesses to automate processes. System Admins can configure the platform declaratively and achieve high levels of customisation to meet business needs. Developers can also take things to further with custom code if required.
Why is Salesforce so popular?
Salesforce is the world’s most popular CRM (Customer Relationship Management) platform. Different business areas use Salesforce effectively including sales, customer service, marketing and finance. In 2017 Salesforce reported that it had over 150,000 businesses using Salesforce and in 2018 it had a turnover of $10.4BN. It is hugely popular and as of 2018 there are at least 3.7M Salesforce users worldwide.
There is a vast global community of trained and certified professionals. This lowers the risk of IP loss when people leave businesses. When you hire a certified contractor into a project team you can expect meaningful output within hours, assuming you have the process and documented deliverables in place.
As Salesforce is highly customisable, it can be built in any way that a company requires. Whilst this is a significant strength it can also be a maze that can lead to large amount on technical debt if development is not thought through.
How do you achieve success with Salesforce CRM?
As mentioned one of the larger benefits of Salesforce is its flexibility. However this can also be a significant pitfall. Often companies instruct an existing employee to train up and very quickly they can start delivering customisations. Although rapid development sounds great it can create problems that companies will be dealing with for a long time. It will provide a rapid start but as time passes your admin will need to work around previous customisations, and the pace of development will slow.
When treated like any other IT system your Salesforce environment can built in a way that will stand the test of time. Businesses should conduct workshops, write up requirements and acceptance criteria and push changes through a normal IT development process. This will provide stable development, documentation, and fast fixed rate of development deployments.
Avoid over engineering
Salesforce offers a significant amount of functionality out of the box, and there will be many business requirements that do not require any advanced configuration or coding. One way to avoid future technical debt is to explore these features first. If these features do not meet your requirement, then look to a declarative solution. The skills required for this level of configuration is lower than that of a coder, so costs can be lower. Also if your administrator leaves then another should be able to get up to speed extremely quickly. Taking a declarative approach will lower ongoing maintenance costs and lowers IP retention risk.
In most cases Salesforce out the box and declarative configuration will be all you need. However when this does not meet your requirements then you may want to have some custom code deployed. Whilst there is still large talent pool with the required skills you should expect a higher cost for delivery and ongoing support.
Another area to look at is the Salesforce AppExchange. Here you can download 3rd party applications that can provide the features you need with a few clicks. You need to be sure that that the application is exactly what you require. Working with third party apps can be challenging as the components and configuration is usually locked. Therefore your admin will not be able to edit the core of the application for future requirements. In my opinion the AppExchange is great for background tools or to connect to two systems. However, relying on these applications to help with large scale processes is risky given the lack of control you will have over their ongoing development.
Ill defined projects are doomed to fail, so take the time up front and talk to experts. There are many Salesforce consultants and contractors that can help. Whatever your project, make sure that the deliverables have been agreed by all stakeholders at the start. Starting the project this way will speed up the project in the long run, and give you best chance of success. It will also reduce the amount of technical debt you need to deal with in the future.