MYTH:

Salesforce is Ready Out-of-the-Box.

You may have heard the term out-of-the-box (OOTB) thrown around when describing Salesforce. After all, Salesforce provides a savvy user interface, industry-specific products, plenty of online support and thorough training and certification resources. It seems it should be a simple plug-and-play solution.

The out-of-the-box threshold for Salesforce solutions is primarily dependent on your organization. What are you using Salesforce for? To what extent? Are your users leveraging all the features of the Salesforce product? Are your users actively tailoring your Salesforce environment to meet your business objectives? 

Salesforce Solutions

Configuring Your Salesforce

First, let’s distinguish between configuring your Salesforce solutions and customizing them. 

A configuration is any action taken through the point-and-click Salesforce environment. Like any software, you need to set the settings of Salesforce so that it is not in its most generic form. Otherwise, it would be tough for your Salesforce environment to be aligned to both your brand and your organization’s unique operations.

There are many areas in Salesforce where a user needs to define the value in order to make a given feature of module function. Some basic actions, like adding a new field to a Salesforce object or making a field operate according to a new formula, are examples of configuration. Salesforce users naturally configure the CRM application.

Other elements that can be configured in Salesforce include:

  • Installing Apps

  • Designing Validation Rules

  • Creating Profiles/Permission Sets

  • Creating Assignment Rules

The user-friendly interfaces and modules used to configure the features above are considered declarative tools, referring to their click or drag-and-drop nature that will allow someone without coding knowledge to make configurations.

Going Beyond Configuration: Customization

Configurations, however, can only get you so far. Even if you select preset settings for your industry or a package that is designed for a specialized business function, there may be features or functions that you may need, but are not available within a Salesforce application. For example, adding Apex Code to generate a virtual contact file from a Salesforce contact requires customization. Whenever you introduce new code, or programming, to make the solution meet your needs, you are customizing. 

Actions that go beyond configuration and enter into the world of customization include:

  • Adding Objects/Fields

  • Creating Workflows

  • Building Apex Triggers and Classes

  • Designing Custom Visualforce Pages/Components

  • Creating Custom Lightning Components

As your business develops an intimate relationship with Salesforce, the more you will identify what you wish it could do. The good news is it probably can!

Not only does Salesforce provide an environment where changes can be made, but it actively encourages developers to create in Salesforce. A quick visit to Force.com and Trailhead testifies to the resources Salesforce has invested in getting new developers up and running on their platform.

Declarative programming relieves you of having to worry about scalability or security. Your platform or app can grow with your environment automatically. This, in turn, saves time and effort for your dev-ops and development teams. In fact, this type of low-code development (or visual development) solution is increasingly considered high priority among high-performing IT leaders

Of course, there’s always the option — and often the need — to go beyond declarative programming and utilize imperative programming methods (i.e. traditional programming, code-oriented programming). Imperative programming entails using raw coding language such as C#, C++, Java, and so on — to execute an action, as opposed to relying on a computer function to design the script for you.

So, does this pass the out-of-the-box test?

Short answer, not really. When you get Salesforce and drive it off the lot, you are taking with you a lot of capability. You will 100% need to make configurations. Then, you need to determine if you need customization.

Break down your business process into sequential steps. This will help you understand what can be handled via configuration and then what must be done through customizations. Even for customization, there are different levels of development involved. This reflection is essential to preserving budgets and staff time, while also making the most of what you have. 

Whether you need to get your out-of-the-box functionalities just right or require highly tailored customization, CRMD can help you first leverage everything that comes with your Salesforce package and also advise on whether your business needs are growing beyond the box. 

Eunju Namkung

Author Eunju Namkung

More posts by Eunju Namkung