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?
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:
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:
Building Apex Triggers and Classes
Designing Custom Visualforce Pages/Components
Creating Custom Lightning Components