Salesforce is still a relative newcomer for enterprise platform development, but it is here to stay. Since it is such a new platform that means that the resources that can really make that new platform function effectively are pretty scarce. But this scarcity of expertise will not stay like this forever. Developers and consulting companies will sense the demand that is out there and will figure out how to produce the supply side. Salesforce consulting companies many times come into a project and the client has very few internal Salesforce resources. There may be an admin who originally stood up the system and there may be one internal developer who has done a small amount of trigger or Apex work, but many times that is about it.
Most companies do not yet have a large staff of dedicated resources to support Salesforce. But yet these same companies will have large staffs to support languages like .NET and Java or databases like Oracle and SQL Server. At a large company you would always have some type of architect for enterprise technologies like .NET, Java, Oracle or SQL Server. But with Salesforce it is rare to see an internal architect for the Salesforce platform. But with each project I complete I see those Salesforce skills change and grow at each company. I see a time when there willl be a Salesforce architect at each company that has decided that Salesforce will be a critical platform in its future. Many companies quickly recognizes that internal resources must be built up to support the projects that are being developed on Salesforce. They also realize that it can become cost-effective to be able to do certain maintenance activities with inside resources vs. outside resources. One of the main ways that internal resources grow is because integrations must be built between internal systems and Salesforce. Only the internal resources know how the internal systems are built. So as those internal resources help to build the connections to Salesforce, they start to learn about the Salesforce platform and how to make similar changes for future projects.
As with any type of software development there is always a place for outside resources…
1) When highly skilled technical resources are needed. When somebody works with a technology day-in and day-out with a variety of companies and projects, that knowledge is very valuable for new projects. A few best-practices and a clear direction can be the difference between the success and failure of a project. This is one of the main things that professional consulting companies can bring to the table.
2) When a project needs to scale up. Companies do not want to bring on internal resources when a large project has a short time horizon. A consulting company can be brought on to work on those large new projects and then when the projects are complete those extra resources can be released. During the life of the project enough internal resources can be brought up to speed to handle the maintenance of the new application.
3) When outside resources can be purchased for less than what internal resources would cost. This is always a balancing act as internal resources will typically know the needs of the business in a much deeper way, but when a trusted consulting partner can work with a business consistently and knows that business very well, this can be a great arrangement.
Salesforce consulting companies right now have to search out and find the technical resources that exist internally at their clients. But over time those internal resources will already be there and will be sitting in the initial discovery meetings. Salesforce consulting partners are being brought in as the true subject matter expert in terms of Salesforce. The consulting company’s role is to take that responsibility very highly and to get the client started down a best practices path that can be leveraged over time. But in future interactions with these same companies there will be more internal resources with deep knowledge of their business and their Salesforce platform. The trust of these future internal resources will have to be earned. The goal will be to show them the advanced expertise that a Salesforce consulting partner can bring to the table for new and existing projects.