Jyoti Salesforce Interview Question 2025
Jyoti Salesforce Interview Question 2025
2. Dynamic UI: Salesforce’s Lightning UI frequently updates, causing UI test automation issues.
3. Third-party Integrations: Salesforce integrates with ERP, Marketing, and Payment systems, making API testing critical.
5. Test Data Management: Limited access to real production data makes testing difficult.
Testing Approach:
Use Postman to send API requests and validate responses.
Verify authentication using OAuth tokens.
Check CRUD operations on Salesforce records.
2. Data Encryption Testing: Check if sensitive data is encrypted at rest and in transit.
3. Session Management Testing: Validate session timeouts and multi-factor authentication (MFA).
4. SOQL Injection Testing: Ensure SOQL queries are secured against injection attacks.
6. Scenario-Based Questions
Q15. A business user reports that they cannot see a specific record. How would you debug this issue?
Answer:
1. Check Object & Field-Level Security (Profiles, Permission Sets).
6. Scenario-Based Questions
Q19. A user cannot see a record they should have access to. How would you troubleshoot?
Answer:
1. Check Profile & Permission Set for object access.
4. Run negative test cases (records that should not trigger the workflow).
What is SOQL?
SOQL stands for Salesforce Object Query Language, and as the name suggests it is the main language used for performing
queries against the database. While it has a similar syntax to SQL, there are a few key differences, mainly that SOQL is exclusively
used for queries (i.e. SELECT statements).
It is used to retrieve data from a single object, and potentially those directly related to it. SOQL can be used both within Apex code
– to query records for consumption by said code – or via the API and tools which use it – such as in data loading tools
Apex Programming
9. What is required for deploying Apex code to a Production instance?
When deploying Apex code to production, there are three things which are required:
1. All classes and triggers must successfully compile.
2. Tests must cover at least 75% of all Apex code and there must not be any failures.
10. What’s the difference between queueable Apex, batch Apex and schedulable Apex?
All three are different ways of running asynchronous Apex code:
Queueable Apex: This is an async process which can be launched to run processing, callouts, etc. This is useful when trying
to do processes in triggers which are long running, or simply unavailable, e.g. callouts.
Batch Apex: An Apex process which is designed to handle large numbers of records (up to 50 million) by processing them in
smaller batches of 1 – 2000 records at a time.
READ MORE: Simple Guide to Batch Apex in Salesforce
Scheduled Apex: A process that is scheduled to run at a specific time and date. This can be customized to be repeatable,
either by scheduling it through the UI, or via a CRON string within other Apex code.
What is the difference between Lightning Web Components and Aura components?
Lightning Web Components is built using current web standards to build custom HTML elements, through the use of Web
Components – designed to run in a lightweight and performant manner. Aura components are the legacy Lightning Component
framework, but still utilize JavaScript and HTML for development.
20. Why would we use Lightning Web Components over Aura components and vice versa?
Ideally, we should always be using Lightning Web Components for any new developments, due to their easier development and
better performance. We should avoid using Aura components unless we wish to use a piece of functionality which is not yet
supported in LWCs, in this case we should wrap an LWC inside of an Aura component.
Read more:
Migrate Aura Components to Lightning Web Components
Checkbox Yes No
The role helps in defining data visibility for a A profile sets the limitation for what an user can do in
particular user. the organization.
Roles provide a feature to control access to Profiles help to decide record privileges i.e. assuming
records by impacting reports. For the user can observe the record, it concludes what the
example,“My Teams” filter. Roles function if a user can function, edit, delete, view on that record. It
security model (OWDs) of an organization is controls other system privileges like export data, mass
set to private. email, etc.
13. What are Permission sets?
A Permission Set is a collection of settings or permissions that is used to give access to numerous tools and
functions for the user. You can use permission sets for different types of users to extend functional access without
changing their profiles. Instead of creating a separate profile each time, you could easily create a Permission Set.
14. What is use of muting permission set in permission set group
By Adding Muting Permission in permission set group we can switch off/turn off/remove particular permission/Setting
within a group without affecting the rest of the permission sets within the group
15. How many ways we can share a record?
With the help of the given below methods we can share records in Salesforce:
Role hierarchy:
Whenever a user is added to a role, the user above the current user in the hierarchy of roles will have access
to reading the records and inheriting the permissions.
Follow the steps for role hierarchy: Go to Setup → find manage users’ → roles → set up roles → click on ‘add
role’ → provide name and click on save.
OWD:
OWD(Organization-Wide Defaults) allows you to give permissions to the organization-wide and to define
baseline setting for the organization. It is also helpful in defining the user’s accessibility level to the user where
a user can see other user’s records.
OWD settings can be Public Read Only, Private, Public Read, and Write.
Follow the steps for OWD: Go to Setup → find the Security Controls → click on ‘sharing settings’ → click on
‘Edit.
Manual sharing:
Manual sharing is sharing a single record/file to a single user or group of users through manual access.
We can see a button for manual sharing on the detail page of the record and it can be seen only when the
OWD setting is private.
Criteria based sharing rules:
If we want to share records based on conditions such as share records with a group of users with the criteria of
the country is India.
Follow the steps for criteria-based sharing rules: Go to Setup → security controls → sharing settings → select
the object and provide name and conditions then click on save.
Apex sharing:
Sharing object is available for each and every object in Salesforce. For example, the Account object’s share
object is AccountShare.
By using Apex, if we want to share the records then we have to create a record to the shared object.
16. What are Audit Fields in Salesforce?
Audit Fields in Salesforce are special fields that track information about your records that can be valuable for
audit purposes. Typically these fields include: CreatedByID. CreatedDate
17. What is an Audit trail?
The Audit trail in Salesforce is a unique feature that helps in tracking the changes that have been made in the
organization by you and other administrators. It would be helpful for the organization with more administrators. This
audit trail shows you the information of the twenty most recently made changes in your organization.
18. What is a Queue in Salesforce?
Prioritize and assign records to teams that share workloads. There’s no limit to the number of queues you can
create, and you can choose when queue members receive email notifications.
19. What is a Public Group
Groups are sets of users. They can contain individual users, other groups, the users in a particular role or territory,
and/or the users in a particular role or territory plus all of the users below that role or territory in the hierarchy.
Report and Dashboard Interview Question and Answers
20. Difference between static and dynamic dashboards in Salesforce?
Static dashboards Dynamic dashboards
It is used to show organizational- It is used to show a single user’s specific data, such as the
wide data to a set of users number of sales closed, leads converted, etc
It supports all the custom objects and only a few standard objects like
It supports all custom and
Account, Contact, Campaign members, person accounts, Leads, and
standard objects.
Solution.
It doesn’t support
It supports schedule export.
scheduled export.
let declarative tools handle non-DML activities like email alerts separate DML activity and offload it
and in-app alerts to Apex
20. What is Apex Trigger Framework? What are different Trigger Framework are available in Salesforce?
How many trigger frameworks are available in Salesforce, which one is a lightweight apex trigger framework and a
Comparison of different approaches? Check our Apex hours Trigger Framework in Salesforce sessions.
Type of different frameworks in Salesforce
1. Trigger Handler Pattern
2. Trigger Framework using a Virtual Class
3. Trigger Framework using an Interface
4. An architecture framework to handle triggers
21. What is Async Apex in Salesforce? How many ways do we have for Async processing?
In technology terminology, Asynchronous operation means that a process operating independently of other
processes.
Using Async in Salesforce – how will we do it?
1. Schedule & Batch jobs
2. Queues
3. @future
4. Change Data Capture – Apex Triggers (Summer ’19)
5. Platform Events – Event Based
6. Continuations (UI)
22. What is a Batch job in Salesforce?
Batch class is used to process millions of records with in normal processing limits. With Batch Apex, we can process
records asynchronously to stay within platform limits. If you have a lot of records to process, for example, data
cleansing or archiving, Batch Apex is probably your best solution. In Batch Apex each transaction starts with a new
set of governor limits, making it easier to ensure that your code stays within the governor execution limits
23. What is the difference between the Stateful and Stateless batch jobs?
Using Stateful Batch Apex
If your batch process needs information that is shared across transactions, one approach is to make the Batch Apex
class itself stateful by implementing the Stateful interface. This instructs Force.com to preserve the values of your
static and instance variables between transactions.
global class SummarizeAccountTotal implements Database.Batchable<sObject>, Database.Stateful{
}
In Short, if you need to send a mail to check the number of records passed and failed in the batch job counter, in that
case, can you Stateful batch job?
If you want to create one counter and share/ use it in each execute method use the same.
Using Stateless Batch Apex
Batch Apex is stateless by default. That means for each execution of your execute method, you receive a fresh copy
of your object. All fields of the class are initialized, static and instance.
global class SummarizeAccountTotal implements Database.Batchable<sObject>{
}
24. What is mixed DML?
A Mixed DML operation error occurs when you try to persist in the same transaction and change to a Setup
Object and a non-Setup Object. For example, if you try to update an Account record and a User record at the same
time.
Salesforce Developer Lightning Interview Question and Answers
25. What is Lightning Data Service?
Use Lightning Data Service to load, create, edit, or delete a record in your component without requiring Apex code.
Lightning Data Service handles sharing rules and field-level security for you. In addition to simplifying access to
Salesforce data, Lightning Data Service improves performance and user interface consistency
26. How to do communication between Lightning web components?
Use the Events in lightning web components (LWC) to communicate between components. Events in Lightning web
components are built on DOM Events, a collection of APIs and objects available in every browser. Here we will be
see how to the events using the Custom-event interface and publish-subscribe utility.
Learn about Event in LWC in our Events in Lightning web components post. Events are used in LWC for
components communication. There are typically 3 approaches for communication between the components using
events.
1. Parent to Child Event communication in Lightning web component
2. Custom Event Communication in Lightning Web Component (Child to Parent )
3. Publish Subscriber model in Lightning Web Component or LMS (Two components which doesn’t have a
direct relation )
27. How to call Apex class in Lightning web component and how many way we have and when to use which
option?
You can call the apex methods as functions into the component by calling either via the wire service or imperatively.
To call an Apex method, a Lightning web component can:
Wire a property
Wire a function
Call a method imperatively
To expose an Apex method to a Lightning web component, the method must be static and either global or public.
Annotate the method with @AuraEnabled
Learn more from the Call apex method from the Lightning web components post.
28. What are the basic difference between Application Event and Component Event in Aura component?
Application Event Component Events
Application Events are handled by any component Component Events can be handled by same
have handler defined for event.These events are component or a component that instantiates
essentially a traditional publish-subscribe model or contains the component
Designed with large enterprise application in mind Designed with mobile devices in mind
34. What is the difference between Enterprise WSDL and Partner WSDL?
Here is the difference between Enterprise WDSL and Partner WDSL.
Enterprise WDSL Partner WSDL
Changes if custom field or custom objects Does not changes if custom field or custom objects are
are added to your organization added to an organization’ Salesforce configuration
35. Explain about Integration Patterns?
In Salesforce, we have welcome Integration patterns.
1. ” Remote Process Invocation—Request and Reply ”: Salesforce invokes a process on a remote system, waits
for completion of that process, and then tracks state based on the response from the remote system.
2. ” Remote Process Invocation—Fire and Forget ”: Salesforce invokes a process in a remote system but doesn’t
wait for completion of the process. Instead, the remote process receives and acknowledges the request and
then hands off control back to Salesforce.
3. ”Batch Data Synchronization”: Data stored in Lightning Platform is created or refreshed to reflect updates from
an external system, and when changes from Lightning Platform are sent to an external system. Updates in
either direction are done in a batch manner.
4. ”Remote Call-In ”: Data stored in Lightning Platform is created, retrieved, updated, or deleted by a remote
system.
5. ” UI Update Based on Data Changes ”: The Salesforce user interface must be automatically updated as a
result of changes to Salesforce data.
6. “Data Virtualization ”: Salesforce accesses external data in real time. This removes the need to persist data in
Salesforce and then reconcile the data between Salesforce and the external system.
Upgrades: Instead of managing upgrades to your software yourself, Cloud computing providers take care of this for you. Salesforce will upgrade your solution to the latest version three times a year.
This comes with new features and improvements to the system without you having to lift a finger or pay additional fees.
Mobility: Cloud computing tools can be accessed from anywhere. As long as you have a device and an internet connection, you can access any information that is stored in Salesforce. This is
particularly handy if you travel frequently for work or meetings.
3. Can you describe the main differences between Sales Cloud & Service Cloud?
Sales and Service Cloud both act as the core CRM platforms for Salesforce and will be used by the majority of organizations. While
both share some similarities, they are distinctly different products that contain different sets of features for their specific function.
Sales Cloud: This product is designed to support businesses with their sales cycle – taking a potential customer on a journey, from qualifying them through the Lead object to converting them into an
Opportunity where the main sales cycle takes place. Sales Cloud also has a number of other features to support this process, from quoting to forecasting.
Service Cloud: Service Cloud, on the other hand, helps organizations with their customer support process. Customers initiate a support process by emailing, calling, or submitting an online form.
Once this case has been created in Salesforce, agents can use features such as a knowledge base to help find answers to questions and milestones to ensure SLA (Service Level Agreements) are
met, as well as features like live chat to talk to customers in real-time.
Read More: Sales Cloud vs Service Cloud – What Are The Differences?
4. Apart from CRM, what other products do Salesforce have in their offering?
Over the years, Salesforce has built up a huge portfolio of other products to help serve its customers. One of the most attractive
selling points is the fact that they can seamlessly integrate with each other, creating a full 360-degree view of their customers.
Some of Salesforce’s other products include Marketing Cloud, Commerce Cloud, Experience Cloud, MuleSoft, and Slack. For a full
overview of Salesforce’s products, check out the link below.
Read More: Ultimate Guide to EVERY Salesforce Product in 2021
5. What is the Salesforce Platform (Force.com), and how does it help organizations?
One of Salesforce’s biggest selling points is its platform (previously called Force.com). This enables you to create powerful
customizations on top of Salesforce’s products, which allow you to completely tailor the applications to your organization’s exact
needs. This is made even more attractive by the fact that you can create customizations with clicks, not code.
At a basic level, this allows you to create custom fields and objects to store unique information related to your organization. One of
the most popular customization possibilities is automation. You can create automation to do pretty much anything in Salesforce –
update a field, create a record, send an email, etc. These types of customizations can end up saving users a lot of time.
Read More: Workflow Rules vs. Process Builder (Feat. APEX & Flow)
6. Can you provide an example of a custom app you could build on the Salesforce platform?
Taking customizations one level further, Salesforce enables you to build custom applications on the platform. Think about how the
Sales and Service Clouds are set up with their various features designed for a certain purpose – this can be recreated for any team
function.
If you are familiar with Trailhead, you may have already created a few custom applications that will give you a good answer to this
question. If not, here are a few ideas:
An HR application to help internal teams manage jobs and job applicants.
A goal-setting app that can help managers set targets and goals for their team.
7. Can you describe the differences between declarative and programmatic customizations?
When it comes to Salesforce customizations, there are two main types: declarative and programmatic.
Declarative customizations are point-and-click. These allow non-developers to build powerful customizations by using a wizard to
create custom fields, automation, and tables of data. One of the latest developments Salesforce has brought out is MuleSoft
Composer, which allows integrations into other systems to take place using only clicks!
Programmatic customizations, on the other hand, are built with code. Whilst you can do almost anything with declarative
customization, there is a limit to more complex solutions. Apex is Salesforce’s coding language and may be needed if the
requirement is particularly complex.
Lightning development, on the other hand, is Salesforce’s UI coding language, which can be used to create completely custom
screen layouts. In addition, it’s common that, in most integrations, some level of coding experience using APIs will be needed.
9. What is the Salesforce Lightning Experience, and how does it help organizations?
Salesforce Lightning was primarily a new UI that was released in 2015 – it took Salesforce’s UI, which was mostly unchanged since
1999, and brought it into the 21st century. Salesforce centered the design around a modular experience that allowed Salesforce
Admins to easily control the layout of all pages.
This resulted in a rise in user productivity with the help of new features, as well as an easy-to-navigate UI. Pretty much every single
page of Salesforce Lightning Experience is fully customizable. You can customize the homepage and record layouts, and you can
create dashboards to suit your specific needs.
Check out the slideshow below to see the evolution of Salesforce…
10. Can you describe an example sales process that a company might implement?
Sales Cloud is Salesforce’s most popular product – it’s more than likely that you will need to support this product. This is why it’s
more important than ever to be able to recommend and support a company’s sales process.
When someone refers to a sales process, they are referring to the process that a salesperson will follow in order to sell a product or
service to a potential customer. This is then translated into the “Lead Status” and “Opportunity Stage” fields.
At an extremely basic level, that could look like the following: Qualify > Discover > Analysis > Proposal > Negotiation > Closed Won
(or Lost).
Here is an example below that includes a full Sales process, from entering the organization at the Lead stage, all the way through
to its closing.
11. Can you describe an example service process that a company might implement?
Similar to the above questions, it’s important for Salesforce professionals to understand how a customer support organization
works and the different stages they go through to solve a case.
Unlike a sales process that is split across the Lead & Opportunity objects, service processes are contained on the case object.
Here is an example of a Service process: New > Working > Waiting on Customer > Escalated > Closed.
12. What are objects in Salesforce and how are they used?
In normal database terms, an object in Salesforce is simply a table of data. A table of data will contain various fields and, in turn,
these fields contain information like an email address, phone number, or company name.
There are two types of objects in Salesforce: standard and custom. Standard objects are those that come out of the box with
Salesforce products. For example, in most Salesforce products, Accounts & Contacts come as standard. In Sales Cloud, you will
get objects such as Lead & Opportunity, whilst in Service Cloud, Cases & Entitlements will be standard.
Custom Objects, on the other hand, are created by you. These are the objects that can be created as your foundation for building
custom applications.
13. Salesforce has an App Store similar to an iPhone. What is this called? Can you name some apps you
have used in the past?
One of Salesforce’s selling points is the AppExchange. This has nearly enough similar functionality to the iPhone App Store or the
Google Play Store. You can install pre-built apps directly into your Salesforce org to easily add additional functionality. Some of the
most popular apps include e-Signature, Document Generation, and Form tools.
There is a near certainty that any Salesforce company you join will be using at least one AppExchange app – this is why it’s
important to have an understanding of how to use these applications.
Check out some of the most popular apps in the post below and remember that most apps have a free trial, so there is no harm in
getting stuck in.
Read More: Best Salesforce Apps in 2021
14. How are changes tested in Salesforce before being deployed to Production?
A fundamental concept of any IT system is that changes should never be made in Production. They need to be tested in a safe
environment to ensure nothing breaks and user processes are not disrupted.
Salesforce provides a feature known as Sandboxes. These replicate your Production configuration, giving you a safe environment
to test changes and implement new features.
Sandboxes come in different flavours, ranging from a Developer sandbox that only contains your custom configuration, all the way
through to Full Copy Sandboxes, that contain all your configuration and data.
Read More: What is a Salesforce Sandbox? A Beginners Guide
15. Can you describe some of the main differences between Salesforce editions? (e.g. Professional &
Enterprise)
Salesforce has a few different versions of its products including, Essentials, Professional, Enterprise, and Unlimited. It’s important
to understand some of the differences, at least from a high level. If you join an organization that has a lower tier than you are used
to, it may reduce the functionality you can implement. Here are a few of the main differences:
Functionality: Most Salesforce editions will contain core CRM functionality including Account & Contact fields, email integration, and the mobile app. However, some of the lower editions will not
include automation, API availability for integration, or some advanced features such as Flow.
Limits: All Salesforce editions have some kind of limits, these can include daily API calls, data storage limits, custom apps, or the number of custom objects of fields. Higher-level editions will have
higher limits.
Cost: As you might have guessed, the more advanced versions can cost a lot more. You can expect the Essentials version to cost $25/month per user and the Unlimited one to cost $300/month.
21. Can you describe the differences between a Role and a Profile?
Roles and Profiles are two fundamental concepts of the Salesforce platform. They control what users can see and do on the
platform.
Profiles control what a user can do on the platform – for example, they control what kind of access rights a user has to a certain
object, such as create, read, edit, or delete. They also control individual permissions such as “Export Reports”, “Create Dashboard
Folders”, or “Modify All Data”.
Roles, on the other hand, are used to control what users can see. They are designed to open up access through a hierarchy so that
more senior members of the organization can see more records. For example, someone at the bottom of the hierarchy, like an
Account Executive, might be only able to see their own accounts. But the VP Sales US would be able to see all accounts owned by
individuals below them.
*It’s worth noting that even if
the Salesforce Admin is below the CEO in the hierarchy. The “Modify All Data” permission will allow them to see all data in Salesforce.
22. What are some of the automation tools available to admins, and how can they be used to help
businesses?
Automation tools in Salesforce are an admin’s best friend. They are designed to be easy to use and enable businesses to automate
complex processes. This, in turn, helps users to be more productive, allowing them to focus on revenue-generating activities
instead of manual admin work.
For example, once an Opportunity is closed-won, you could easily create automation to create a case, which prompts the customer
success team to get in touch with the customer to begin onboarding.
Examples of automation tools include Workflow, Process Builder, and Flow. Salesforce are currently in the process of retiring both
Workflow and Process Builder, so Flow will be the best automation tool to use going forward, with Salesforce only introducing new
features for this tool.
Read More: Process Builder Vs Flows – Become the Ultimate Admin
23. What are the main types of relationships you can create between objects in Salesforce?
Creating relationships between Salesforce objects is a fundamental skill. It’s important to create them in a scalable way, ensuring
you pick the right relationship for the right solution.
The most common types are the Lookup and Master-detail relationships. Lookups can be defined as loosely coupled, meaning that
you can relate records easily to other records in a one-to-many fashion.
Master-detail relationships, on the other hand, are tightly coupled. This means that a child record cannot exist without a parent
record, and if a parent record is deleted, the child also gets deleted with it. For a full overview of all seven Salesforce relationships,
check out the article below…
Read More: The Types of Relationships in Salesforce
24. Describe the differences between Page Layouts and Record Types
Page Layouts and Record Types are some of the first features that a Salesforce professional needs to learn. They control the user
interface in various ways and can be used in conjunction with each other to create customized experiences for your users.
Page Layouts determine which fields are displayed to your users on a record. They also allow you to add fields, sections, custom
buttons, and other features. The “Details” tab (in the image below) contains a lot of the elements that are controlled by the page
layout.
Record Types, on the other hand, let you offer different business processes, picklist values, and Page Layouts to your users. For
example, one of the most common use cases of Record Types would be to create two different sales processes on the Opportunity
object. Each with different sales stages and Page Layouts.
This means that with Record Types you can now apply multiple Page Layouts per object, per user profile.
Read more: When to use Record Types vs. Page Layouts?
25. Describe a few ways that Account and Contact information can be imported into Salesforce?
Importing data into Salesforce is a vital skill to hold, but it’s also important to understand the differences between the main tools
available:
Data Loader: The Data Loader will be a staple of any Salesforce professional’s toolkit. It allows you to import, export, update and delete large amounts of records in a single operation. The Data
Loader has to be downloaded to your desktop for use.
Data Import Wizard: The Data Import Wizard is a simplified tool that, as the name suggests, allows you to import data into Salesforce. The wizard is accessed from within Salesforce and also has
deduplication features.
Dataloader.io: Dataloader.io is an advanced, cloud-based data loader that is packed full of features. Whilst this is primarily a paid product provided by MuleSoft, the free version allows a certain
number of importing/exporting activities and is very useful for some more complex scenarios.
Read More: The Best Data Loaders for Salesforce
26. What is a Junction Object?
A junction object is used to create many-to-many relationships in Salesforce. This is used when a normal parent-child or a one-to-
many relationship doesn’t work.
This is exactly how the Opportunity and Product tables are joined in Salesforce. Check out the article below for more details…
Read more: What is a Junction Object in Salesforce?
27. What Salesforce product can be used to provide your Partners with the ability to create Leads and
Opportunities?
The Salesforce product you are looking for here is called the Experience Cloud (previously called Community Cloud). This allows
you to create portals that connect to your Salesforce instance for a specific purpose. Two of the most common types of portals
include…
Partner Portal: This is an area where your partners can create leads and manage the sales cycle of opportunities. All partner activity can be viewed within your Salesforce org, along with the
provision of full reporting capabilities.
Customer Portal: A common use case for a customer portal is to provide support as well as help articles. Customers can log cases, as well as search knowledge bases for answers to their queries.
You can even go as far as to create a community that allows customers to interact with each other.
Read More: Ultimate Guide to EVERY Salesforce Product in 2021
28. Can you name the types of Salesforce reports and the differences between them?
The reporting capabilities in Salesforce are a favorite amongst users, so it’s important to understand the types of reports and their
differences…
Tabular: This is the simplest of reports and is suited just to show lines of data and nothing else. It is similar to an Excel spreadsheet. If you just want to show data without the need to show totals,
calculations or groups of data, then this is the report for you. It is also best to use this report type if you are planning to export data.
Summary: As soon as you add a grouping, you will turn the report into a summary report. Summary reports are probably the most commonly used and are great for showing groups of data, e.g., if
you want to see the number or value of opportunities per account, you would group your report by Account Name. You can also subgroup fields by dragging them under the initial group.
Matrix: Matrix reports are very similar to a summary, but they allow you to group by rows as well as columns to see different totals. Building on the example above, you might want to see the value of
opportunities per account, by month. So you would see that Edge Communications has $100,000 of opportunities in January, $50,000 in February and so on.
Joined Reports: Joined reports allow you to create two separate reports so that you can compare data. You could use a Joined report to show the total number of opportunities and cases per
account, side by side.
Read More: How to Create a Report in Salesforce
Page Layout: On a Salesforce Page Layout, you also have the option to make fields read only or required. This is considered a ‘soft’ limit, as it will only apply if you are creating a new record via the
Salesforce interface, not when uploading via a data loader.
Validation Rules: Finally, we have validation rules. These have much more advanced logic and can be built to only make a field required, under a certain condition, e.g. if Opportunity Stage = Closed
Won, make X field required. Validation rules have a hard limit.
40. What is the difference between Lightning Components and Lightning Web Components?
Back in 2014, Lightning Components were originally released alongside the Lightning Experience; they use a standardized
JavaScript framework.
Lightning Web Components were released in early 2019 and, instead, use an updated web standards-based framework. This
provides easier accessibility for users who are unfamiliar with the Salesforce platform. They utilize standard technology such as
CSS, HTML, and updated JavaScript.
Salesforce powers businesses by managing sales, marketing, and customer data – but only if you
have the right talent to operate its software effectively. Hiring the best means avoiding poor
configurations and weak security that can derail customer trust.
To avoid this, we’ve put together this Salesforce interview questions guide. It’ll arm you with 32
smart Salesforce questions to pinpoint candidates who truly know their stuff and can take your
business to the next level. You’ll also learn how to identify the best answers when evaluating your
top picks.
Table of contents
Key takeaways
What are tricky Salesforce interview questions?
Top 3 reasons to include tricky Salesforce interview questions in your hiring campaign
32 tricky Salesforce interview questions and answers
How to add tricky Salesforce interview questions to your hiring campaign
Identify top Salesforce talent with TestGorilla
FAQs
Key takeaways
Salesforce is essential for many businesses, but hiring the right talent is critical to unlock its
full potential.
Use tougher Salesforce interview questions to assess technical expertise within the
Salesforce platform and its integrations, as well as crucial soft skills like problem-solving and
adaptability.
Tricky Salesforce interview questions – combined with skills-based hiring – help eliminate
hiring bias and ensure you’re hiring as smartly as possible.
TestGorilla’s skills-based assessments enable you to efficiently and effortlessly evaluate
Salesforce candidates.
What are tricky Salesforce interview
questions?
When we discuss “tricky” interview questions, we don’t mean being deceptive, but instead, asking
questions that are challenging and thought-provoking.
These tricky questions go beyond the basics and enable you to assess a candidate’s problem-
solving skills and technical knowledge carefully. Complex, scenario-based Salesforce interview
questions help star candidates stand out and showcase their ability to handle demanding
situations.
There are several types of tricky Salesforce interview questions, each focusing on different aspects
of a candidate's capabilities. These include:
2. Comparative questions
Answering these questions, candidates will compare and contrast different Salesforce features,
functions, or development approaches. For example, candidates may need to explain the
differences between master-detail and lookup relationships.
3. Scenario-based questions
These provide candidates with hypothetical situations or challenges that Salesforce professionals
often encounter. Candidates must provide effective solutions and explain their thought processes
to demonstrate their ability to handle complex scenarios.
4. Technical questions
Technical Salesforce questions delve into Salesforce concepts, features, and best practices. For
instance, they can assess candidates’ understanding of Visualforce, Apex code, Salesforce Object
Query Language (SOQL), and governor limits.
1. Technical proficiency
Complex Salesforce questions enable you to measure candidates’ technical expertise. By
presenting tricky scenarios and asking for in-depth explanations of Salesforce features, you can
identify candidates with a deep understanding of the platform's capabilities and limitations.
This way, you can easily separate your most knowledgeable applicants from the rest of your
candidate pool and advance them to the next stage of recruitment.
These questions also allow applicants to showcase their ability to adapt and thrive in challenging
situations. They can share examples of when they’ve used quick thinking and flexibility to
navigate the ever-changing Salesforce landscape.
3. Hire-readiness
Asking tricky interview questions gives you a comprehensive view of your Salesforce candidates’
skills. By combining these questions with other pre-employment assessments, like personality and
job-specific tests, you can make better hiring decisions overall.
In turn, you’ll create a stronger, more skilled Salesforce team that can tackle complex projects,
find innovative solutions, and drive continuous improvement.
Asynchronous processing, such as Queueable Apex or Batch Apex, helps by executing tasks in
separate transactions, allowing more governor limits to apply independently. This approach is
useful for handling large data volumes or long-running processes without hitting limits.
This means that the class will respect the record-level access permissions of the current user, and
users will only be able to access records for which they have the appropriate permissions based on
their role, profile, and sharing settings.
Additionally, use helper methods to perform complex logic and avoid repeating code, ensuring
streamlined execution and minimizing resource consumption.
To optimize Flows:
1. Use sub-flows to break down complex processes into manageable components.
2. Leverage fault paths to handle errors gracefully.
3. Avoid unnecessary loops and conditions that may impact performance.
4. Regularly test and debug Flows using the Flow Debugger.
5. Monitor Flow performance in the setup’s Flow Usage Metrics to identify bottlenecks.
Flows simplify automation by reducing dependency on Apex code while providing powerful,
scalable solutions.
7. How can you implement one-to-many relationships
in Salesforce?
You can use the lookup and master-detail fields to create one-to-many relationships in Salesforce.
These fields help connect records from one object to records in another object.
With a lookup field, you can link one record from the first object to one record in the second
object. Meanwhile, a master-detail field connects multiple records in the second object to one
record in the first object.
When something unexpected happens, try-catch blocks are used to catch and handle the error
gracefully. This works by enclosing code with an exception in a try block, which is then enclosed in
a catch block if the try block itself shows an exception. Instead of showing a clunky error message,
it can display a friendly message to users or log the issue for developers to fix.
Unlike custom settings, metadata types support version control and are ideal for managing
reusable, declarative configurations. For example, they can store API endpoint URLs or thresholds
for automated processes.
For exports, tools such as Data Export and Data Export Service are used to get data out of
Salesforce and save it as files. It's like making a copy of the information for use outside of
Salesforce.
Handling data imports and exports helps keep the information up-to-date and lets users work with
data from different places easily.
Another method is using the Salesforce Reports and Dashboards feature. You can create a report
to filter and find the records you want to update, then use the Mass Edit option to change multiple
records simultaneously.
You can also set up a custom list view. To do this, you’ll first need to enable special permissions on
the profile user interface, including the Mass edit from lists, Inline editing, and Enhanced lists
options.
From there, you can create a list view and specify different record types and visibilities. Once
you’ve set up the list view, click the bulk edit checkbox at the top to select all the records. Any
changes you make will update the entire list.
Use Flows for declarative, point-and-click automation such as field updates, sending notifications,
or simple logic. Flows are easier to maintain and require no coding expertise.
Use Apex triggers for complex, programmatic tasks like handling multiple objects simultaneously,
managing large data volumes, or invoking third-party APIs.
For maintainability, prioritize Flows whenever possible unless the business logic necessitates Apex.
The main purpose of using the @future annotation is to offload time-consuming or resource-
intensive tasks from the main transaction, making the application more efficient and responsive.
It’s commonly used for tasks like sending email notifications, performing callouts to external
systems, or processing large volumes of data.
On top of that, Salesforce enables you to export org data in CSV files. This serves as a backup of
your information in the event of a security breach or data loss.
Dynamic SOQL queries, on the other hand, are constructed at runtime as strings and allow for
building queries based on dynamic conditions or variables, offering more flexibility in handling
varying query requirements.
Use custom labels when you need to store static text or messages in a centralized and
translatable manner. This provides a more flexible and scalable approach to managing text
content. They’re often used for things like help or error messages, as they can be set to appear in
various languages, depending on where a user accesses the platform.
To properly assess each Salesforce candidate, use a multi-measure testing technique that pairs
challenging questions with skills-based tests, personality assessments, and more.
TestGorilla provides a library of 400+ scientifically backed pre-employment tests, which you can
mix and match to create the perfect assessment. For Salesforce roles, in particular, you can use
the following:
Salesforce CRM test: Measures skills in managing leads, accounts, and contacts, as well as
generating custom reports, tracking and forecasting, integrating with APIs, customizing data
and layouts, and much more.
APEX Salesforce test: Helps assess proficiency in Apex fundamentals and design patterns,
SOQL/SOSL queries, and the Salesforce data model – as well as identify candidates skilled in
Lightning Platform customization.
Salesforce for BDRs test: Evaluates how effectively BDR candidates use Salesforce to
contribute to sales team goals and manage workload.
Personality tests (DISC and Enneagram): Offer insights into applicants’ behavioral traits.
Culture Add test: Shows you how well each candidate will mesh with your existing team
and company culture.
Soft skills tests: Measure communication, motivation, time management,
1. What is Salesforce?
This is one of the most basic salesforce interview questions, where the interviewer is simply checking if you can
club your knowledge into a quick answer or not! Here’s a short and straightforward answer to this salesforce
interview question - Salesforce is the most effective Customer Relationship Management (CRM) product that is
delivered to subscribers as a cost-effective software-as-a-service (SaaS).
In Salesforce, custom objects refer specifically to database tables that store data related to your company in
Salesforce.com.
Once the custom object is defined, the subscriber can perform the following tasks:
Share custom tabs, custom apps, custom objects, and various other related components.
None of these tasks can be accomplished until the custom object has a definition.
4. What is Self-Relationship?
A Self-Relationship is a lookup relationship to the same object. It is this premise that allows users to take the object
“Merchandise” and create relationships with other objects.
The more experienced we are, the more we grow to understand that the questions we ask or the answers we give
in an interview say a lot about our enthusiasm and level of interest for a product, company, or organization. This is
definitely the case with Salesforce, the mightiest Customer Relationship Management (CRM) service in the world.
And if you wish to crack your next interview, these salesforce interview questions should help you out to prepare
beforehand and crack the interview seamlessly!
"Hiring for skills is 5X more predictive of job performance than hiring for education and more than two times more
predictive than hiring for work experience."
Source: McKinsey Report | Taking a skills-based approach to building the future workforce
"Skilled Professionals with certification are 1.5X more likely to get a new job/ salary hike/ promotion"
Have a great start to your career by upskilling yourself in one of the top most in-demand skill with this free course
on ‘Salesforce Administrator Basics’ with a SkillUp verified certificate 📃upon completion.
1. What is Salesforce?
This is one of the most basic salesforce interview questions, where the interviewer is simply checking if you can
club your knowledge into a quick answer or not! Here’s a short and straightforward answer to this salesforce
interview question - Salesforce is the most effective Customer Relationship Management (CRM) product that is
delivered to subscribers as a cost-effective software-as-a-service (SaaS).
Enroll in this Salesforce Administrator Basics now, unlock the verified certificate & become job-ready for Salesforce-
related job roles!
In Salesforce, custom objects refer specifically to database tables that store data related to your company in
Salesforce.com.
Once the custom object is defined, the subscriber can perform the following tasks:
Share custom tabs, custom apps, custom objects, and various other related components.
None of these tasks can be accomplished until the custom object has a definition.
4. What is Self-Relationship?
A Self-Relationship is a lookup relationship to the same object. It is this premise that allows users to take the object
“Merchandise” and create relationships with other objects.
Become job-ready for Salesforce Administrator roles now with this Salesforce Administrator Basics course for free!
In Salesforce, the object relationship overview links custom object records to standard object records in a related
list. This is helpful to track product defects in related customer cases. Salesforce allows users to define different
types of relationships by creating custom relationship fields on an object.
Changing from the multi-select picklist, checkbox, auto number to other types.
SaaS is subscription-based, so clients can choose not to renew and discontinue using the program at any time
without penalty other than not being able to use Salesforce. SaaS is intended to help users avoid heavy initial
startup fees and investments. SaaS applications use a simple Internet interface supported by easy integration.
The more experienced we are, the more we grow to understand that the questions we ask or the answers we give
in an interview say a lot about our enthusiasm and level of interest for a product, company, or organization. This is
definitely the case with Salesforce, the mightiest Customer Relationship Management (CRM) service in the world.
And if you wish to crack your next interview, these salesforce interview questions should help you out to prepare
beforehand and crack the interview seamlessly!
"Hiring for skills is 5X more predictive of job performance than hiring for education and more than two times more
predictive than hiring for work experience."
Source: McKinsey Report | Taking a skills-based approach to building the future workforce
"Skilled Professionals with certification are 1.5X more likely to get a new job/ salary hike/ promotion"
Have a great start to your career by upskilling yourself in one of the top most in-demand skill with this free course
on ‘Salesforce Administrator Basics’ with a SkillUp verified certificate 📃upon completion.
1. What is Salesforce?
This is one of the most basic salesforce interview questions, where the interviewer is simply checking if you can
club your knowledge into a quick answer or not! Here’s a short and straightforward answer to this salesforce
interview question - Salesforce is the most effective Customer Relationship Management (CRM) product that is
delivered to subscribers as a cost-effective software-as-a-service (SaaS).
Enroll in this Salesforce Administrator Basics now, unlock the verified certificate & become job-ready for Salesforce-
related job roles!
Once the custom object is defined, the subscriber can perform the following tasks:
Share custom tabs, custom apps, custom objects, and various other related components.
None of these tasks can be accomplished until the custom object has a definition.
4. What is Self-Relationship?
A Self-Relationship is a lookup relationship to the same object. It is this premise that allows users to take the object
“Merchandise” and create relationships with other objects.
Become job-ready for Salesforce Administrator roles now with this Salesforce Administrator Basics course for free!
In Salesforce, the object relationship overview links custom object records to standard object records in a related
list. This is helpful to track product defects in related customer cases. Salesforce allows users to define different
types of relationships by creating custom relationship fields on an object.
Changing from the multi-select picklist, checkbox, auto number to other types.
SaaS is subscription-based, so clients can choose not to renew and discontinue using the program at any time
without penalty other than not being able to use Salesforce. SaaS is intended to help users avoid heavy initial
startup fees and investments. SaaS applications use a simple Internet interface supported by easy integration.
Showcase a verified certificate of completion on your resumé to advance your Salesforce career by 2X faster with
salary hike
Professionals with a verified certificate for your skills on your resumé land top-paying job role 2X faster!
Salesforce is a tracking program that records a number of helpful basic details, such as:
Most importantly, Salesforce tracks and reports repeat customer activity, which is the key to any
sales organization.
Salesforce recognizes two relationship types: Master-detail relationships and Lookup relationships.
10. What is the trigger?
The trigger is the code that is executed before or after the record is updated or inserted.
This is one of the most frequently asked Salesforce interview question. Workflow is an automated process that fires
an action based on evaluation criteria and rule criteria. As described above, Trigger is the code that is executed on
or after the record is updateThe more experienced we are, the more we grow to understand that the questions we
ask or the answers we give in an interview say a lot about our enthusiasm and level of interest for a product,
company, or organization. This is definitely the case with Salesforce, the mightiest Customer Relationship
Management (CRM) service in the world. And if you wish to crack your next interview, these salesforce interview
questions should help you out to prepare beforehand and crack the interview seamlessly!
"Hiring for skills is 5X more predictive of job performance than hiring for education and more than two times more
predictive than hiring for work experience."
Source: McKinsey Report | Taking a skills-based approach to building the future workforce
"Skilled Professionals with certification are 1.5X more likely to get a new job/ salary hike/ promotion"
Have a great start to your career by upskilling yourself in one of the top most in-demand skill with this free course
on ‘Salesforce Administrator Basics’ with a SkillUp verified certificate 📃upon completion.
1. What is Salesforce?
This is one of the most basic salesforce interview questions, where the interviewer is simply checking if you can
club your knowledge into a quick answer or not! Here’s a short and straightforward answer to this salesforce
interview question - Salesforce is the most effective Customer Relationship Management (CRM) product that is
delivered to subscribers as a cost-effective software-as-a-service (SaaS).
Enroll in this Salesforce Administrator Basics now, unlock the verified certificate & become job-ready for Salesforce-
related job roles!
Once the custom object is defined, the subscriber can perform the following tasks:
Share custom tabs, custom apps, custom objects, and various other related components.
None of these tasks can be accomplished until the custom object has a definition.
4. What is Self-Relationship?
A Self-Relationship is a lookup relationship to the same object. It is this premise that allows users to take the object
“Merchandise” and create relationships with other objects.
Become job-ready for Salesforce Administrator roles now with this Salesforce Administrator Basics course for free!
In Salesforce, the object relationship overview links custom object records to standard object records in a related
list. This is helpful to track product defects in related customer cases. Salesforce allows users to define different
types of relationships by creating custom relationship fields on an object.
Changing from the multi-select picklist, checkbox, auto number to other types.
SaaS is subscription-based, so clients can choose not to renew and discontinue using the program at any time
without penalty other than not being able to use Salesforce. SaaS is intended to help users avoid heavy initial
startup fees and investments. SaaS applications use a simple Internet interface supported by easy integration.
Showcase a verified certificate of completion on your resumé to advance your Salesforce career by 2X faster with
salary hike
Professionals with a verified certificate for your skills on your resumé land top-paying job role 2X faster!
Salesforce is a tracking program that records a number of helpful basic details, such as:
Most importantly, Salesforce tracks and reports repeat customer activity, which is the key to any
sales organization.
Salesforce recognizes two relationship types: Master-detail relationships and Lookup relationships.
10. What is the trigger?
The trigger is the code that is executed before or after the record is updated or inserted.
This is one of the most frequently asked Salesforce interview question. Workflow is an automated process that fires
an action based on evaluation criteria and rule criteria. As described above, Trigger is the code that is executed on
or after the record is updated or inserted.
10,191 learners who read this article already enrolled & completed the course ‘Salesforce Administrator Basics’ for
free to upgrade their career 👨💼💼.
Salesforce users can see their limit form setup easily by simply clicking data.com administration/Users. From the
data.com users section, the users can see their monthly limit and exactly how many records are exported during
the month.
One-to-many
Many-to-many
Master-detail
The relation types are quite logical once the user becomes familiar with the software program.
d or inserted.
Matrix report where grouping is based upon both rows and columns
Summary reports are detailed reports in which the grouping is based on columns.
Joined report which allows two or more reports to be joined in a single report
The more experienced we are, the more we grow to understand that the questions we ask or the answers we give
in an interview say a lot about our enthusiasm and level of interest for a product, company, or organization. This is
definitely the case with Salesforce, the mightiest Customer Relationship Management (CRM) service in the world.
And if you wish to crack your next interview, these salesforce interview questions should help you out to prepare
beforehand and crack the interview seamlessly!
"Hiring for skills is 5X more predictive of job performance than hiring for education and more than two times more
predictive than hiring for work experience."
Source: McKinsey Report | Taking a skills-based approach to building the future workforce
"Skilled Professionals with certification are 1.5X more likely to get a new job/ salary hike/ promotion"
Have a great start to your career by upskilling yourself in one of the top most in-demand skill with this free course
on ‘Salesforce Administrator Basics’ with a SkillUp verified certificate 📃upon completion.
1. What is Salesforce?
This is one of the most basic salesforce interview questions, where the interviewer is simply checking if you can
club your knowledge into a quick answer or not! Here’s a short and straightforward answer to this salesforce
interview question - Salesforce is the most effective Customer Relationship Management (CRM) product that is
delivered to subscribers as a cost-effective software-as-a-service (SaaS).
Enroll in this Salesforce Administrator Basics now, unlock the verified certificate & become job-ready for Salesforce-
related job roles!
In Salesforce, custom objects refer specifically to database tables that store data related to your company in
Salesforce.com.
Once the custom object is defined, the subscriber can perform the following tasks:
Share custom tabs, custom apps, custom objects, and various other related components.
None of these tasks can be accomplished until the custom object has a definition.
4. What is Self-Relationship?
A Self-Relationship is a lookup relationship to the same object. It is this premise that allows users to take the object
“Merchandise” and create relationships with other objects.
Become job-ready for Salesforce Administrator roles now with this Salesforce Administrator Basics course for free!
In Salesforce, the object relationship overview links custom object records to standard object records in a related
list. This is helpful to track product defects in related customer cases. Salesforce allows users to define different
types of relationships by creating custom relationship fields on an object.
Changing from the multi-select picklist, checkbox, auto number to other types.
SaaS is subscription-based, so clients can choose not to renew and discontinue using the program at any time
without penalty other than not being able to use Salesforce. SaaS is intended to help users avoid heavy initial
startup fees and investments. SaaS applications use a simple Internet interface supported by easy integration.
Showcase a verified certificate of completion on your resumé to advance your Salesforce career by 2X faster with
salary hike
Professionals with a verified certificate for your skills on your resumé land top-paying job role 2X faster!
Salesforce is a tracking program that records a number of helpful basic details, such as:
Most importantly, Salesforce tracks and reports repeat customer activity, which is the key to any
sales organization.
Salesforce recognizes two relationship types: Master-detail relationships and Lookup relationships.
10. What is the trigger?
The trigger is the code that is executed before or after the record is updated or inserted.
This is one of the most frequently asked Salesforce interview question. Workflow is an automated process that fires
an action based on evaluation criteria and rule criteria. As described above, Trigger is the code that is executed on
or after the record is updated or inserted.
10,191 learners who read this article already enrolled & completed the course ‘Salesforce Administrator Basics’ for
free to upgrade their career 👨💼💼.
Salesforce users can see their limit form setup easily by simply clicking data.com administration/Users. From the
data.com users section, the users can see their monthly limit and exactly how many records are exported during
the month.
One-to-many
Many-to-many
Master-detail
The relation types are quite logical once the user becomes familiar with the software program.
3 simple steps to get noticed by recruiters from Top companies for your C programming skills:
Step 1: Enroll in ‘Salesforce Administrator Basics’ course for FREE
Step 3: Post completion, Unlock the verified certificate and share on your resume/CV/ job profile
Matrix report where grouping is based upon both rows and columns
Summary reports are detailed reports in which the grouping is based on columns.
Joined report which allows two or more reports to be joined in a single report
18. What is the junction object and what purpose does it serve?
Junction objects are used to build many-to-many relationships between objects. For example, the user can take a
recruiting application where a position for a job can be linked to many candidates or can link a candidate to many
other jobs. In order to connect the data model, a third party object is referred to as a junction object. In the given
example, the junction object is “job application.”
The Audit Trail function in Salesforce is useful for gaining information or for tracking all the recent setup changes
that the administration has done in the organization. The audit trail can preserve data for up to six months.
20. Explain the Salesforce dashboard?
In Salesforce, the dashboard is a pictorial representation of the report. 20 reports can be added to a single
dashboard.
SOQL is Salesforce Object Query Language and SOSL is Salesforce Object Search Language. If you are sensing that
Salesforce is a culture unto itself, you are correct!
A Wrapper Class is a class whose instances are a collection of other objects and is used to display different objects
on a Visualforce page in the same table.
The sharing rules are applied when a user wishes to allow access to other users.
24. What are some benefits of using Salesforce?
Salesforce comes with a number of benefits. The most major ones are:
Provides a single communication platform for all the team members of a project
An object is a database table that contains data specific to an organization (columns are fields and rows are
records). There are two types of objects in Salesforce - custom object and standard object.
Standard object - A standard object is created by default in Salesforce. Eg: Contact, Account, and
Lead.
Custom object - A custom object is created by the user and can contain any information that the
user wants. Eg: You can create a custom “Location” object to store information about the location of
various branches of a company.
Static dashboards are the default dashboards which are visible to any user. You can use it to show organizational-
wide data to a set of users.
Dynamic dashboards display data tailored for a specific user. You can use it to show one user’s specific data, such
as the number of sales closed, leads converted, etc.
Governor limits control how much data can be stored on a shared database. They help to ensure that no one
monopolizes the shared resources (Storage, CPU, Memory).
28. What are some things that you can do to prevent governor limits?
Here are some best practices you can follow to ensure that a code does not hit the governor limits.
29. What happens to master-detail and lookup relationships when a record is deleted?
In a master-detail relationship, all the details are deleted when the master record is deleted. However, in a lookup
relationship, the child record remains even when the parent record is deleted.
In this salesforce interview question, the interviewer expects a thorough answer. Try giving as detailed answer as
you can to prove your salesforce knowledge. A sandbox is an exact replica of a database that can be used for
testing and development. It is very helpful because it allows you to test out new ideas on the duplicate database
without disturbing the original one.
Developer Sandbox - It contains a copy of the production org’s metadata and is intended for both
development and testing in an isolated environment.
Developer Pro Sandbox - It performs the same function as the developer sandbox, but can contain
larger datasets.
You cannot edit apex classes directly in a production environment. It needs to be first done in the sandbox, then
deployed in production where a user with Author Apex permission can make the changes.
Contact management: Easier contact management via access to interaction history and customers'
critical data.
Opportunity management: Enables users to view the activity timeline of their customers,
representing several stages of a deal for taking the next move.
Quote management: In-built quoting mechanism that quotes client data tracking the deal products,
including their standard price, quantity, product code, and price.
Lead management: An activity timeline providing access to up-to-date contacts. The CRM app is a
quick lead converter machine informing its users about the lead's original source.
Sales data: Provides accurate sales data at the right time and a faster connection with key decision-
makers.
Mobility: The mobile app allows users to access CRM data conveniently.
Workflow and approvals: Enables visual workflow for rapid designing and automating business
processes via drag-drop ability. Users can manage flexible approval processes for expenses or discounts.
File sync and share: Ease of sharing, discussing, and publishing content in real-time.
Dynamic dashboards and custom reports: Users gain a real-time picture of their business
performance in the market. They can also build their custom dashboard via drag and drop icons, adjust
the fields, and view data with filters. Charts give real-time data for the latest insights.
Sales forecasting: Tracks leads' journey and gives forecasting on sales by analyzing them.
An App is a logical container holding various details pertaining to the company like the name, logo, business
operations, and more. The user can customize apps to suit their needs or develop new apps by combining standard
and custom tabs. The following process is for creating an app in Salesforce: Setup → Build → Create → App → Click
on new.
The more experienced we are, the more we grow to understand that the questions we ask or the answers we give
in an interview say a lot about our enthusiasm and level of interest for a product, company, or organization. This is
definitely the case with Salesforce, the mightiest Customer Relationship Management (CRM) service in the world.
And if you wish to crack your next interview, these salesforce interview questions should help you out to prepare
beforehand and crack the interview seamlessly!
"Hiring for skills is 5X more predictive of job performance than hiring for education and more than two times more
predictive than hiring for work experience."
Source: McKinsey Report | Taking a skills-based approach to building the future workforce
"Skilled Professionals with certification are 1.5X more likely to get a new job/ salary hike/ promotion"
Have a great start to your career by upskilling yourself in one of the top most in-demand skill with this free course
on ‘Salesforce Administrator Basics’ with a SkillUp verified certificate 📃upon completion.
1. What is Salesforce?
This is one of the most basic salesforce interview questions, where the interviewer is simply checking if you can
club your knowledge into a quick answer or not! Here’s a short and straightforward answer to this salesforce
interview question - Salesforce is the most effective Customer Relationship Management (CRM) product that is
delivered to subscribers as a cost-effective software-as-a-service (SaaS).
Enroll in this Salesforce Administrator Basics now, unlock the verified certificate & become job-ready for Salesforce-
related job roles!
In Salesforce, custom objects refer specifically to database tables that store data related to your company in
Salesforce.com.
Once the custom object is defined, the subscriber can perform the following tasks:
Share custom tabs, custom apps, custom objects, and various other related components.
None of these tasks can be accomplished until the custom object has a definition.
4. What is Self-Relationship?
A Self-Relationship is a lookup relationship to the same object. It is this premise that allows users to take the object
“Merchandise” and create relationships with other objects.
Become job-ready for Salesforce Administrator roles now with this Salesforce Administrator Basics course for free!
In Salesforce, the object relationship overview links custom object records to standard object records in a related
list. This is helpful to track product defects in related customer cases. Salesforce allows users to define different
types of relationships by creating custom relationship fields on an object.
Changing from the multi-select picklist, checkbox, auto number to other types.
SaaS is subscription-based, so clients can choose not to renew and discontinue using the program at any time
without penalty other than not being able to use Salesforce. SaaS is intended to help users avoid heavy initial
startup fees and investments. SaaS applications use a simple Internet interface supported by easy integration.
Showcase a verified certificate of completion on your resumé to advance your Salesforce career by 2X faster with
salary hike
Professionals with a verified certificate for your skills on your resumé land top-paying job role 2X faster!
Salesforce is a tracking program that records a number of helpful basic details, such as:
Most importantly, Salesforce tracks and reports repeat customer activity, which is the key to any
sales organization.
Salesforce recognizes two relationship types: Master-detail relationships and Lookup relationships.
10. What is the trigger?
The trigger is the code that is executed before or after the record is updated or inserted.
This is one of the most frequently asked Salesforce interview question. Workflow is an automated process that fires
an action based on evaluation criteria and rule criteria. As described above, Trigger is the code that is executed on
or after the record is updated or inserted.
10,191 learners who read this article already enrolled & completed the course ‘Salesforce Administrator Basics’ for
free to upgrade their career 👨💼💼.
Salesforce users can see their limit form setup easily by simply clicking data.com administration/Users. From the
data.com users section, the users can see their monthly limit and exactly how many records are exported during
the month.
One-to-many
Many-to-many
Master-detail
The relation types are quite logical once the user becomes familiar with the software program.
3 simple steps to get noticed by recruiters from Top companies for your C programming skills:
Step 1: Enroll in ‘Salesforce Administrator Basics’ course for FREE
Step 3: Post completion, Unlock the verified certificate and share on your resume/CV/ job profile
Matrix report where grouping is based upon both rows and columns
Summary reports are detailed reports in which the grouping is based on columns.
Joined report which allows two or more reports to be joined in a single report
18. What is the junction object and what purpose does it serve?
Junction objects are used to build many-to-many relationships between objects. For example, the user can take a
recruiting application where a position for a job can be linked to many candidates or can link a candidate to many
other jobs. In order to connect the data model, a third party object is referred to as a junction object. In the given
example, the junction object is “job application.”
The Audit Trail function in Salesforce is useful for gaining information or for tracking all the recent setup changes
that the administration has done in the organization. The audit trail can preserve data for up to six months.
20. Explain the Salesforce dashboard?
In Salesforce, the dashboard is a pictorial representation of the report. 20 reports can be added to a single
dashboard.
SOQL is Salesforce Object Query Language and SOSL is Salesforce Object Search Language. If you are sensing that
Salesforce is a culture unto itself, you are correct!
A Wrapper Class is a class whose instances are a collection of other objects and is used to display different objects
on a Visualforce page in the same table.
The sharing rules are applied when a user wishes to allow access to other users.
24. What are some benefits of using Salesforce?
Salesforce comes with a number of benefits. The most major ones are:
Provides a single communication platform for all the team members of a project
An object is a database table that contains data specific to an organization (columns are fields and rows are
records). There are two types of objects in Salesforce - custom object and standard object.
Standard object - A standard object is created by default in Salesforce. Eg: Contact, Account, and
Lead.
Custom object - A custom object is created by the user and can contain any information that the
user wants. Eg: You can create a custom “Location” object to store information about the location of
various branches of a company.
Dynamic dashboards display data tailored for a specific user. You can use it to show one user’s specific data, such
as the number of sales closed, leads converted, etc.
Governor limits control how much data can be stored on a shared database. They help to ensure that no one
monopolizes the shared resources (Storage, CPU, Memory).
Here are some best practices you can follow to ensure that a code does not hit the governor limits.
29. What happens to master-detail and lookup relationships when a record is deleted?
In a master-detail relationship, all the details are deleted when the master record is deleted. However, in a lookup
relationship, the child record remains even when the parent record is deleted.
Developer Sandbox - It contains a copy of the production org’s metadata and is intended for both
development and testing in an isolated environment.
Developer Pro Sandbox - It performs the same function as the developer sandbox, but can contain
larger datasets.
Full sandbox - It is intended to be used only as a testing environment. It contains all the data of the
production org, including objects, attachments and metadata.
You cannot edit apex classes directly in a production environment. It needs to be first done in the sandbox, then
deployed in production where a user with Author Apex permission can make the changes.
32State the important features of Salesforce.
Contact management: Easier contact management via access to interaction history and customers'
critical data.
Opportunity management: Enables users to view the activity timeline of their customers,
representing several stages of a deal for taking the next move.
Quote management: In-built quoting mechanism that quotes client data tracking the deal products,
including their standard price, quantity, product code, and price.
Lead management: An activity timeline providing access to up-to-date contacts. The CRM app is a
quick lead converter machine informing its users about the lead's original source.
Sales data: Provides accurate sales data at the right time and a faster connection with key decision-
makers.
Mobility: The mobile app allows users to access CRM data conveniently.
Workflow and approvals: Enables visual workflow for rapid designing and automating business
processes via drag-drop ability. Users can manage flexible approval processes for expenses or discounts.
File sync and share: Ease of sharing, discussing, and publishing content in real-time.
Dynamic dashboards and custom reports: Users gain a real-time picture of their business
performance in the market. They can also build their custom dashboard via drag and drop icons, adjust
the fields, and view data with filters. Charts give real-time data for the latest insights.
Sales forecasting: Tracks leads' journey and gives forecasting on sales by analyzing them.
An App is a logical container holding various details pertaining to the company like the name, logo, business
operations, and more. The user can customize apps to suit their needs or develop new apps by combining standard
and custom tabs. The following process is for creating an app in Salesforce: Setup → Build → Create → App → Click
on new.
34. What are the different types of apps you can use in Salesforce?
Custom app: Suitable for business owners to build apps that cater to business requirements from
time to time.
Console app: Suitable only for a client service business, where the main focus is on tackling the
client's issues. It is comparatively less used in the market.
Role Profile
Mandatory to define a
Not mandatory
profile.
36. What is a profile in Salesforce? Can two different users have the same profile?
A profile is a collection of permissions and settings that define all a user can do in Salesforce, giving them the
authority to access certain records. There are various profiles, such as a sales profile, that can access contacts,
leads, campaigns, and more.
People under a department can have the same profiles. For instance, several people are assigned the same sales
profile in a sales department. So, any number of people can have the same profile.
Master-Detail is a relationship between a child and a parent where the parent is the master, and the detail
represents a child. It is useful to control the display of detail records based on the value in the master record.
The master object has complete control over the Detail object behavior. Also, the child's survival depends on the
parent because if the parent gets deleted, the child will automatically get deleted. Creating Roll-up summary fields
in master records calculates the child records' SUM, MIN, and AVG.
A workflow rule is a container for various workflow instructions, usually summed up in an if/then statement.
Communication: Salesforce Einstein Bots help automatically respond to chats on time and avoid
delay.
Data syncing: Data syncing from other applications like MailChimp and G Suite helps avoid the
challenges of moving from one software to another. The Salesforce mobile app allows data tracking
anytime and anywhere.
Data analytics tools: Salesforce's Einstein Analytics provides insights for users to address the
changing data instantly. It has several reporting tools and dashboards for data collection and work.
Track customer activity: The user can understand the customer's journey via the sales cloud for
easier access to their background and behavior.
Provide assistance via chat: The service cloud's live agent provides a chatbox depending on the
customer interaction and followers on the web page.
Consistent engagement: The gathered data in Salesforce's CRM allows the creation of consistent
marketing campaigns for current customers.
Building apps: Force.com simplifies building and customizing apps for any device.
Apex is a strongly typed OOP language that allows developers to execute transaction control statements and flow
on Salesforce platform servers in conjunction with calls to the API. Its syntax is similar to Java and serves as
database stored procedures. The code can be initiated via triggers on objects and requests from web services, and
they run on the Lightning platform.
Apex enables developers to incorporate business logic to system events, including button clicks, Visualforce pages,
and related record updates.
Permission sets are a collection of permissions/settings useful for giving the user access to numerous functions and
tools. Permission sets can be used for various users to extend their functional access without altering their profiles.
So, one can create a permission set instead of a separate profile every time.
42. What is the Force.com platform?
Force.com is the framework and codebase for the Salesforce application. It is a Platform as a Service (PaaS),
allowing users to simplify the design and deployment of cloud-based websites and applications. Developers
working on the Cloud IDE can deploy the applications on the servers of Force.com.
Charts: Provide comparisons and are divided into six types: line chart, horizontal bar chart, vertical
bar chart, donut, funnel, and pie.
44. What do you understand about validation rules in Salesforce?
Validation rules comprise a formula/expressions for evaluating the data in one or more fields in a record for
meeting the standards one specifies before the user saves the record. Based on the data evaluation, the result is a
"True" or "False" value.
They display an error message to the user if the condition is "True" due to an invalid value.
These rules are helpful for the enforcement of integrity constraints against the data. If a rule fails, Salesforce
proceeds to check other validation rules. One can create validation rules for objects, fields, case milestones, or
campaign members.
Visualforce is the UI for the Force.com platform, allowing developers to create sophisticated, custom UI suitable for
native hosting on the Lightning platform.
Its framework has a tag-based markup language and standard server-side controllers for basic database operations
like queries. Every Visualforce tag corresponds to a UI component such as a field, related list, or page section.
Visualforce works on the standard MVC model. A developer can control its components by utilizing the logic used in
standard Salesforce pages. They can also associate their own logic written in Apex with a controller class.
46 What are record types in Salesforce?
Record types allow you to associate different business processes and present various page layouts and picklist
values to users based on the user profile.
Administrators can associate record types with user profiles. Consequently, different users can see different page
layouts and picklist values in the record's detail page. The two prominent benefits of record types are as follows:
Page layouts control the layout and organization of fields, buttons, Visualforce, custom links, and related lists on
object record pages. They help organize user interface pages by determining which custom links, fields, and
related lists are required, read-only, and visible to the user.
For a customized experience, one can create multiple page layouts and apply them to various user groups.
Before triggers: For updating and validating record values before they are saved to the database.
trigger TriggerName on ObjectName(before event) //Here event can be insert, update or delete
code_block
After triggers: For accessing field values of the records set by the system and stored in the
database. You can use these field values for making changes in other records.
trigger TriggerName on ObjectName(after event) //Here event can be insert, update or delete
code_block
}
49 What do you understand about the term fiscal year or economical year in Salesforce?
The economical or fiscal year is a time period used for calculating annual financial statements. It is based on a
company's financial year's starting and ending date. The business that Salesforce conducts and the Salesforce
revenue are considered. The two types of economical years in Salesforce are:
Normal or standard fiscal year: It follows the Gregorian calendar for estimations and has a 12-month
structure. It can begin with the first day of a month of your choice belonging to a particular year.
Custom fiscal year: It is applicable for the companies following weekly or quarterly financial
planning.
50. What is a skinny table, and what are the major considerations for a skinny table?
Skinny tables are useful in accessing the frequently used fields while avoiding joins. They enhance the
performance of certain read-only operations like reports, list views, and more. They are highly effective as they
stay in sync with source tables even in case of a modification in the source table.
Without contacting Salesforce customer support, one cannot create, access, or modify skinny tables.
Role hierarchy: When a user is added to a role, all users above the current user in the role hierarchy
have access to reading and sharing the records and inheriting permissions. The steps for role hierarchy
are:
Setup → Manage Users → roles → set up roles and click on 'add role', → create a name and click on save.
OWD: Organization-Wide Defaults allow you to define an organization's baseline setting and give
permissions to the organization-wide. It helps define a user's accessibility level where they can view other
users' records. For OWD, follow these steps:
Manual sharing: For sharing a single record/file to a particular user/group of users via manual
access. A button is available on the detail page of the record when the OWD setting is private.
Criteria based sharing rules: We have to share records based on conditions. For instance, share
records with a user/group with the criteria of the country- India. The steps for sharing are:
Setup → security controls → sharing settings → select the object, provide name and conditions, and then click on
save.
Apex sharing: One can share every object in Salesforce by creating a record for the shared object.
Future annotations specify methods that are executed asynchronously. These methods with future annotation
should be static and can only return a void type. The arguments mentioned should be primitive data
types/collections of primitive data types/ arrays of primitive data types.
A method specified with @future annotation will be executed once Salesforce has available resources.
The Salesforce Object Query Language or SOQL is employed in querying the records from database.com as and
when required. The two types of SOQL statements are as follows:
Static SOQL: It is written using [] (array brackets) and is similar to IINQ (Ion Integrated Query). It is
suitable when there are no dynamic changes in the SOQL query.
Dynamic SOQL: It is suitable for referring to the SOQL string creation at run time with Apex code. It
allows the creation of more flexible applications. For instance, you can create a search based on updated
records or end-user input with varying field names.
54. What are the various types of email templates available in Salesforce?
Text: All the users in an organization have access to creating or changing these templates.
HTML with letterhead: Users with the "Edit HTML Templates" permission and administrators can
create these templates based on a letterhead.
Custom HTML: These are an extension of HTML with a letterhead. Administrators and users with
"Edit HTML Templates" permissions can create them without using the letterhead.
Visualforce: Administrators and developers can create them using Visualforce. They have advanced
functionalities such as merging with a recipient's data.
Salesforce Lightning is a component-based application development framework with a collection of tools and
technologies for effectively increasing the Salesforce platform performance. The tools include visual upgrades,
optimized interfaces, and more. It simplifies processes for business users who have no programming experience.
It allows easy and quick creation of applications that solve business issues and enhance engagement.
One of the most powerful features of Salesforce Lightning is Lightning Web Components (LWC), which provides a
modern approach to building UI components with improved performance and efficiency. If you're preparing for a
Salesforce development role, exploring these LWC Interview Questions and Answers can help you master the key
concepts and excel in your interview.
Has style guides and provides user experience practices for app development.
Lightning Connect is an integration tool for applications of Force.com to consume data from an
external source that meets the OData specification.
Salesforce has several APIs for developers to interact with the system. Examples of Salesforce API are:
Streaming: The Streaming API is useful for triggering and receiving notifications when a change is
made to Salesforce data according to the defined SOQL query criteria. It can be used to push notifications
from the server to the client based on defined criteria.
Bulk: It provides programmatic access for quick loading and querying a huge amount of data into
your Salesforce organization.
Salesforce is a Customer Relationship Management(CRM) platform that uses cloud technology to bring
companies and customers together. It helps businesses to manage their customer’s data, and track their
activities efficiently. It supports powerful, connected products for improving your marketing, sales, commerce,
service, IT, and more. Salesforce CRM does not need any technical knowledge to set up and manage the same.
CRM
Scope of Salesforce
Salesforce is a preferred career option if you are looking forward to CRM. A lot of companies like Accenture,
Adidas, Atlas, Cisco, Deloitte, Godrej, Infosys, etc. are making use of Salesforce. Those who opted for Salesforce
are enjoying a high scale of pay and extreme job satisfaction.
As the number of Salesforce platform end-users increases, companies face a lack of proficient skill sets in
Salesforce. They want Salesforce-proficient people who know the platform very well and can use its several
services for business needs. Hence, Salesforce professional count is increasing day by day.
Let’s look at the following comprehensive set of Salesforce Interview Questions and Answers which have
been categorised below:
Automation functions in Salesforce include the functions such as sending follow-up emails, tracking the
customer map journey, performing other marketing activities to boost the sales of the company, etc.
A workflow rule is a major container for a set of workflow instructions. These instructions are usually
summed up in an if/then statement. Workflow rules are divided into two main components. They are:
o Criteria: The “if” part of the “if/then” statement i.e., what must be true of the record for the workflow
rule to execute the related actions.
o Actions: The “then” part of the “if/then” statement i.e., what to do when the record meets the
criteria.
Consider an example for a workflow, “if it is raining, then bring an umbrella”. In this example, the criteria
are “it is raining” and the action is “bring an umbrella”. If the criteria aren’t met, then the action isn’t
executed. The workflow rule’s actions are executed only when a record meets all the criteria of a workflow
rule.
Workflow In Salesforce
Real-Life Problems
Create My Plan
2. What is an object in Salesforce?
In Salesforce, objects are database tables that are used to store the data of an organization. There are two types
of objects in Salesforce. They are:
Standard object: These are the objects provided by the Salesforce platform, which includes contacts,
accounts, cases, campaigns, opportunities, leads, products, contracts, reports, dashboards, etc.
Custom object: They are objects created by developers based on the business process. It stores the
important and unique information of an organization. It gives a structure for data sharing. The custom
object includes page layouts, custom fields, relationship to other objects, custom user interface tab, etc.
Custom app: They are mainly used by business owners who want to build an app that suits their business
requirements from time to time. It’s widely used in the market.
Console app: It can be used only in the client service business, where we focus on tackling the client’s
issues. Compared to a custom app it’s not widely used in the market.
By
20 Mar '25•7:30 PM
|
Certificate Included
Know More
Reserve My Spot
22 Mar '25•5:00 PM
|
Certificate Included
Know More
Reserve My Spot
Roadmap to Become a Machine Learning Engineer
Suraaj Hasija, Instructor
27 Mar '25•7:30 PM
|
Certificate Included
Know More
Reserve My Spot
Monolithic and Microservices Architecture
Deepak Kasera, Lead Instructor
27 Mar '25•7:30 PM
|
Certificate Included
Know More
Reserve My Spot
Get in-depth understanding of Kafka and Zookeeper
Anshuman Singh, Co-Founder
29 Mar '25•5:00 PM
|
Certificate Included
Know More
Reserve My Spot
6. What is an Audit trail in Salesforce?
An Audit trail in Salesforce is a unique feature that helps in tracking the changes made in the organization by you
and other administrators. In that way, you will always get to know who has modified the project at the last
minute. It is helpful for the organization with more administrators.
By using an audit trail, you can get to know the details about changes made, the date and time of the change,
and the username of the team member who made the changes.
Topic Buckets
Mock Assessments
Reading Material
View Tracks
8. What is a profile in Salesforce? Can two users have the same profile?
The profile in Salesforce is defined as a collection of settings and permissions that define what a user can do in
Salesforce. So it gives you the authority to access certain records in Salesforce. There are multiple profiles
available in Salesforce. For example, a sales profile can have access to leads, contacts, campaigns,
opportunities, etc.
The people who work under one department may be assigned the same profiles. Consider the case of sales
profile, many people work under it and each person who works under this is assigned with the same profile.
Hence we can say that any number of people can have the same profile.
The master object completely takes control of the behavior of the Detail object. The survival of the child is
dependent on the parent, because if the parent gets deleted then the child automatically gets deleted. You
can create Roll-up summary fields in master records which will calculate the SUM, AVG, and MIN of the
child records.
Consider an example of a courier company model, where a delivery schedule is always linked to a delivery
location. If we delete a delivery location from our list, then all the related delivery schedules should also be
removed. Such a dependency can be achieved only through a Master-Detail relationship.
It provides easier contact management by giving access to critical data of the customers and interaction
history.
It gives complete customer details including insights and engage-enhancement strategies. Social data of
the customers can be used for a deeper understanding of their particular behavior regarding any product
or service.
Opportunity management
Salesforce provides an opportunity to view the activity timeline of your customers. It represents different
stages of a particular deal which helps you to decide your next move.
You can see critical details of the activity timeline in addition to the business competitors. The readymade
templates ensure hassle-free emailing to the clients.
Quote management
Quote management of the products will have tracking of the products, which are part of your deal and it
includes the standard price, product code, quantity, and quoted price. Also, you can establish quantity
along with revenue schedule and it reflects the delivery terms and payment.
Salesforce CRM app is having a built-in quoting mechanism that automatically quotes client data. It also
creates an approved template PDF and sends it directly to the customer as an email.
Lead management
Lead management is featured with an affluent activity timeline. It provides an access to up-to-date
contacts on the timeline. Also, it makes use of the sales paths to understand the related documents.
CRM app functions as a fast lead converter machine, which informs you about the original source of the
leads. Automatic emailing boosts your revenue-generating mechanism.
Sales data
Using Salesforce CRM you can get the right sales data at the right time. It provides a faster connection with
key decision-makers.
You can easily plan territories. It can be used for increasing sales and marketing productivity with the latest
and most accurate data.
Mobility
The Salesforce mobile app turns your mobile device into a portable sales office by allowing the users to
access CRM data at any time and from anywhere.
You can log calls, work opportunities, check dashboards, respond to hot leads, etc.
It allows to use of visual workflow to rapidly design and automate any of the business processes with drag
and drop simplicity. And you can successfully manage flexible approvals processes for deal discounts,
expenses, and more.
It’s easier to share files, discuss them, publish the best and track your content in real-time by using
Salesforce.
You can quickly find what you are looking for, share it securely, and also subscribe to receive alerts when
something changes.
Dynamic dashboards and custom reports
Dashboards offer a real-time picture of how your business is performing in the market. Users can recognize
market trends, calculate the activities and clear up the quantities. You can build your own dashboard by
using drag and drop icons in Salesforce CRM.
It allows creating your own customized sales forecasting report with Salesforce CRM. By using a simple
drag and drop feature, users are able to adjust the fields and view data with filters. Charts provide real-
time data to give you the latest insight.
Sales forecasting
It tracks the journey of the leads in the pipeline to look into whether they are reaching their destination i.e.
deals or not. It gives brilliant forecasting on sales upon analyzing the same. You can apply your right
judgment to the forecasted amount and according to that, you can plan your strategies.
You can make use of in-line editing, multicurrency support, override visibility, etc. to stay on top of your
business.
It gives the right credit to the right person and permits them to see the forecast as per overlays.
Communicate using automation tools: With the help of Salesforce Einstein Bots, its features can
automatically respond to chats on time. Thus avoids giving delayed response.
Data syncing from different applications: Data from other applications such as MailChimp and G Suite can
be integrated into the Salesforce platform. This removes the difficulty of moving from one software to
another. Using Salesforce mobile app, you can keep track of your data anytime and anywhere.
Utilization of data analytics tools: Salesforce’s Einstein Analytics gives insights so that users can address
the changing data right away. Salesforce has a collection of reporting tools and dashboards that will help
you collect information and work on it properly.
Following customer activity: It helps to understand the customer’s journey through the sales cloud so that
you will have easier access to their behavior and background. You can review the click rates on your email
campaigns to help you recognize what works best for your customers.
Assisting customers through chat: A chat box is provided by the service cloud’s live agent depending on
the interaction of your customers or followers on your web page. By connecting with the customer profile,
your service team can deliver answers. This is helpful in improving customer experiences by letting agents
respond quickly.
Using an omnichannel feature: Multi-channel feature provided by the service cloud automatically shifts
conversations from various channels directly to the agents. This gives them one place to connect with
customers through calls, social media, chat, messaging, or email.
Consistent engagement with current customers: Looking for a new customer is more expensive than
keeping the current ones. Use the gathered data in Salesforce’s CRM to create consistent marketing
campaigns.
You can build apps: Force.com, a Platform as a Service(PaaS) simplifies customizing and building apps for
any device without using a complicated infrastructure.
Interview Process
Try It Out
Triggers can be defined for top-level standard objects, like contact or account, custom objects, and few standard
child objects. They are active by default when created. When the specified database events occur, Salesforce
automatically fires active triggers.
Apex allows developers to add business logic to many system events, including Visualforce pages, button
clicks, and related record updates. This code can be initiated by requests from web services and from
triggers on objects.
All Apex code runs completely on-demand on the Lightning platform. Apex code is written and saved to the
platform by developers. Through the user interface, end-users trigger the execution of Apex code
Gauge: It is used for displaying a single value within a custom value range.
Metric: This is used for showing a single pair of key–values. We can enter the metric label directly on the
components by clicking the empty text field next to the grand total. All metrics placed in the dashboard
column would be displayed as a single component.
Table: Tables are used for showing report data in the form of lists. For example, top five or bottom five
opportunities.
Visualforce page: It is used for forming a custom component as a dashboard or displaying information
that is not available in other component types.
Charts: It is used for showing comparisons. Charts are divided into 6 types. They are line Chart, vertical
bar chart, horizontal bar chart, donut, pie, and funnel.
o Email limits
o The total number of callouts(web services calls or HTTP requests) in a transaction is 100.
Consider an example of recruiting application, where a position for a job is linked to many candidates or a
candidate can apply for many other jobs. Here, a third-party object “job application” is referred to as a junction
object in order to connect the data model. In the above-given example, “job application” is the junction object.
J
unction Object in Salesforce
4. What are Permission sets?
A Permission Set is a collection of settings or permissions that is used to give access to numerous tools and
functions for the user. You can use permission sets for different types of users to extend functional access
without changing their profiles. Instead of creating a separate profile each time, you could easily create a
Permission Set.
Matrix report
o A report is formed by grouping the records by rows as well as columns. It is used when you want to
see data by two separate dimensions that aren’t related, such as date and product.
Summary report
o A report that provides a listing of data with groupings and subtotals. It is used when subtotals are
needed, based on the value of a particular field, or when you want to create a hierarchically grouped
report.
o Example: All opportunities for your team subtotaled by owner and sales stage.
Tabular report
o A report that provides details of a company in tabular format. It is used when you want a simple list
or an item list with a grand total.
o Example: These reports are used to list all accounts, list of opportunities, list of contacts, etc.
Joined report
o A report that is created by the mixture of any combination of reports. Like matrix report plus
summary report can give you a joined report. Also, matrix reports and tabular reports can give a
joined report.
o Example: You can develop a report to display opportunity, case, and activity data for your accounts.
Reports Available in Salesforce
6. Explain the Force.com platform
Force.com is the entire framework and codebase on which the whole Salesforce application exists. We can also
say that Salesforce is built on Force.com, which is a Platform as a Service (PaaS) that allows us to simplify the
design, development, and deployment of cloud-based applications and websites. Developers can work with Cloud
Integrated Development Environment (Cloud IDE) and deploy the applications on the servers of Force.com.
Validation rules are helpful in enforcing integrity constraints against the data. Here we give conditions in
the formula editor. If one validation rule fails, Salesforce proceeds to check another validation rule held
within the field or record and shows an appropriate error message at that particular field or above the
record.
You are allowed to create validation rules for fields, objects, campaign members, or case milestones. For
example, we can create a validation rule that fires when a user tries to save an account with the incorrect
length for the account number.
Human error:
When editing an object definition (incorrectly changing a picklist), importing data (overwriting good data
with bad), or merging households are the common situations where human error may occur.
For example, when you import data, it becomes important to match up fields. Situations like moving to
percent, number, and money from other data types or changing text area to URL, email, phone or text, etc.
will lead to incorrect match in fields. If you are updating a large number of records and match up incorrect
fields, your records will be invalid.
A record (or multiple records) might be accidentally deleted by users or employees. Deleting records could
be because of miscommunication, forgetting to remove a contact from being deleted, and many other
reasons. So proper training and having a trusted backup/recovery solution are much important.
Disgruntled employees like the person who has recently got a very bad performance review and thinks
their job is at stake or who is jealous of other employees might try to delete the data. A few clicks on the
delete button may lead to the deletion of multiple records from Salesforce.
If they empty their recycle bin, that data recovery will be difficult using the Weekly Export. It can cause
numerous damages if these records are not backed up properly.
If you have more than one admin or use Outlook for Salesforce, you might experience a data sync error at
some point.
For example, one admin is trying to refresh a sandbox while another admin is working from home and
trying to edit an object type in that same sandbox. When this happens, the admin who was editing the
object can lose his work in progress.
Contacts in Outlook can over-write good Salesforce data when using Outlook for Salesforce, introducing
errors through inappropriate sync.
This Visualforce framework includes a tag-based markup language, a set of server-side “standard
controllers” that forms basic database operations(such as queries and saves) and each Visualforce tag
corresponds to a user interface components such as a field, section of a page, or a related list, etc.
It works on the standard MVC model. It can have strong integration with the database and deploy auto-
generated controllers for database objects. The behavior of Visualforce components can be controlled by
the developer, by utilizing the same logic that was used in standard Salesforce pages. It is also possible for
a developer to associate their own logic with a controller class written in Apex code.
10. What are the differences between trigger and workflow in Salesforce?
Workflow Trigger
Workflow is an automated process that fires an action A trigger is a piece of program code that will be executed
depending on evaluation criteria and rule criteria before or after a record has been inserted or updated
We cannot carry out DML operations on workflow We can use 20 DML operations in a single trigger
We are able to access the trigger across the object and
We are able to obtain a workflow across the object
associated with that objects
We can use 20 SOQL(Salesforce Object Query Language)
We cannot query from database in workflow
from the database in a single trigger
11. What are record types in Salesforce?
Salesforce record types permit us to associate different business processes and display different picklist
values and page layouts to different users based on the user profile.
Administrators are having the ability to associate record types with the user profiles so that, in the record’s
detail page, different users will be able to see different picklist values and page layouts.
For example, consider a case where record types are most often used i.e., to create two different sales
processes on the Opportunity object. Each of them with different sales stages and page layouts. This will
indicate that with record types you will be able to apply multiple page layouts per object as well as per user
profile.
o Allows for administration in a simple manner as there are fewer fields to maintain.
They are helpful in organizing user interface pages by determining which fields, related lists, and custom
links are required, read-only, and visible for the user.
We can create many page layouts and apply them to different user groups, with the aim of creating a
customized experience. For example, you could have a single account record like ACME Corp., but it
displays different information depending on your user profile.
Here, you can only apply the one-page layout to a single group of users per object, per record type. For
example, if you have one record type based on the Accounts object, you can apply only one-page layout
per profile.
Before triggers: It can be used to update or validate record values before it is saved to the database.
trigger TriggerName on ObjectName(before event) //Here event can be insert, update or delete
{
code_block
}
After triggers: It can be used to access field values of the records that are set by the system (such as record’s
ID or LastModifiedDate field) that are stored in the database and use this field value to do the changes in other
records. Records that fire after the triggers are read-only.
trigger TriggerName on ObjectName(after event) //Here event can be insert, update or delete
{
code_block
}
14. What is fiscal year or economical year in Salesforce?
The fiscal year or economical year is defined as the period of time used for calculating annual financial
statements based on starting and ending date of a company’s financial year. In this period of time, whatever the
amount of business that Salesforce has done can be considered as fiscal year and depicts the Salesforce
revenue.
Normal or standard fiscal year: It is a period that allows estimating by following the Gregorian calendar
year that has a 12-month structure. Starting of the fiscal year can begin with the very first day of any
month you choose belonging to a particular year. For example, for the fiscal year starting in April, the
standard fiscal year is used.
Custom fiscal year: It is mainly defined for the companies that lay their forecast based on weekly or
quarterly financial planning and can also customize the same. For example, you may have 4 quarters with
13 weeks per quarter in a 4-4-5 pattern or 13 periods per year.
15. Explain skinny table. What are the considerations for skinny table?
Skinny tables in Salesforce are useful in accessing the fields which are frequently used and to avoid joins. This
can improve the performance of certain read-only operations such as reports, list views, etc. Skinny tables are
highly effective because skinny tables will be in sync with source tables even when the source tables are
modified.
You need to contact Salesforce customer support if you want to use skinny tables. You cannot create, access, or
modify skinny tables yourself. For example, you need to contact Salesforce to update your skinny table definition
if you want to add new fields.
For full sandboxes, these skinny tables are copied to your full sandbox organizations. For other types of
sandboxes, skinny tables are not copied into your sandbox organizations. To have production skinny tables
to be activated, contact Salesforce customer support.
The below figure displays an Account view, a corresponding database table along with a skinny table that can
speed up account queries.
Skinny Table
Salesforce Interview Questions for Experienced Developer
1. Explain the types of SOQL statements in Salesforce.
Salesforce Object Query Language(SOQL) is useful in querying the records from database.com depending on the
requirement. There are 2 types of SOQL statements: Static SOQL and Dynamic SOQL.
Static SOQL:
The Static SOQL statement is written using [] (array brackets). This statement is similar to IINQ (Ion
Integrated Query).
It is used in the condition where you don’t have any dynamic changes in the SOQL query. We don’t use
Static SOQL when the field name or where the condition is needed to be dynamically defined.
It is used to refer to the SOQL string creation at run time with Apex code.
Dynamic SOQL allows you to create more flexible applications. For example, you are able to create a
search based on end-user input or update records with different field names.
To create a Dynamic SOQL query at run time using a Database.query() method, in any one of the given
below ways:
o Return a list of sObjects when more than a single record is returned by a query.
List<sObject> sobjList = Database.query(string);
Example for Dynamic SOQL query:
String myTestString = 'TestName';
List<sObject> sobjList = Database.query('SELECT Id FROM MyCustomObject__c WHERE Name = :myTestString');
2. What are the different types of email templates available in Salesforce?
The list of different types of email templates that can be created in Salesforce is given below:
Text: All the users in the organization are allowed to create or change these templates.
HTML with letterhead: Only administrators and users with the “Edit HTML Templates” permissions are
able to create these templates based on a letterhead. The look and feel of your HTML email templates are
defined by the letterheads. It can inherit the logo, text, and color settings from a letterhead.
Custom HTML: It is an extension of HTML with a letterhead. Administrators and users having “Edit HTML
Templates” permissions can create custom HTML templates without using the letterhead. You must have
knowledge about HTML or get the HTML code to insert it into your email template.
Visualforce: Administrators and developers are allowed to create these templates by using Visualforce.
Visualforce templates provide advanced functionalities like merging with a recipient’s data, where the
content of a template can have data from multiple records.
Using the lightning platform we can easily create apps that solve business problems and provide engaging
experiences.
Lightning component framework: It consists of tools and extensions that allow the development of reusable
components and standalone applications along with customization of the Salesforce mobile app.
AppExchange for components: It makes over 50 partner components present in the app builder.
Design system: It provides style guides and user experience practices for application development.
Lightning Connect: It is an integration tool that makes it easier for applications of Force.com to consume
data from an external source that meets the OData specification.
REST:
By using REST API you can easily integrate with Salesforce applications using simple HTTP methods in
either XML or JSON formats. It is an ideal API for developing mobile applications or external clients.
Consider an example of retrieving information about the Salesforce version. You need to submit a request
for the Versions resource by using the following code:
curl https://yourInstance.salesforce.com/services/data/
You have to replace the “your instance” text with the instance for your organization.
The output from this request is as follows.
[
{
"label" : "Winter '12",
"url" : "/services/data/v23.0",
"version" : "23.0"
}
...
]
Bulk: The Bulk API provides programmatic access that lets you quickly load and query a huge amount of data
into your Salesforce organization.
Streaming: The Streaming API can be used to trigger and receive notifications, whenever changes to Salesforce
data are made according to the defined SOQL query criteria. It is useful when you want notifications to be pushed
from the server to the client based on your defined criteria.
Conclusion
Salesforce is playing a vital role in any company’s sales and marketing automation activities. The demand for
qualified Salesforce professionals has seen its peak in recent days. Moreover, competition is also becoming tough
for Salesforce-related positions, so preparation is inevitable if you want to shine out of the crowd.
Salesforce is increasingly used as a term synonymous with CRM. Organizations can utilize Salesforce for varied
applications like Contact Management, Workflow Creation, Customer Engagement, Opportunity Tracking, Task
Management, and many more. In addition, you can also collaborate with your colleagues, run analytics, and
access Salesforce from a mobile dashboard.
Additional Resources
Salesforce Architecture – Detailed Explanation
You can use the sandbox whenever you want to test a newly formed Force.com application or Visualforce page.
Instead of testing it directly in production, you can develop and test it in the sandbox organization. Using this,
you can develop the application without any difficulty and then migrate the metadata and data to the production
environment. Doing this in a non-production environment permits developers to freely test and experiment with
the newly created applications.
Developer sandbox:
It is a copy of the production organization, it copies all the information of an application and configuration
to the sandbox. It is mainly used for the development and testing task in an isolated environment.
This type of sandboxes has limitations of up to 200MB of test or sample data. You can refresh a developer
sandbox once a day.
It copies all of your organization’s reports, dashboards, apps, price books, products, and customizations
under setup. But it excludes all of your organization’s custom and standard object records, attachments,
and documents.
This type of sandboxes has limitations of up to 1GB of test or sample data. We can refresh developer pro
sandboxes once a day.
A partial data sandbox is a developer sandbox plus the data you define in a sandbox template, which is
intended to be used only as a testing environment. It includes the reports, dashboards, price books,
applications, products, and customizations under the setup (including all of your metadata).
Additionally, these sandboxes can have your organization’s custom and standard object records,
documents, and attachments up to 5 GB of data along with a maximum of 10,000 records per chosen
object.
A partial data sandbox is smaller compared to a full sandbox and has a shorter refresh interval. You can
refresh partial data sandboxes every 5 days.
Sandbox templates permit you to select specific data and objects to copy to your sandbox, thus you can
control the size as well as the content of each sandbox. Sandbox templates are available only for partial
data or full sandboxes.
Full sandbox:
It is a replica of production including custom and standard object records, attachments, and documents
and is used only as a testing environment.
It is a parent-child relationship where the master object controls the behavior of dependent detail and sub-
detail object. It is a 1:n relationship, in which there is only one parent, but multiple children.
The master field cannot be empty, since it is the controlling object. If a master object’s record or field gets
deleted, the corresponding record or fields in the dependent object will also be deleted. This is called a
cascade delete. Child object fields will inherit the owner, sharing, and security settings from the parent
object. You can create Master-Detail relationships between two custom objects, or between a standard
object and custom object until the standard object remains as a master in the relationship.
For example, you can define a Master-Detail relationship with two objects such as Account—Expense
report. It expands the relationship to sub detail records, such as Account—Expense report—Expense line
item. You will be then allowed to perform operations across the master—detail—sub detail relationship.
These relationships are useful for creating a link between two objects, without the dependency on the
parent object. This is again a form of parent-child relationship where there is only a single parent, but
multiple children exist (1:n relationship).
Despite master being the controlling field, deleting a master record will not automatically delete the lookup
field in the child object. So the records in the child object will not get affected and there will not be any
cascade delete here. Child fields will not inherit the owner, sharing, or security settings of its parent.
With a lookup relationship, you are permitted to link two different objects or link an object with itself
(except for the user object). For example, you may want to link a custom object “Bug” with itself for
showing how two different bugs are related to the same problem.
You can use this kind of relationship whenever you want to create two Master-Detail relationships. By
linking 3 custom objects, we can create two Master-Detail relationships. In this, two objects will be
represented as master objects and the third object will act as a dependent on both of them. In simpler
words, we can say that there will be a child object for both master objects.
This relationship allows every record of one object to be linked with several records of another object and
vice versa. For example, you can create a custom object “Bug” that relates to a standard object in such a
way that a bug can be related to multiple causes, and also a single case can be related to multiple bugs.
Hierarchical relationship:
This is a special lookup relationship, that is available only for the user object.
It allows users to use a lookup field to associate a single user with another user that does not refer to itself
in a direct or indirect way. For example, to store the direct manager of each user, you are allowed to create
a custom hierarchical relationship field.
This relationship links a child's standard, custom, or external object to a master external object.
In this relationship, the standard External ID field values on the parent external object are matched against
the external lookup relationship field values of the child object.
This relationship links a child's external object to a master standard or custom object.
For matching and associating the records, you will mention the parent object field and the child object field
when you create an indirect lookup relationship field on an external object. Here, you have to select the
parent object’s custom unique, external ID field to match against the child object’s indirect lookup
relationship field.
Relationships in Salesforce
8. How many ways we can share a record?
With the help of the given below methods we can share records in Salesforce:
Role hierarchy:
Whenever a user is added to a role, the user above the current user in the hierarchy of roles will have
access to reading the records and inheriting the permissions.
Follow the steps for role hierarchy: Go to Setup → find manage users' → roles → set up roles → click on
‘add role’ → provide name and click on save.
OWD:
OWD(Organization-Wide Defaults) allows you to give permissions to the organization-wide and to define
baseline setting for the organization. It is also helpful in defining the user’s accessibility level to the user
where a user can see other user’s records.
OWD settings can be Public Read Only, Private, Public Read, and Write.
Follow the steps for OWD: Go to Setup → find the Security Controls → click on ‘sharing settings’ → click on
‘Edit.
Manual sharing:
Manual sharing is sharing a single record/file to a single user or group of users through manual access.
We can see a button for manual sharing on the detail page of the record and it can be seen only when the
OWD setting is private.
If we want to share records based on conditions such as share records with a group of users with the
criteria of the country is India.
Follow the steps for criteria-based sharing rules: Go to Setup → security controls → sharing settings →
select the object and provide name and conditions then click on save.
Apex sharing:
Sharing object is available for each and every object in Salesforce. For example, the Account object’s share
object is AccountShare.
By using Apex, if we want to share the records then we have to create a record to the shared object.
The instances of a wrapper class are helpful in displaying various objects in the corresponding table on a
Visualforce page.
Some of the main advantages of using wrapper class by developers in Salesforce are given below:
The wrapper class structure is as efficient as that of a good data visualization process for a web page,
especially in the case where the developers are dealing with the JSON structure.
The developers are not required to manage the passing of any map structure in order to browse necessary
elements. Moreover, usage of wrapper class by developers will lead to ease the process of managing
relationships between different objects.
Wrapper class usage prevents any penalty faced by the users for passing an object of Salesforce. Also, it
makes the respective object extendable to constructors of a class.
The use of the wrapper class supports the developers for efficiently organizing the concerned data,
provided the data is properly nested.
Methods having future annotation must be static methods and can only return a void type. The arguments
specified must be primitive data types or arrays of primitive data types or collections of primitive data
types. These methods cannot take sObjects or objects as parameters.
When you specify a method with @future annotation, it will be executed only when Salesforce has available
resources.
For example, you can use future annotation while making an asynchronous web service callout to an
external service. Whereas without the usage of future annotation, web service callout will be created from
the same thread which is executing the Apex code, and no additional processing will take place until that
callout is complete (synchronous processing).
Syntax:
global class class_name
{
@future
Static void methodname(parameters)
{
//body of the method
}
}`
Master-Detail Relationship
Lookup Relationship
Explore our top Salesforce marketing cloud interview questions created by experts.
21. Name the different kinds of Salesforce testing.
There are many different kinds of Salesforce testing. These include-
Regression Testing
Functional Testing
Load Testing
Integration Testing
Security Testing
27. What are the common tools that are used for Salesforce automated testing?
Some of the top common tools used for Salesforce automated testing are-
Provar
Selenium
TestNG
JUnit
31. Name some of the ways in which Salesforce integrates with other systems.
Some of the ways in which Salesforce integrates with other systems are-
SOAP API
Salesforce Connect
REST API
Bulk API
Apex Callouts
Streaming API
Data Virtualization
47. Describe Macros in Salesforce Service Cloud. Explain how they are used.
Macros in Salesforce Service Cloud refers to automated scripts. These are used to execute repetitive tasks with a single
click. These scripts aid agents in streamlining workflows as it automates routine actions such as updating case fields,
creating tasks and sending emails. It consequently saves time and improves productivity.
50. How are multi-channel customer interactions supported by Salesforce Service Cloud?
Salesforce Service Cloud offers support to multi-channel interactions as it integrates multiple communication channels.
These mostly include phone, email, social media, web forms and chat. It offers agents the ability to manage customer
inquiries from multiple channels within a single interface. This guarantees efficient and consistent support across all
touchpoints.
Want to become Salesforce developer? Explore this Salesforce Developer Tutorial guide.
51. How can Email-to-Case be configured in Salesforce Service Cloud?
Email-to-Case has the ability to automatically convert all incoming customer emails into cases. It can be configured by
setting up Email-to-Case settings, specifying case creation rules and defining the email routing addresses. This guarantees
that customer emails are easily tracked and managed like support cases within Salesforce.
52. What is the usage of Case Teams in the Salesforce Service Cloud?
Case Teams enable various agents to effectively collaborate on one case. Each team member is assigned with specific roles,
like support specialist or case owner. It facilitates collaborative problem-solving and makes sure that the entire relevant
expertise is implemented to effectively resolve the case.
56. What role is played by Service Cloud Voice? Name its key benefits.
Service Cloud Voice plays the important role of integrating telephony with Salesforce. This leads to agents being able to
manage voice calls in the Service Console. It offers various features such as AI-powered insights, call routing and call
transcription. All this enhances agent efficiency, which in turn improves customer interactions and offers a singular view of
all communication channels.
71. Explain the difference between a Permission Set and a Profile in Salesforce.
Permission Sets in Salesforce are used for extending user privileges without presenting the need to change their profiles.
Profiles in Salesforce are used for defining a user's base-level settings and permissions, like field-level security, user settings
and object-level permissions. For instance, one can offer highlighted users additional permissions for a certain object via
assigning a permission set. This enables higher flexibility in access control.
73. How can a custom Visualforce page be created? What is its significance?
A custom Visualforce page can be created by describing a Visualforce page. This is done with the '' tag. Next, add
Visualforce components, Apex code and HTML as essential. Visualforce pages offer custom user interfaces (UI) in
Salesforce. This renders more control and flexibility over the functionality and layout as compared to standard Salesforce
pages.
Using Collections: Utilize sets, maps and lists for highly efficient data processing.
Bulkifying: Write a code for handling various records at a time to dodge hitting governor limits.
Minimizing SOQL & DML operations: Limit the amount of data modifications and DB queries to stay within the set
limits.
Implementing Error Handling: Utilize custom error messages and try-catch blocks for solid error management.
Using Asynchronous Processing: Send off the long-running tasks to asynchronous methods.
Following Coding Standards: Stick to code organization, documentation and naming conventions practices.
alesforce Interview Questions and Answers For Freshers
1. What does Salesforce do?
Salesforce provides CRM software and cloud-based solutions that help enterprises to connect better with their customers. It supports businesses
to manage their customer's data and track their activities efficiently.
Tableau
Pardot
Heroku
Mulesoft
Demandware Inc
SalesforceIQ
3. What is meant by an Object in Salesforce?
Objects in Salesforce are used as database tables that are used to store information of an organization. We have two types of objects in salesforce,
they are.
Standard Object: These are the objects provided by the salesforce, which include contacts, accounts, opportunities, leads, cases, campaigns,
products, contracts, dashboards, etc.
Custom Object: This includes the modifications made to Salesforce by users. It stores the essential and unique information of an organization.
Custom Object includes page layouts, relationship to other objects, custom user interface tab, custom fields, etc.
4. What is meant by App in Salesforce?
An App in Salesforce.com is a container that holds various things such as a logo, name, and a set of required tabs. It is also called a group of tabs
that work together to prove the functionality that you are looking for.
In Salesforce, you can customize apps to match your requirements, or you can build new applications by combining custom and standard tabs.
The process to create an app in Salesforce:
Setup ---> build---> Create---> App---> Click on new.
Custom app: This type of apps can be used in every business scenario. It is widely used in the market.
Console app: This type of app can be used only in the client service business, where we focus on solving the client’s issues. It is not
comparatively, widely used in the market.
Owner,
Name,
Last modified by,
Created by.
7. What are Audit Fields?
Standard fields are nothing but audit fields.
The tabular report is those that give us the total in a tabular format.
Matrix reports the format where grouping is done based on columns and rows.
The summary report gives us detailed reports based on columns.
Joined reports which are capable of allowing two or more reports in one report.
13. What is an Audit trail?
The Audit trail in Salesforce is a unique feature that helps in tracking the changes that have been made in the organization by you and other
administrators. It would be helpful for the organization with more administrators. This audit trail shows you the information of the twenty most
recently made changes in your organization.
As far as the second question is considered, the answer would be yes. The people who work in one department have the same profile. So the
people who work under a particular department would be assigned with the same profiles.
As we have seen in the sales profile, many people work under it and every person who works under is assigned the same profile. Hence any
number of people can have the same profile.
Master-detail relationship
Lookup relationship
External Lookup
18. What is the Master-Detail relationship?
This Master-Detail relationship is the same as the relationship between a parent & child. In this aspect, the master is treated as Parent, and the
Detail is a child. The master Object takes control of the behavior of the Detail object. The survival of the child is dependent on the parent because
if the Master gets deleted the Detail will also automatically get deleted. You can create Roll-up summary fields in master records which helps in
calculating the Min, Avg, Sum of the child records.
19. What is a “Lookup Relationship”?
The relationship between the two objects is called a lookup relationship. Lookup relationships connect two object links together so that you
can look up from related items to other items. It can be one-to-one or one to many.
20. What is an External lookup?
The external lookup relationship is used to connect the child object to the parent object. The child object may be either a custom, standard, or
external object. It uses to identify the correct map of the child object with the parent external object. The external lookup relationship values
fields are matched against the External Id values.
21. What is a self-relationship?
It is a personal look up to the same object. The self-relationship creates a tree diagram of the objects. Let's take an example as an object
“merchandise”. In this, we can create relationship merchandise between two accounts. This is called a self-relationship.
22. What is the workflow in Salesforce?
Workflow is an excellent way to automate specific business processes in Salesforce. To do this, you are required to define certain rules and
regulations to automate tasks such as sending an email, updating a field, create a task
Field update
Task
Outbound message
Email alert
29. What are the main things that need to consider in the “Master-Detail Relationship”?
Record level access is determined by the parent, Mandatory on the child for reference of the parent, cascade delete (if you delete the parent, it
can cascade delete the child).
31. Is the Roll-Up Summary field is only possible in the Master-detail relationship?
Yes, it is possible in a master-detail relationship.
Do you want to get certified and build your career in Salesforce Marketing Cloud? Then enroll in "Salesforce
Marketing Cloud Training" this course will help you to achieve excellence in this domain.
38. How we can create an MDR on those objects where we already have records?
1. First, we create LR between the two objects.
2. Connect all child records to parents.
3. Convert the field type from LR to MDR.
39. How to look at the user license information in Salesforce Org?
Steps to find out the user license:
Salesforce Org → Setup → Administer → Company Profile → Company Information.
40. Can we delete a user in Salesforce?
No, we cannot delete the user in the salesforce.
Name
ID
Owner fields
Master-detail relationship fields
Lookup fields
Last modified dates
Audit dates
47. What is the Fiscal year in Salesforce?
The Fiscal year is known as the starting and ending date of a company's financial year. We have two types of financial years in Salesforce which
are as follows.
49. What are the different ways to store various types of records in Salesforce?
We have five different ways in Salesforce to store various types of records such as images, files, and documents.
They are
Attachments
Google drive
Chatter Files
Libraries
Attachments.
50. What is the main difference between data table vs page block table tags?
The differences between the Data table and Page block
Page block:
It defines inside the page block station or page block
To design the visual pages uses style sheets
The required attribute is “value”
Automatically it will display Column Headers
DataTable:
No need to mention inside the page block station or page block
No required value.
The data will be displayed using custom style sheets.
we need to specify column headers explicitly.
Do you want to get certified and build your career in Salesforce Vlocity? Then enroll in "Salesforce Vlocity
Training" this course will help you to achieve excellence in this domain.
If we add a user to a role, the user who is above in the role hierarchy will have read access.
Setup → manage users → roles → setup roles → click on ‘add role’ → provide name and save.
OWD:
Defines the baseline setting for the organization.
Defines the level of access to the user can see the other user’s record
OWD can be Private, Public Read Only, Public Read and Write.
Setup → Security Controls → sharing settings → Click on ‘Edit’
Manual Sharing :
We can see this button detail page of the record and this is visible only when the OWD setting is private.
58. Does the user can create insert their own custom logo while creating their own custom applications?
Yes, users can upload their custom logo in documents, and then they choose that logo for the organization.
61. Can the governor limit perform partial DML activity? Eg: we are inserting 200 records in a loop, the Governor limit
is hit at the 151st record, then will those 150 records be created?
Salesforce Apex Beginner Interview Questions
62. What is Apex Interface?
The interface is a collection of unimplemented methods. This will specify the signature of the method, types of inputs that we pass the method
specify what type is given as an output.
First, the platform application server compiles the code into an abstract set of instructions that can be understood by the Apex runtime
interpreters.
The compiled code is stored in metadata.
When the end-users trigger the execution of Apex by clicking a button or the VisualForce page the application servers retrieve the compiled
instructions from the metadata and send them to the runtime interpreter before returning the result.
Apex enables developers to add business logic to most system events like button clicks related to record updates and VisualForce pages.
Start
Finish
Execute
Start: We use the start method at the beginning of the batch apex job. We use it for collecting the objects or records, for passing them to the
interface for executing. It returns a DatabaseQueryLocator object that comprises objects or the records sent to the job.
Finish: We call this method once we finish the batch processing. We use this method to send confirmation emails or to execute the post-
processing operations.
Execute: We use this method for every batch of the records that are sent to the method. We use this method for data processing. This method
does the following:
sObjects records list
Reference to the DatabaseBatcheable context.
68. What is Apex Email Service?
Email services are an automated process that uses Apex classes to process the contents, Headers, Attachments of Inbound Email.
Note:
Visualforce email templates cannot be used for mass emails.
We can associate each email service with one or more salesforce-generated email addresses to which the users can send messages for
processing.
69. Explain Apex Programming Language?
Integrated: It provides built-in support for DML Calls
Inline Salesforce Object Query Language
Easy to Use
Easy to Test
Version
Multi-Tenant Aware Application
Currency
‘Dollar’ Yen’ ‘Euro’ ‘Pound’ ‘Rupee’
(Value)
71. What is Batch Apex in Salesforce?
Batch Apex: Batch Apex allows you to define a single job that can be broken up into manageable chunks, whereas every chunk can be processed
separately.
In the Batch Apex it will fetch all the records on which you want to perform the field update and divide them into a list of 200 records and on every
200 records operation is performed separately.
This would help us to execute on more than 10,000 records as it won’t perform an operation on all the records in a single transaction instead it
divides them into a number of subtasks where each subtask may contain records up to 4000.
Example:
If you need to make a field update of every record of account object in your organization, then we have governing limits that would restrict us
from achieving the above task.
Reason: In a single transaction we can process only 10,000 records. Now in the above case if we have more than 10,000 records in the
organization then we can not perform this field update.
Anybody who wants to schedule their class they have to implement the schedulable interface.
Schedule Interface: The class that implements this interface can be scheduled to run at different intervals. This interface has several methods
that are
Public void execute(schedulablecontext sc)
Public class mySchedule implements schedulable
{
Public void execute(schedulablecontext sc)
{
Account a = new Account(Name = ‘Faraz’)
Insert a;
}
}
73. What is the Apex Trigger in Salesforce?
The trigger is an Apex Code that executes before or after. The following types of DML Operations:
Insert
Update
Delete
Merge
Upsert
Undelete
74. What is meant by Apex transaction?
An Apex transaction represents a group of operations that are needed to be executed at once. It includes the Data Manipulation Language (DML)
and is responsible for querying records. The DML operations in a transaction either success or if anything goes wrong or occurs even with a single
record could result in a rollback of the entire transaction.
1. Before Triggers
2. After Triggers
Before Triggers: Before Triggers can be used to update or validate values of a record before they are saved to the database.
After Triggers: After Triggers Before Triggers can be used to access field values of the records that are stored in the database and use this value
to make changes in other records.
Syntax:
Trigger trigger_name on Object_Name(trigger_events) { Code_block } WHERE trigger_events can be comma separated list
of events.
76. What is Apex Managed Sharing?
Apex Managed Sharing provides developers with the ability to support an application to share requirements.
This type of sharing is available only with users to modify all data permissions. Only these users can add/change apex-managed sharing.
Apex Managed Sharing uses a Sharing reason (Apex Sharing Reason)
77. What is the Usage of the apex program within the VisualForce page?
When you want to call the apex class on the VisualForce page we have to declare in the following format.
< Apex : page controller = “class name “ >
Whenever we call a VisualForce page in which the controller attribute is defined it will first create an object for the apex class which is defined in
the controller. When an object is created for the apex class first it involves the constructor.
Developer
Developer pro
Partial copy
Full
Salesforce Apex Advanced Interview Questions
80. What is Multitenant Architecture in Salesforce?
It is the cloud's fundamental technology to share IT resources securely and cost-efficiently.
Collections
User-defined types
subjects
Primitive types
Built-in Apex types
83. What is a Visualforce component?
Visualforce components are small reusable components of functionality such as widgets, user interface elements, panels, etc. We have two types
of VisualForce components which are standard and custom and are used to define the user interface behavior.
84. What is SOQL?
A query language that allows you to construct simple but powerful query strings and to specify the criteria that should be used to select the data
from the platform database. SOQL Stands for Salesforce Object Query Language.
85. What is the Bulkification best practice?
We must avoid using index values like Trigger.New[0] as we never know how many records we get in Trigger.New at runtime.
1. Static SOQL
2. Dynamic SOQL
Static SOQL:
It is used to refer to the creation of a SOQL string at run time with Apex code.
If a SOSL query does not return any records for a specified sObject type, the search results include an empty list for that sObject.
Example: You can return a list of accounts, contacts, opportunities, and leads that begin with the phase map.
List < list < subject >> search list = [ find 'map*' In ALL FIELDS RETURNING Account (ID, Name), contact,
opportunity, lead ];
Note:
The syntax of the class on Apex differs from the syntax of the FIND clause in the SOAP API.
In Apex, the value of the FIND cause is demarcated with single quotes.
Example:1
FIND 'map*' IN ALL FIELDS RETURNING account (Id, Name], Contact, Opportunity, Lead. In the Force.com API, the value of the FIND Clause is
demarcated with braces.
FIND {map*} IN ALL FIELDS RETURNING account [Id,name], contact ,opportunity,lead;
From search list , you can create arrays for each object returned.
Account [ ] accounts = (( list < accounts > ) search list [0] );
Contact [ ] contacts = [( list ) search list [0]) ;
Opportunity [ ] opportunities = ((list < opportunity> ) search list [2]) ;
Lead [ ] leads = (( list < lead> ) search list [3]);
111. What is the maximum number of field dependencies we can use in the VisualForce page?
The maximum number of field dependencies we can use is a VisualForce page is 10.
Custom Tabs.
Visualforce Tabs.
Web Tabs.
118. What are the types of email templates that can be created in Salesforce?
Below mentioned is the list of templates available in Salesforce :
119. If we want to share records based on conditions like share records to a group of users. Whose country criteria is
India, What are the steps to be followed?
Setup → Security Controls → sharing settings → Click on ‘Edit’
Apex sharing: Share object is available for every object(For Account object share object is AccountShare ). If we want to share the records using
apex we have to create a record to the shared object.
120. Is it possible to edit the VisualForce page in a production environment?
Yes, of course! We can create and edit the VisualForce pages in both the production environment and in a sandbox. The only thing you can not do
in a production environment with a VisualForce page is adding the unique values for which you need to do this in the sandbox.
121. Is it possible to make changes to the apex trigger/apex class in the production function?
No, you can not do that if you want to make any edits to the apex trigger/apex class that should be done in a sandbox environment.
122. What are the things that can be customized on page layouts?
Page layouts allow you to personalize or customize the given page objects or records. It helps in customizing or designing the page according to
your requirements. Page layout editor helps you in customizing the pages. Using this page, you can customize things like buttons, fields, custom
links, and related lists.
Salesforce Admin Interview Questions
1) What is the Roll-up summary field?
We use the Roll-up summary field to calculate the values for the associated records, for example, a related list. We can also use it for creating the
values for a master record- according to the values in detailed records. But, we must connect the master and the detail with a master-detail
relationship.
2) Explain Queues?
In Salesforce, Queues help us to distribute, prioritize, and assign the records to the teams for sharing workloads. Queues are applicable to leads,
service contracts, custom objects, cases, etc.
Escalation rules apply to escalation cases according to the rules specified in the escalation rule entry. Besides rule entries, we can also create
escalation actions for determining what happens when the case escalates. The escalation rule can reassign a case to another support agent or a
support queue.
Validation Rules enable us to apply a particular logic rule to contribute to our organization’s data integrity. We can define the conditions on the
object that are not available. For instance, if we do not want to label an opportunity as closed if the account does not have the address.
Criteria: Criteria is the “if” portion of the statement. We have to set criteria for the workflow rule. First, we have to create a workflow rule and
later configure the criteria.
Action: Action is the “then” portion of the statement. The action tells us what to do when the criteria are satisfied and occurs after the workflow
rule configuration. We can add a time-dependent action or an immediate action for a particular workflow rule.
6) Explain a Time-dependent workflow?
We perform time-dependent actions at particular times before closing the record. Workflow re-evaluates the record after time passes. It checks
whether the workflow rule criteria are satisfied, and only then workflow rule executes the actions.
When we have to assign the tasks to a salesforce user, you haunt a workflow task. A workflow task allocates a new task to a role, user, or record
owner. It assists us in defining different task parameters like a priority, status, due date, and subject.
Workflow Alert
Workflow Alert is an email that an approval process or a workflow rule creates in the salesforce and is transmitted to different recipients.
8) Explain Auto-Response?
Auto-Response is about transmitting emails to leads or cases for particular record attributes and promptly responding to customer inquiries or
issues by establishing the auto-response rule. At the same time, we can set one rule for a lead and one rule for a case.
In Salesforce, we use custom labels for creating a multilingual application. Using the native language, they give information to users in the form
of help texts and error messages. We can define the custom labels as custom text values that we can access from the Apex class or Lightning
components and promptly or even the Visualforce page. We can translate these values into the language supported by the salesforce. Through
the following path, we can access custom labels:
Setup->Search Custom Labels in Quick Find Box->Custom Labels
10) What are Sharing rules and what are the different types of sharing rules?
Sharing rules give sharing access to the users associated with the public groups, roles, or territories. It gives a higher level of access with the
exceptions, far from our organization settings. Following are the two kinds of sharing rules:
Criteria-based Sharing rules: Access is provided according to the record values and not according to the record owners.
Owner-based Sharing Rule: These rules provide access to the records owned by the users.
11) What are Governor Limits?
To assure that no one gains resources from others, Force.com establishes various restrictions(governor limits) that limit code execution.
Salesforce must do this due to its multi-tenant architecture, where all the customers and organizations share one resource. If the governor's limits
are not satisfied, an error will rise, and the program execution will terminate. Following are the types of Governor limits:
In Salesforce, the Approval process is a sequence of steps for approving records. An approval process is also helpful for tracking who and when
approved or rejected something. It includes different approval models, notifying approvers, and conditional logic for who must support.
Salesforce Chatter is a social networking application that enables us to share information and work cooperatively with each other. It helps us to
build greater employee engagement through motivation. Salesforce Chatter also provides a forum throughout the enterprise for sharing fresh
ideas and understandings. We can also use the mobile feed for tracking our project.
Guest users are the users who do not have user accounts in our organization. They are also known as unauthorized users as they do not have to
log in. We can make the pages accessible. Unauthorized users can create or edit the records.
Generally, we have various limitations and considerations for assessing. Yet, we can use this feature for solving use cases, and we do it financially
because the guest user licenses are free.
3) Define OAuth?
OAuth is a standard for access delegation. Generally, we use it as a method for granting the applications or websites access to their data over
other websites, yet without providing them with the passwords.
Do you want to build an effective application Salesforce, then join our Salesforce Developer Training to get a
Flat 20% Off Course Fee
5) What is the Significance of Outbound Message?
Outbound Message is an automation function that can shoot from the workflow rule. We can send the message to explicit web services that
include web services, which start other processes in explicit systems.
For instance, if we have to balance the data from the explicit accounting system with the Salesforce Accounts, we have to promptly use an
external ID field to refer to the unique ID of the accounting system in place of the Salesforce ID.
8) How can we invoke the javascript controller action by using a component markup?
By using the action provider, we can invoke the javascript controller action through a component markup
Component events
Child components fire the component events, and Parent components handle the component events. We use component events when we have to
send a value from the child component to the parent component.
We can perform the above process through Pagination. We can achieve pagination through the following ways:
Through StandardSetController
Through Offset and Limit keywords in SOQL Query
11) How do we display error messages on the VisualForce Page?
To display error messages on the VisualForce Page, we must use:
<apex:pageMessages></apex:pageMessages>
14) Can you give an example of Salesforce API and its importance?
Salesforce has different API’s that allow us to communicate with the system in various ways:
REST API: REST API will enable us to integrate with the salesforce applications through HTTP methods in either JSON or XML formats.
Bulk: Bulk API gives us programmatic access that allows us to load the data into our salesforce enterprise rapidly.
Streaming: We can use Streaming API for receiving the notification for the changes to the salesforce data that equal the SOQL query we define.
Streaming API is functional when we have to push the notification from server to client according to the criteria we define.
15) Explain Bucket Fields?
Bucket Fields classify the records of the salesforce reports without any custom field or formula; Bucket fields are available only in the reports.
When we create a bucket column, then various classifications of the group report values
18) What is the limit of the Data.com records that we can add to Salesforce?
In the user section of Data.com, we have to discover our name to see our monthly limit. It will provide details like how many records we can
export or add for this month. The user enters setup and types the user in the Find box and chooses prospector users.
Start: We use the start method at the beginning of the batch apex job. We use it for collecting the objects or records, for passing them to the
interface for executing. It returns a DatabaseQueryLocator object that comprises objects or the records sent to the job.
Finish: We call this method once we finish the batch processing. We use this method to send confirmation emails or to execute the post-
processing operations.
Execute: We use this method for every batch of the records that are sent to the method. We use this method for data processing. This method
does the following:
sObjects records list
Reference to the DatabaseBatcheable context.
Managed
Unmanaged
We use managed packages for distributing and selling the applications to the clients. Developers sell user-friendly applications and licenses by
using AppExchange for managed packages. These are entirely updatable in the event of continuous upgrades; we perform the removal of fields or
objects.
Example:
<apex:page>
<chatter: feed entityId=”{!$User.Id}”/>
</apex:page>
27) Explain the Blob variable?
Blob variable is the variable that is intended to gather binary data. tostring() converts the blob back into the string.
string string1='test string';
Blob blob1 = Blob.valueof(myString);
String String2 = myBlob.toString();
System.debug(String2);
28) What is the use of apex:outputLink?
The apex: output link body comprises of image or text that we can display in the link.
<apex: outputlink value="https://mindmajix.com/" id="theLink">www.mindmajix.com </apex:outputLink>
A Set is an unordered collection that does not allow duplicates. It’s useful when I want to ensure uniqueness, such
as storing a collection of unique record IDs. For instance:
Set<Id> accountIds = new Set<Id>{'001xx000003DGW9', '001xx000003DGW9'};
A Map is a collection of key-value pairs, where each unique key maps to a specific value. I use maps when I need to
retrieve data based on a specific key, such as fetching an Account’s name by its ID:
7. How does Apex handle asynchronous processing, and what are the
various methods available?
Apex provides multiple ways to handle asynchronous processing, which is useful when I need to execute long-running
operations or deal with large data volumes. One method is Future methods, which allow me to execute processes in the
background, outside of the main thread, typically used for making callouts to external systems. I declare future methods using
the @future annotation.
Another method is Batch Apex, which I use when dealing with large datasets that need to be processed in chunks. Batch Apex
processes records asynchronously in manageable chunks of up to 200 records per transaction. I typically use this method when I
have long-running processes or need to ensure processing occurs without hitting governor limits. Here’s an example of how I
define a batch class:
global class MyBatchClass implements Database.Batchable<sObject> {
global Database.QueryLocator start(Database.BatchableContext BC) {
return Database.getQueryLocator([SELECT Id FROM Account WHERE Industry = 'Technology']);
}
global void execute(Database.BatchableContext BC, List<Account> scope) {
// Process each account record here
}
global void finish(Database.BatchableContext BC) {
// Final logic here
}
}
I also use Queueable Apex, which allows chaining jobs for sequential execution. This provides greater flexibility and control
over asynchronous processes compared to future methods.
8. What are custom metadata types, and how do they differ from custom
settings?
Custom metadata types and custom settings both store data that can be accessed across your Salesforce organization, but they
serve different purposes. Custom metadata types allow me to define reusable configurations that are deployable between
environments. The data in custom metadata types can be packaged, migrated between orgs, and treated like metadata itself. This
makes them ideal for things like application settings, configuration rules, or feature toggles that are consistent across
environments.
Custom settings, on the other hand, store organizational data that is specific to a particular environment. They can be either List
Custom Settings, which are shared across users and can hold multiple records, or Hierarchy Custom Settings, which allow
different values at the organizational, profile, or user level. Custom settings are often used for managing environment-specific
data like URLs or thresholds that change between environments. The major limitation of custom settings is that they are not
easily deployable like custom metadata types, making them less useful in large-scale applications with multiple environments.
9. Describe how to implement field-level security in a Visualforce page.
In Visualforce, ensuring field-level security is a critical step to protect data and respect user permissions. Even if a field is
present on the page, I must ensure that the user has permission to view or edit that field. To implement field-level security, I rely
on Schema.DescribeSObjectResult and Schema.DescribeFieldResult to check user access.
For example, if I want to display a field only if the user has permission, I use the following code:
if(Schema.sObjectType.Account.fields.Industry.isAccessible()) {
// Display field on Visualforce page
}
Similarly, if I need to enforce field-level security while editing records, I first check if the field is editable by the current user
before rendering it. This approach ensures that I never expose fields that users are restricted from accessing, preventing potential
security risks. Field-level security should also be checked in Apex controllers to ensure that programmatic access respects these
rules.
I can throw this exception in my Apex code when a certain condition is met, for instance, if an account’s type doesn’t match an
expected value:
if(account.Type != 'Customer') {
throw new InvalidAccountTypeException('Account type must be Customer.');
}
By using custom exceptions, I can make error handling more meaningful and provide clearer messages, which improves
troubleshooting during development or production issues. It also enables me to catch specific types of exceptions separately
from generic system exceptions.
Enroll for a career-building Salesforce online training tailored for aspirants preparing for jobs and Salesforce certification.
Register now!
11. How do you manage transactions and error handling in Apex?
In Apex, transactions are atomic units of work. All DML operations within a single transaction either succeed or fail as a
whole. If one part of the transaction fails, the entire operation is rolled back, which is managed automatically by Salesforce.
However, when I need finer control over transactions, I use try-catch blocks to manage error handling.
Within a try-catch block, I can attempt DML operations and handle any exceptions gracefully without letting the entire
transaction fail. Here’s an example:
try {
update myAccount;
} catch (DmlException e) {
System.debug('Error occurred: ' + e.getMessage());
}
If the update fails, the catch block will handle the exception, allowing me to either log the error or retry the operation based on
the situation. Additionally, Apex provides the Savepoint feature, which allows me to set a checkpoint in my transaction. If an
error occurs, I can roll back the transaction to that savepoint, preserving the earlier successful DML operations.
12. What is the difference between a standard controller and a custom
controller in Visualforce?
In Visualforce, a standard controller automatically provides the basic functionality for working with Salesforce objects,
including query, update, delete, and insert operations. I use a standard controller when I need out-of-the-box functionality like
fetching records or managing user navigation, without needing custom Apex logic. For example, if I create a Visualforce page
for an account, I can use a standard controller like this:
<apex:page standardController="Account">
<!-- Page content -->
</apex:page>
A custom controller, on the other hand, is an Apex class that I define, allowing complete control over the data and behavior of
the Visualforce page. Custom controllers are necessary when the logic is too complex for standard controllers to handle, or when
I need to work with multiple objects or execute complex business logic. In custom controllers, I manually implement all the
necessary actions, such as querying records or handling button clicks.
See also: Salesforce DML Interview Questions and Answers
13. How do you debug Apex code in Salesforce?
Debugging Apex code is an essential skill, and Salesforce provides various tools to help with this. One of the most commonly
used tools is the Debug Log, which allows me to capture and analyze execution details for specific users or processes. I activate
debug logs by setting trace flags for users or automated processes, and I can filter logs to focus on specific events like Apex
execution, SOQL queries, or DML operations.
Another useful tool is System.debug(), which I insert directly into my Apex code to log variable values, execution points, or
error messages. This function outputs information to the debug log, helping me track down issues in logic or data. For example, I
might include a statement like this to log the value of an account’s name:
System.debug('Account Name: ' + account.Name);
For more complex debugging, I also use the Apex Replay Debugger available in Salesforce Developer Console or Visual
Studio Code, which allows me to step through the code execution flow and identify the exact point of failure.
14. Explain what governor limits are and how you have addressed them in
past projects.
Governor limits are Salesforce’s way of ensuring that no single process monopolizes shared resources in a multi-tenant
environment. These limits apply to things like the number of SOQL queries, DML statements, and CPU time a single
transaction can consume. In past projects, I’ve had to optimize code to stay within these limits while still ensuring the desired
functionality.
To address SOQL query limits, I write bulkified code that processes multiple records at once. For example, instead of querying
records inside a loop, I retrieve all required records in a single query and then iterate over them in memory. Similarly, to avoid
hitting DML limits, I group multiple insert or update operations into a single statement rather than executing them one by one.
Additionally, for complex business processes, I use Batch Apex or Queueable Apex to break large operations into smaller,
more manageable tasks that don’t exceed the limits.
15. What is the purpose of the @AuraEnabled annotation in LWC and Aura
Components?
The @AuraEnabled annotation is crucial when building Lightning Web Components (LWC) and Aura Components that
interact with Apex controllers. This annotation exposes Apex methods to the client-side JavaScript code in LWC and Aura,
allowing the component to call the server-side method asynchronously. For example, I use @AuraEnabled when retrieving data
from the server or performing DML operations that the component needs to execute.
Here’s a simple example of an @AuraEnabled method in an Apex class:
public with sharing class AccountController {
@AuraEnabled
public static List<Account> getAccounts() {
return [SELECT Id, Name FROM Account LIMIT 10];
}
}
In this case, the getAccounts method can now be called from LWC or Aura using JavaScript, allowing for seamless integration
between the frontend and backend logic. This is especially useful for building responsive, dynamic interfaces where data must
be fetched or manipulated in real-time.
16. How do you pass data between parent and child Lightning Web
Components (LWC)?
In Lightning Web Components (LWC), passing data between parent and child components is a common task. I typically
use public properties and events to achieve this. If I want to pass data from a parent to a child component, I use public
properties in the child component that are bound to attributes in the parent’s template.
For example, in the child component’s JavaScript file, I declare a public property like this:
import { LightningElement, api } from 'lwc';
export default class ChildComponent extends LightningElement {
@api recordId;
}
In the parent component’s HTML, I bind the recordId attribute to a value, like this:
<c-child-component record-id={parentRecordId}></c-child-component>
To pass data from a child component to a parent component, I fire custom events in the child component and handle them in the
parent component. This ensures that the parent can respond to user interactions or data changes in the child component.
See also: Salesforce Service Cloud Interview Questions
17. How does the Lightning Data Service work in LWC?
The Lightning Data Service (LDS) in LWC is a powerful tool that allows me to interact with Salesforce records without
writing Apex code or SOQL queries. It simplifies data retrieval, creation, update, and deletion directly from LWC using
the lightning-record-form , lightning-record-view-form , or lightning-record-edit-form components. LDS also provides
caching and record synchronization capabilities, improving performance by reducing the number of server calls.
For example, when I need to display a record’s data, I use lightning-record-view-form to fetch and display the data from
Salesforce automatically. I don’t need to write any additional code to handle SOQL queries or DML operations, as LDS
manages everything in the background. This makes it a highly efficient way to interact with Salesforce data, especially for
building user-friendly interfaces.
18. What are the different types of bindings in LWC, and how do they
work?
In LWC, there are primarily two types of bindings: one-way data binding and two-way data binding. One-way data
binding allows data to flow from the parent component or controller to the child component or template. I typically use one-way
binding for displaying data in the component template. The data in the template is updated automatically when the property
value changes in the controller.
Two-way data binding, on the other hand, allows data to flow both ways. When a user interacts with an input field, the changes
are reflected in the component’s JavaScript controller, and vice versa. Two-way data binding is especially useful for forms
where the data in input fields should reflect the state of the component, as well as update the state based on user interaction.
19. How do you handle events in LWC, and what are the differences
between custom events and standard events?
In LWC, I handle events using the addEventListener method in JavaScript. There are two main types of events: standard
events and custom events. Standard events are predefined events like click , change , or submit that are triggered by user
interaction with HTML elements. I use standard events when I need to respond to common user actions like clicking a button or
submitting a form.
Custom events, on the other hand, are events that I define myself. These are useful when I need to pass data from a child
component to a parent component or when I want to trigger an event that is not covered by standard events. I create and dispatch
custom events using the CustomEvent constructor in JavaScript. Here’s an example of dispatching a custom event in LWC:
this.dispatchEvent(new CustomEvent('myevent', { detail: this.data }));
The parent component listens for this custom event using an event handler, allowing it to react based on the data passed through
the event.
20. Explain the difference between forceand the Apex approach for
fetching data in LWC.
In Lightning Web Components (LWC), force and Apex provide two distinct approaches to fetching data. forceuses Lightning
Data Service (LDS), allowing me to work with Salesforce records without writing Apex or SOQL queries. This is ideal for
scenarios where I need basic record operations like retrieving, creating, or updating records. LDS handles caching, data
synchronization, and sharing rules automatically, making it efficient and optimized for performance. It is a declarative approach,
meaning I can use standard components like lightning-record-form , lightning-record-view-form , and lightning-record-
edit-form to fetch and interact with records without custom server-side logic.
In contrast, using an Apex method allows for more complex and customized data retrieval. When I need to query multiple
objects, apply complex filtering, or execute business logic before returning data, I use Apex with @AuraEnabled methods.
With Apex, I have the flexibility to run SOQL queries, handle DML operations, and control the flow of data in a way
that forcecannot. However, using Apex requires manually managing governor limits, transaction control, and performance
considerations, while forceabstracts these concerns and optimizes the process automatically.
21. Describe how to implement a batch process in Apex, and when would
you choose batch Apex over other asynchronous methods?
In Apex, I implement a batch process by creating a class that implements the Database.Batchable interface. The class must
define three methods: start , execute , and finish . The start method is responsible for collecting the records to be processed in
the batch, the execute method performs the operation on those records in chunks, and the finish method performs any final
actions like sending notifications. Here’s a simple example of a batch class:
global class MyBatchClass implements Database.Batchable<SObject> {
global Database.QueryLocator start(Database.BatchableContext bc) {
return Database.getQueryLocator('SELECT Id FROM Account');
}
global void execute(Database.BatchableContext bc, List<SObject> scope) {
// Process each batch of records
for (Account acc : (List<Account>) scope) {
acc.Status__c = 'Processed';
}
update scope;
}
global void finish(Database.BatchableContext bc) {
// Post-processing tasks
System.debug('Batch Process Complete');
}
}
I choose Batch Apex when I need to process a large volume of records asynchronously. Batch Apex is especially useful when
the operation exceeds governor limits for synchronous execution or other asynchronous methods like Queueable or Future
methods. With Batch Apex, I can break down operations into smaller, manageable chunks and process them in batches of up to
2000 records, which helps avoid exceeding limits.
Enroll for a career-building Salesforce online training tailored for aspirants preparing for jobs and Salesforce certification.
Register now!
22. How do you create a trigger framework in Salesforce to manage
multiple triggers on the same object?
Creating a trigger framework helps me avoid potential issues when there are multiple triggers on the same object. The main
goal is to ensure that triggers are executed in a predictable order and to avoid duplication of logic. I usually follow a Trigger
Handler Framework pattern, where I write a single trigger per object, and the logic is delegated to a handler class. This allows
for better maintainability and separation of concerns.
In this framework, the trigger just determines the event (e.g., before insert, after update), while the handler class contains the
logic. For example, I might have a trigger like this:
trigger AccountTrigger on Account (before insert, after update) {
AccountTriggerHandler handler = new AccountTriggerHandler();
if (Trigger.isBefore && Trigger.isInsert) {
handler.beforeInsert(Trigger.new);
}
if (Trigger.isAfter && Trigger.isUpdate) {
handler.afterUpdate(Trigger.new);
}
}
In the AccountTriggerHandler class, I can further break down the logic based on each event, which helps in managing
complexity, especially when there are multiple triggers for different scenarios on the same object. This also makes future
updates easier to implement without changing the trigger directly.
23. What is the difference between with sharing and without sharing
keywords in Apex, and when would you use them?
The with sharing and without sharing keywords in Apex control whether a class respects the sharing rules and security settings
of the user running the code. When I declare a class with sharing, the code runs in the context of the current user and enforces
sharing rules. This means that only records the user has access to are processed in the code. For example, if a user has read-only
access to certain accounts, the code cannot update or delete those accounts.
On the other hand, without sharing means the code ignores sharing rules and runs with system-level privileges. I use this
approach when I need to bypass user-specific sharing settings, such as when performing administrative operations. However, I
need to be cautious with without sharing as it can lead to potential security risks if not handled properly, especially when
processing sensitive data.
I generally prefer with sharing for most business logic to ensure that the application respects user permissions. Without
sharing is reserved for specific use cases where elevated access is necessary, but I always carefully evaluate the need for it to
prevent security loopholes.
Read more: Salesforce Senior Business Analyst Interview Questions
24. How do you manage complex sharing rules and security model
implementations in your Apex code?
When managing complex sharing rules and the security model in Apex, I start by respecting the existing organization-wide
defaults (OWD), sharing rules, and role hierarchies that are in place. I use with sharing in my classes wherever applicable to
ensure that the Apex code follows the sharing rules defined for users. If certain operations need to bypass sharing for
administrative purposes, I selectively use without sharing while ensuring that this is well-documented and audited.
For highly complex scenarios, such as when multiple teams with different access requirements are involved, I might
implement Apex-managed sharing. This allows me to programmatically define custom sharing rules that go beyond the
declarative sharing settings. For instance, I can create share records manually for objects that don’t support standard sharing
settings. Using System.runAs(), I can also simulate different user profiles during testing to validate that the security model is
working as expected.
25. Explain how to implement custom pagination in Visualforce or LWC.
To implement custom pagination in Visualforce, I typically use Apex controllers and bind the result sets to the page. I limit
the query results using the LIMIT and OFFSET keywords in SOQL, and then I create navigation buttons (Next/Previous) to
navigate between the pages. For example:
public class AccountPaginationController {
public Integer offsetSize { get; set; }
public List<Account> getAccounts() {
return [SELECT Id, Name FROM Account LIMIT 10 OFFSET :offsetSize];
}
public void nextPage() {
offsetSize += 10;
}
public void previousPage() {
if (offsetSize > 0) offsetSize -= 10;
}
}
In LWC, pagination involves a more dynamic approach using JavaScript to manage state and control the display of records. I
can use data tables ( lightning-datatable ) and manage the slice of records to display. Pagination in LWC often involves
fetching a large dataset and rendering it in chunks, leveraging Lightning Data Service or Apex for back-end queries.
26. Describe how to use Platform Events for real-time integration in
Salesforce.
Platform Events are a powerful tool in Salesforce for handling real-time integrations. They follow a publish-subscribe model,
allowing me to send and receive events asynchronously across various systems. I define a Platform Event object, which acts
like a custom object, but instead of storing records, it generates event messages that can be consumed by subscribers.
When integrating Salesforce with external systems, I use Platform Events to send notifications in real-time. For example, if a
record changes in Salesforce, I can publish a Platform Event with the relevant data, and the external system can subscribe to
these events and react immediately. I publish events in Apex using the EventBus.publish() method, like this:
AccountChangeEvent__e event = new AccountChangeEvent__e();
event.AccountId__c = '001xx000003NGg7';
EventBus.publish(event);
External systems or other Salesforce orgs can then subscribe to these events using CometD, or they can be processed internally
using Apex triggers.
27. How would you implement caching in Lightning Web Components to
optimize performance?
In LWC, I implement caching by leveraging the Lightning Data Service (LDS), which caches record data automatically. When
I use LDS components like lightning-record-form or lightning-record-view-form, it handles caching behind the scenes,
reducing server calls for the same record and improving the component’s performance.
For custom caching, I use JavaScript to store frequently accessed data in memory, such as in the
browser’s localStorage or sessionStorage. This technique helps when I need to persist data across user sessions or interactions.
I also manage cache invalidation to ensure the data is not outdated, usually by clearing the cache upon record updates or setting
expiration timers for certain cached data.
28. What are the different ways to handle data manipulation operations in
Apex (insert, update, delete, and upsert)?
In Apex, I handle data manipulation operations using DML statements like insert , update , delete , and upsert . Each of
these operations serves a specific purpose:
Upsert: Inserts records if they don’t exist or updates them if they already do.
For example, I might use the following code to handle data operations efficiently:
List<Account> accounts = [SELECT Id, Name FROM Account WHERE Industry = 'Technology'];
for (Account acc : accounts) {
acc.Status__c = 'Active';
}
update accounts;
When dealing with large datasets, I use bulkified DML operations to avoid exceeding governor limits.
29. How do you handle large data volumes (LDV) in Salesforce, especially
when working with Apex or LWC?
Handling Large Data Volumes (LDV) in Salesforce requires a combination of best practices. In Apex, I rely on batch
processing (Batch Apex), query optimizations, and indexing to ensure that the queries and data processing are efficient. I
avoid queries within loops and ensure that I’m always aware of governor limits.
In LWC, when displaying large datasets, I implement lazy loading or infinite scrolling to load records in smaller batches as the
user scrolls, minimizing the initial load time. Additionally, I use pagination and ensure that queries fetching large datasets are
optimized, often by using filters and selective SOQL queries.
30. Explain how you can perform unit testing and code coverage in
Salesforce effectively.
Unit testing in Salesforce is crucial for ensuring code quality and reliability. I write test classes that verify the logic of my code
and cover all possible use cases, including positive, negative, and edge cases. In Salesforce, I aim to achieve at least 75% code
coverage for deployment. A typical test method includes setting up test data using Test.startTest() and Test.stopTest(),
executing the method or trigger being tested, and verifying the results using System.assert statements.
For example:
Map<Id, Account> accountsMap = new Map<Id, Account>([SELECT Id, Name FROM Account]);
Maps are especially helpful in situations like bulk processing records, where I need fast access to data based on a
record ID or another unique value.
5. How do you use SOQL and SOSL queries in Apex? When should you use
each?
In Apex, SOQL (Salesforce Object Query Language) is used to retrieve data from a single object or multiple
objects that are related to each other. SOQL queries are similar to SQL in structure and are often used when I need
to retrieve a specific set of records, such as querying accounts with specific conditions. For example:
List<Account> accounts = [SELECT Id, Name FROM Account WHERE Industry = 'Technology'];
On the other hand, SOSL (Salesforce Object Search Language) is used when I need to search for text across
multiple objects and fields. SOSL is highly efficient for searching across different objects for a particular keyword. It’s
especially useful when I don’t know which object a piece of data might reside in. For example:
List<List<SObject>> searchResults = [FIND 'Acme' IN ALL FIELDS RETURNING Account(Name), Contact(FirstName, LastName)];
I use SOQL when I know the exact object and fields I want to query, while SOSL is my choice for broad searches
across multiple objects and fields.
As a certified Salesforce consultant, I’ve worked with various types of relationships in Salesforce, each of which plays a critical role
in building effective data structures. Let me explain the key relationship types that I’ve encountered and used frequently.
The first is the Lookup Relationship, which I often use when two objects need to be related but can exist independently. This type
of relationship is flexible because the associated records aren’t dependent on each other. For instance, I’ve linked Contacts to
Accounts using a Lookup, allowing the Contact to exist even if the Account is deleted. This is useful when there’s no strict
dependency between the objects. I find Lookup Relationships ideal for scenarios where objects may reference each other, but the
lifecycle of one record doesn’t depend on the other.
Another relationship I frequently use is the Master-Detail Relationship, which creates a much stronger dependency between two
objects. The child (detail) object is completely dependent on the parent (master) object, and if the parent is deleted, all related child
records are also deleted. I’ve used this in cases like Opportunities and Opportunity Products, where the products tied to an
Opportunity should be deleted if the Opportunity no longer exists. This type of relationship helps enforce strict data integrity and
allows for useful features like roll-up summary fields, which I’ve leveraged to calculate totals or averages across child records.
Additionally, when I need to establish a Many-to-Many Relationship, I create a Junction Object. This is something I’ve used in
situations like managing Projects and Employees. A single project can involve many employees, and an employee can be part of
multiple projects. By using a junction object, I can easily manage these complex relationships, providing the flexibility needed for
many business use cases.
Finally, in my experience with Salesforce, I’ve also set up Hierarchical Relationships for users. This type is specific to the User
object and is incredibly useful when defining organizational structures. For instance, I’ve implemented this relationship in approval
processes where managers need to approve actions taken by their subordinates.
These relationship types, in my experience, are fundamental to building robust and scalable solutions in Salesforce. By selecting
the right relationship type, I ensure that my clients’ data models are not only efficient but also aligned with their business processes
and reporting needs.
Sharing Rules in Salesforce are a way to extend data access beyond the default sharing settings, like Role Hierarchies and
Organization-Wide Defaults (OWD). They allow you to open up access to records for certain groups of users who wouldn’t normally
have access, based on either record ownership or specific criteria.
In my previous project, I used sharing rules to ensure that specific teams had access to certain records without compromising data
security. For example, I worked on a banking application where we needed to give access to high-value customer records to
the Risk Management team without altering the Role Hierarchy or profiles. By setting up a criteria-based sharing rule, I could
ensure that any account marked as “High-Risk” would automatically be shared with the Risk Management team, giving
them Read/Write access to analyze and assess potential risks.
Another example was using owner-based sharing rules to share opportunities owned by a particular group of regional sales
reps with their regional managers, ensuring better collaboration and oversight within the teams. Sharing rules made it easier to
tailor access in a secure and efficient way.
Read more: TCS Salesforce Interview Questions
4. What are Profiles and Permission Sets?
Profiles and Permission Sets are key tools for controlling user access and permissions in Salesforce.
Profiles define the base level of access for a user. Each user is assigned one profile, which dictates what they can do in the
system, such as which objects they can access, what fields they can view, and what actions they can perform (like creating, editing,
or deleting records).
For example, if I have a Sales Profile for sales reps, it might grant access to objects like Leads, Opportunities, and Contacts. All
users with this profile can view and interact with these objects, but they might not have access to advanced features like system
settings or custom objects.
Permission Sets extend the access defined by profiles. While profiles provide the base permissions, permission sets allow for
adding extra permissions to specific users without changing their profile. A user can have only one profile but multiple permission
sets.
For instance, I might have a Marketing Profile that grants basic access to campaigns and leads. If one marketing team member
needs additional permissions to view detailed reports, I can create a Reporting Permission Set and assign it to that user. This
allows them to generate detailed reports without modifying their main profile, giving me the flexibility to manage permissions more
efficiently.
Read more about: Salesforce Senior Business Analyst Interview Questions
5. How do you set up field-level security in Salesforce?
Setting up field-level security in Salesforce is crucial for ensuring that sensitive data is protected and only accessible to the right
users. I typically start by navigating to the object manager and selecting the object that contains the field I want to secure. From
there, I go to the Fields & Relationships section, select the specific field, and then click on Set Field-Level Security. This allows
me to control visibility by profile, ensuring that only users with the appropriate permissions can view or edit the field. For example, I
might restrict access to a salary field so that only HR and managers can see it, while hiding it from other users.
Additionally, I use Permission Sets to provide more granular control over field-level security. By creating a permission set, I can
grant specific users access to fields without changing their profile settings. This is particularly useful when I need to temporarily
grant access for a specific project or task. I assign the permission set to the relevant users, ensuring they have the necessary
access without compromising the security of other data. This hands-on approach to managing field-level security helps maintain
data integrity and compliance, which is essential for any organization’s data governance strategy. By thoroughly understanding and
implementing field-level security, I ensure that our Salesforce data is both secure and accessible to those who need it.
Read more: Roles and Profiles in Salesforce Interview Questions
6. What is the difference between a role and a profile in Salesforce?
Understanding the difference between a role and a profile in Salesforce is fundamental for managing user access and permissions
effectively. A profile is a baseline set of permissions that determines what users can do within Salesforce, such as access to
objects, fields, and specific functionalities. When I set up a profile, I’m configuring what tabs users can see, what applications they
can access, and what actions they can perform on records. For instance, a Sales Rep profile might have access to Leads and
Opportunities objects, but not to HR-related objects. Profiles are essential for defining the basic operational framework for different
types of users in the organization.
On the other hand, a role determines the data visibility within the Salesforce organization based on the hierarchy. Roles are used
to set up the sharing rules and control the access to records within the organization. For example, a Sales Manager role might
allow access to all records owned by their team, while a Sales Rep role only allows access to their own records. This hierarchical
approach ensures that managers can oversee and access their team’s data, enabling effective data sharing and collaboration.
By using roles and profiles together, I can create a robust security model. Profiles set the functional permissions, while roles
handle data visibility, ensuring users have the right access without compromising security. This hands-on approach allows me to
tailor the user experience precisely, ensuring each user has the access they need to perform their job efficiently while protecting
sensitive information. My thorough understanding of these concepts and their practical implementation is crucial for maintaining a
secure and efficient Salesforce environment.
Read more about Roles and Profiles
7. What are triggers in salesforce, and how you used in your previous project?
Triggers in Salesforce are pieces of code that execute automatically when certain events occur, such as before or after a record is
inserted, updated, or deleted in the database. Triggers allow for custom actions to take place when these events happen, enabling
me to automate complex business processes that standard Salesforce functionality might not cover.
In my previous project, I used triggers extensively to automate processes within a banking application. For instance, I wrote a
trigger that automatically updated a Customer’s Payment Status after a successful wire transfer. This trigger would fire after the
payment record was inserted, and it would check for specific conditions like transaction success and update related records in
other objects.
Another example involved a before update trigger on the Account object, which validated certain business rules. If an account’s
status changed, the trigger would ensure that necessary fields were filled out correctly, preventing incomplete or incorrect data from
being saved. These triggers helped streamline workflows, reduce manual errors, and ensure that critical processes happened
without the need for user intervention.
Read more Triggers in Salesforce interview questions and answers.
8. How do you create and manage workflow rules in Salesforce?
Creating and managing workflow rules in Salesforce is a critical part of automating business processes and improving efficiency. I
start by navigating to Setup, then selecting Workflow Rules under the Process Automation section. To create a new workflow rule,
I click on New Rule, choose the object to which the rule applies, and set the criteria that trigger the workflow. For example, I might
create a rule for the Opportunity object that triggers when the stage is updated to “Closed Won.” This ensures that when an
opportunity is successfully closed, specific actions are automatically initiated, such as sending a congratulatory email to the sales
team or updating related records.
Once the criteria are defined, I move on to specifying the actions that should be executed when the rule criteria are met. These
actions can include field updates, email alerts, task creation, or outbound messages. For instance, in my previous example, I
might set an action to update the account status to “Customer” and create a follow-up task for the account manager to schedule a
kickoff meeting. After defining the actions, I activate the workflow rule, ensuring it’s immediately effective in streamlining processes.
Managing workflow rules involves regularly reviewing and updating them to align with evolving business processes. I ensure that
rules are performing as expected by monitoring their execution and checking the workflow rule logs for any issues. Additionally, I
document all workflow rules thoroughly to maintain a clear understanding of automation logic within the team. By staying proactive
and detail-oriented in managing workflow rules, I ensure that Salesforce automation continues to drive efficiency and accuracy in
business operations. My hands-on experience with creating and managing workflow rules demonstrates my ability to leverage
Salesforce’s automation capabilities effectively, making me a valuable asset for optimizing your organization’s processes.
I often use permission sets in Salesforce to provide users with additional access rights without modifying their profiles. For
instance, in a recent project, our sales team needed temporary access to a new reporting feature we were testing. Instead of
altering their existing profiles, which could have unintended consequences, I created a permission set specifically for this new
feature.
To do this, I navigated to Setup, selected Permission Sets under the Users section, and clicked on New to create the set. I named
it “Reporting Feature Access” and chose the appropriate license type. Then, I added the necessary permissions, such as access
to the custom objects and fields related to the reporting feature. After configuring the permission set, I assigned it to the sales team
members who needed access. This way, they could use the new reporting tools without affecting their primary access rights.
Read more: Which Salesforce Certification is Easy for Beginners?
Managing permission sets involves keeping them up-to-date and relevant to current business needs. I regularly review assigned
permission sets to ensure they are still required and adjust permissions as needed. For example, when the project ended, I
removed the “Reporting Feature Access” permission set from the users, ensuring their permissions returned to the standard
settings. This hands-on approach with permission sets allows me to provide flexible and precise access control, ensuring users
have the right tools while maintaining security. My experience with creating and managing permission sets demonstrates my ability
to adapt quickly and maintain a secure and efficient Salesforce environment, making me a valuable asset for your team.
Read more: This Permission Sets Step-by-Step will explain better.
10. How do you set up and use the Salesforce Data Loader?
Salesforce Data Loader is a client application used for bulk data import and export. To set up the Data Loader, download and install
it from the Salesforce Setup. Once installed, launch the Data Loader and log in using your Salesforce credentials. For importing
data, prepare a CSV file with the data to be imported and map the CSV fields to Salesforce fields using the Data Loader interface.
For exporting data, select the object and fields you want to export and specify the criteria for the data. The Data Loader can handle
large volumes of data efficiently and supports operations such as insert, update, upsert, delete, and export. It is especially useful for
data migration, backup, and bulk updates.
11. How do you create a custom object in Salesforce?
Creating a custom object in Salesforce allows you to store data unique to your business needs. To create a custom object, navigate
to Setup, and under the ‘Object Manager’ tab, click ‘Create’ and select ‘Custom Object’. Enter the object’s label, plural label, and
object name, and configure optional settings such as record name format and object permissions. Once saved, Salesforce
generates standard fields like Created By and Last Modified By. You can then add custom fields, set up page layouts, and define
relationships with other objects. Custom objects provide flexibility in modeling complex data structures tailored to specific business
requirements.
This Detailed article is here Objects and Tabs in Salesforce explained it better.
12. What is the difference between a lookup and master-detail relationship?
In this salesforce interview question, the interviewer expects a thorough answer. A lookup relationship is a loosely coupled
relationship between two objects, allowing records to be linked without dependency on each other. For instance, a Contact can
have a lookup to an Account but can exist independently of it. Conversely, a master-detail relationship is tightly coupled, meaning
the detail (child) record is dependent on the master (parent) record. If the master record is deleted, the detail records are also
deleted. Master-detail relationships also inherit sharing rules and security settings from the master record, providing more control
over data access and integrity.
13. What are Validation Rules? How do you create a validation rule in Salesforce?
Validation rules enforce data quality by ensuring that records meet certain criteria before they are saved. This question evaluates
your understanding of data integValidation rules in Salesforce ensure data accuracy and consistency by preventing users from
saving records that don’t meet specified criteria. They contain logical expressions that evaluate the data entered into fields and
return “True” or “False.” When a rule evaluates to “True,” it prevents the record from being saved and displays a custom error
message. Validation rules help enforce business rules, ensuring that only clean and valid data is stored in the system. They are
crucial for maintaining data integrity across the platform.
I frequently create validation rules in Salesforce to maintain data integrity and ensure that users enter accurate information. For
instance, in a recent scenario, we needed to ensure that the close date of an opportunity couldn’t be set in the past. To address
this, I implemented a validation rule that prevents users from saving a record if the close date is earlier than today.
To create this validation rule, I started by navigating to Setup, then selected the object for which I wanted to create the rule, in this
case, the Opportunity object. From there, I went to Validation Rules under the object’s settings and clicked on New. I named the
rule “Close Date Cannot Be in the Past” and provided a meaningful description for clarity. In the Error Condition Formula box, I
entered the formula CloseDate < TODAY() , which checks if the close date is less than the current date. I then specified the error
message, such as “Close Date cannot be in the past,” which will be displayed to users if they attempt to save a record that violates
this rule.
After saving the rule, I tested it by trying to create and edit opportunity records with past close dates to ensure it worked as
expected. By doing this, I confirmed that the validation rule effectively prevented invalid data from being saved. Regularly reviewing
and updating validation rules is part of my hands-on approach to maintaining data quality. My experience with creating and
managing validation rules shows that I can implement precise data controls, ensuring the integrity and reliability of the information
within Salesforce. This practical, detail-oriented approach to validation rules makes me confident in my ability to enhance data
quality in your organization.
As a certified Salesforce consultant, I often explain governor limits as the set of rules that Salesforce enforces to maintain the
efficiency and stability of its multi-tenant environment. Since Salesforce is a cloud-based platform where multiple customers share
the same resources, governor limits are crucial for ensuring that no single organization consumes too much processing power,
memory, or database capacity.
Governor limits control how much data or how many resources I can use in one transaction or execution. For example, there are
limits on the number of SOQL queries, DML statements, and API calls I can perform in a single transaction. These limits ensure
that my code is optimized and doesn’t impact the performance of the overall system. Some common governor limits include 50,000
SOQL query rows and 100 SOQL queries per transaction.
Understanding these limits helps me design efficient solutions and prevent performance issues or errors such as “Too many SOQL
queries” or “Too many DML statements.” Properly handling governor limits is key to delivering scalable and reliable solutions in
Salesforce.
We need to answer this questions in a scenario based situation with example. I often use sandboxes in Salesforce to create a safe
environment for development, testing, and training without affecting the live production data. For instance, when we were preparing
to implement a new feature, I set up a Developer Sandbox to test our changes extensively before deploying them to production.
To set up a sandbox, I navigated to Setup, then selected Sandboxes under the Environment section. I clicked on New Sandbox,
gave it a name, and chose the type of sandbox based on our needs – in this case, a Developer Sandbox for development
purposes. After selecting the type, I configured any necessary settings and clicked Create. The creation process took some time,
depending on the sandbox type and the size of the data being copied.
Once the sandbox was ready, I logged into it using the unique URL provided. In this isolated environment, I could freely develop
new features, perform tests, and experiment with configurations without any risk to our production data. For example, I created and
tested custom objects, workflows, and validation rules to ensure they functioned correctly. If I encountered any issues, I could
troubleshoot and resolve them within the sandbox, ensuring that only fully vetted changes were moved to production.
Regularly refreshing and managing sandboxes is part of my routine to keep them up-to-date with the latest production metadata.
This hands-on approach with sandboxes allows me to deliver robust and reliable solutions while minimizing risks. My experience
with setting up and using sandboxes ensures that I can maintain a high standard of quality and efficiency in Salesforce
development and deployment, making me a valuable asset to your team.
Standard objects in Salesforce are pre-built objects provided by Salesforce to manage core CRM data, such as Accounts,
Contacts, Leads, and Opportunities. These objects come with predefined fields, relationships, and functionalities tailored to
common business processes. Custom objects, on the other hand, are created by users to store data specific to their organization’s
needs. Custom objects offer flexibility in defining fields, relationships, and custom functionalities that standard objects may not
cover. This distinction allows businesses to extend Salesforce’s capabilities to fit unique requirements while leveraging robust
standard objects for common CRM tasks.
Standard Objects Custom Objects
Predefined by Salesforce and available out-of-the-box. Created by users to meet specific business needs.
Examples include Accounts, Contacts, Opportunities. Examples include Project__c, Invoice__c, Employee__c.
Limited customization options compared to custom objects. Highly customizable with fields, relationships, and rules.
Automatically included in standard Salesforce reports and dashboards. Require custom reports and dashboards to be created.
Standard Objects Custom Objects
Updates and enhancements managed by Salesforce. Updates and enhancements managed by the organization.
In my practical experience, the Schema Builder in Salesforce is an incredibly useful tool for visualizing and managing our data
model. I typically start by navigating to Schema Builder from the Setup menu. Once there, I use it to view all objects and their
relationships in a single, interactive interface.
One of the key ways I leverage Schema Builder is by creating custom objects and fields directly within the interface. This visual
approach allows me to quickly see how new fields and objects will integrate with the existing data model. For example, if I need to
add a new custom object for tracking project milestones, I can create it in Schema Builder, add the necessary fields, and establish
relationships with other objects by drawing connections between them.
Another practical use is for modifying existing objects. If I need to add a new field to an object or change a field type, doing it
through Schema Builder helps ensure that I understand the impact on related objects and fields. I can also easily set field-level
security and validation rules right there, making it a one-stop-shop for data model changes.
Additionally, Schema Builder is excellent for troubleshooting and optimization. When dealing with complex data models, it helps me
visually trace relationships and dependencies, making it easier to identify and resolve issues such as lookup or master-detail
relationship errors.
Overall, Schema Builder streamlines the process of managing our Salesforce data architecture, ensuring that changes are
implemented correctly and efficiently, which is crucial for maintaining data integrity and supporting business processes.
Salesforce Advanced Admin Interview Questions and Answers
18. What are the different types of sharing rules available in Salesforce?
In Salesforce, sharing rules are used to extend record access to users based on criteria or ownership. There are two main types:
criteria-based and owner-based sharing rules. Criteria-based sharing rules grant access to records that meet certain criteria, such
as sharing all accounts in a specific industry with a sales team. Owner-based sharing rules grant access to records owned by
certain users, such as sharing all records owned by users in a specific role with another role. These rules enhance the flexibility of
record sharing beyond the role hierarchy, ensuring that the right users have access to the right data based on business needs.
Here’s an Apex code example that demonstrates how to create both Owner-based Sharing Rules and Criteria-based Sharing
Rules programmatically in Salesforce:
Owner-based Sharing Rule Example
// Create a new Owner-based sharing rule for the Account object
public with sharing class OwnerBasedSharingRuleExample {
// Specify the Account record to be shared (replace with actual record Id)
newShare.ParentId = '0015g00000XYZ123';
// Specify the user or group to share with (replace with actual User or Group Id)
newShare.UserOrGroupId = '0055g00000ABC456';
// Specify the Opportunity record to be shared (replace with actual record Id)
newShare.ParentId = '0065g00000XYZ789';
// Specify the user or group to share with (replace with actual User or Group Id)
newShare.UserOrGroupId = '0055g00000DEF123';
Explanation:
Owner-based Sharing Rule: This example shares an Account record based on the owner of the record with a
specific user or group. The access level ( Read or Edit ) is specified in the AccessLevel field.
Criteria-based Sharing Rule: This example shares an Opportunity record with a specific user or group based
on certain criteria (e.g., opportunities with a specific stage). The criteria are defined in the RowCause field.
19. How do you create and manage a dashboard in Salesforce?
You can answer this salesforce interview question in your own words as follows:
Creating and managing dashboards in Salesforce is a vital part of how I drive data-driven decision-making within the team. Let me
share a recent example where I built a dashboard to track our sales performance. The goal was to give the sales team and
management a clear, real-time view of key metrics like closed deals, pipeline status, and individual sales rep performance.
To get started, I navigated to the Dashboards tab and clicked on New Dashboard. I named it “Sales Performance Dashboard” and
chose the appropriate folder for access control. The next step was to add components to the dashboard. I selected different report
charts and tables that I had previously created, such as bar charts for monthly sales comparisons, pie charts for deal sources, and
tables for individual sales rep performance. Each component was added to the dashboard by clicking Add Component, selecting
the relevant report, and choosing the best visualization type for that data.
Read this: LWC Tutorial – Basics and Component Structure
Customization is key to making dashboards truly useful. I adjusted the layout to highlight the most critical metrics at the top,
ensuring they are immediately visible when someone opens the dashboard. Additionally, I configured the dashboard to refresh
automatically on a daily basis so that the data stays current without manual intervention. To ensure the dashboard was user-
friendly, I added descriptions to each component, explaining what the data represents and why it’s important.
Managing dashboards involves regularly reviewing them to ensure they continue to meet the team’s needs. I solicit feedback from
users and make adjustments as necessary, such as adding new metrics or modifying existing ones based on changing business
priorities. This hands-on, iterative approach ensures our dashboards remain relevant and actionable, providing the insights our
team needs to make informed decisions. My experience in creating and managing dashboards demonstrates my ability to translate
data into meaningful insights, a crucial skill for driving performance and achieving business goals.
Read more about: Salesforce Data Loader Interview Questions and Answers
20. What is the purpose of the Salesforce AppExchange?
The Salesforce AppExchange is an online marketplace where users can find, evaluate, and install third-party applications and
solutions that extend Salesforce’s capabilities. It offers a wide range of apps, components, and consulting services tailored to
various business needs, such as marketing automation, data management, and industry-specific solutions. The AppExchange
allows businesses to enhance their Salesforce environment without needing extensive custom development. Users can browse
reviews, test apps in their sandbox environments, and seamlessly integrate chosen solutions into their Salesforce instance. This
ecosystem promotes innovation and enables businesses to leverage specialized tools to optimize their operations and drive growth.
Code Snippet Example: Installing an App from AppExchange using Salesforce CLI
While installing apps from the AppExchange is typically done through the Salesforce UI, you can automate the installation process
using Salesforce CLI for certain packages. Here’s a basic example of how to install a package using the Salesforce CLI:
# Authenticate into your Salesforce org
sfdx force:auth:web:login -a MyOrgAlias
Explanation:
sfdx force:auth:web:login : Authenticates to your Salesforce org using a web-based login. The -a MyOrgAlias parameter assigns
an alias to your org for easier reference.
sfdx force:package:install : Installs a package into your Salesforce org using the package’s unique ID ( 04t1t0000022abcAAA ).
The --wait and --publishwait parameters control how long the CLI waits for the installation process, and --noprompt skips any
prompts during the installation.
Read more about: Salesforce CPQ Interview Questions and Expert Answers
21. How do Page Layouts and Record Types work in Salesforce?
Page Layouts and Record Types in Salesforce are tools that help customize how data is displayed and accessed by users. Page
Layouts control the layout and organization of fields, buttons, related lists, and other elements on a record detail page. They allow
administrators to tailor the user interface to meet specific business needs, ensuring that users see relevant information. Record
Types, on the other hand, enable the creation of different business processes, picklist values, and Page Layouts for various user
profiles. They are particularly useful for organizations with complex requirements, allowing different sets of data and workflows for
different types of records within the same object.
22. How can Account and Contact information be imported into Salesforce?
Account and Contact information can be imported into Salesforce using tools like the Data Import Wizard and Data Loader. The
Data Import Wizard is a user-friendly tool accessible via Setup that allows you to import data for standard objects like Accounts and
Contacts, as well as custom objects. It supports files up to 50,000 records and provides a step-by-step interface to map your data
fields. Data Loader, a more advanced tool, can handle larger data volumes and supports various operations such as insert, update,
upsert, delete, and export. It is suitable for complex data import scenarios and allows greater control over the import process.
Creating Leads and Opportunities in Salesforce is crucial for managing the sales pipeline effectively. Let me walk you through
how I approach this process to ensure seamless tracking and conversion of prospects.
When it comes to creating Leads, I utilize multiple methods depending on the source of the lead. For instance, if leads come from a
marketing campaign, I import them in bulk using the Data Import Wizard. This tool allows me to map fields from a CSV file to
corresponding Salesforce fields, ensuring all relevant information is captured accurately. Once the leads are imported, I
immediately set up lead assignment rules to distribute them to the appropriate sales reps based on criteria such as geographic
location or product interest. This automated process ensures that no lead falls through the cracks and each one is promptly
attended to.
Read more: Salesforce OWD Interview Questions and answers
On the other hand, Opportunities are created once a lead is qualified. I convert the lead to an opportunity by clicking
the Convert button on the lead record, which seamlessly transfers the data to the Opportunity object. During the conversion
process, I make sure to fill in critical details like the opportunity stage, expected close date, and potential deal amount. This
information is crucial for forecasting and pipeline management. Additionally, I link the opportunity to the appropriate account and
contact records to maintain a clear connection between the prospect and the sales process.
Managing these records involves regularly updating the opportunity stages as deals progress through the pipeline. I also set
up workflow rules and email alerts to notify the team of important changes or actions needed, such as when an opportunity
reaches a critical stage or if it’s been stagnant for too long. This proactive management ensures that opportunities are always
moving forward and that the sales team is aligned on next steps.
By effectively creating and managing Leads and Opportunities, I help maintain an organized and efficient sales process, ensuring
that our team can focus on closing deals and driving revenue. My hands-on experience with Salesforce’s lead and opportunity
management capabilities underscores my ability to optimize sales operations and support business growth.
A junction object in Salesforce is a custom object used to create a many-to-many relationship between two other objects. It
typically has two Master-Detail relationships, one with each of the objects it connects. Junction objects are useful in scenarios
where records from two objects need to be associated with each other multiple times. For example, in a project management
application, a junction object called ‘ProjectAssignment’ could be used to link ‘Projects’ and ‘Employees’ objects, allowing multiple
employees to be assigned to multiple projects. This setup provides a flexible and scalable way to model complex data relationships
in Salesforce.
Junction Object in Salesforce
Here is a visual representation explaining a junction object in Salesforce. The illustration shows two types of objects, “Students”
and “Courses,” connected by a junction object called “Enrollment.” It highlights how the “Enrollment” junction object creates a
many-to-many relationship, allowing one student to enroll in many courses and one course to have many students.
Let’s say we need to track which Students are enrolled in which Courses.
1. Create the Custom Objects:
Student (Custom Object)
Course (Custom Object)
Enrollment (Junction Object)
2. Create Lookup Relationships:
On the Enrollment object, create two master-detail relationships:
Student (Related to Student)
Course (Related to Course)
3. Apex Code Example:
public class EnrollmentExample {
Explanation:
Field dependencies in Salesforce allow you to control the values of a dependent picklist based on the value selected in a controlling
picklist. To create a field dependency, navigate to the object manager, select the object, and go to ‘Field Dependencies’. Click
‘New’, choose the controlling and dependent fields, and define the dependency matrix. The matrix allows you to specify which
values in the dependent picklist are available for each value in the controlling picklist. Managing field dependencies helps ensure
data consistency and relevance, enhancing user experience by providing context-specific options.
Let’s say you have two picklist fields on a custom object: “Country” (Controlling Field) and “State” (Dependent Field). You want
the “State” picklist to show only the states that correspond to the selected “Country.”
Steps:
While Salesforce’s point-and-click interface is typically used to manage field dependencies, you can also manage picklist values
programmatically using Apex, especially for more complex scenarios. Here’s a simple example:
public with sharing class FieldDependencyExample {
// Insert the record with the dependent picklist value set correctly
insert record;
}
}
Explanation:
Controlling Field: The Country__c field controls the available values for the State__c field.
Dependent Field: The State__c field’s options are filtered based on the value of Country__c.
The code checks the value of the controlling field and sets the dependent field accordingly before inserting the
record.
This code example demonstrates the basic idea of how you might handle field dependencies programmatically, though most field
dependencies are typically managed through Salesforce’s declarative tools rather than Apex.
The main types of relationships you can create between objects in Salesforce are Lookup, Master-Detail, and Many-to-Many
relationships. Lookup relationships link two objects in a loosely coupled manner, allowing the child record to exist independently of
the parent. Master-Detail relationships are tightly coupled, with the child record dependent on the parent record for its existence.
This relationship also shares security settings and deletion rules. Many-to-Many relationships are achieved using a junction object,
which is a custom object with two Master-Detail relationships, linking each record of one object to multiple records of another.
Ensuring data quality and integrity in Salesforce involves implementing best practices and tools to maintain accurate and consistent
data. Key strategies include using validation rules to enforce data entry standards, employing field dependencies to ensure relevant
data selection, and using workflow rules and process automation to standardize data processes. Regular data audits and
deduplication processes help identify and correct inconsistencies. Additionally, training users on proper data entry procedures and
establishing clear data governance policies contribute to maintaining high data quality. Tools like Data Loader and third-party data
management solutions can assist in cleaning and managing large datasets.
Managing user access and permissions in Salesforce involves configuring profiles, permission sets, and roles to control what users
can see and do within the platform. Profiles define a user’s baseline permissions, including object-level permissions, field-level
security, and user permissions. Permission sets extend user permissions without altering their profile, allowing for more granular
access control. Roles determine data visibility through the role hierarchy, enabling record-level access sharing based on
organizational structure. Additionally, sharing rules, manual sharing, and organization-wide defaults (OWD) further refine access
controls. By carefully setting up these elements, administrators can ensure that users have appropriate access while maintaining
data security.
29. What is the difference between Lightning Experience and Salesforce Classic?
Lightning Experience and Salesforce Classic are two different user interfaces for Salesforce. Salesforce Classic is the original
interface, known for its simplicity and ease of use but with limited customization and modern features. Lightning Experience,
introduced later, offers a more modern, dynamic, and customizable user interface. It includes advanced features like the Lightning
App Builder, enhanced dashboards and reports, and improved performance. Lightning Experience supports component-based
architecture, allowing users to build and customize pages with drag-and-drop functionality. While Classic remains available for
legacy support, Salesforce is continuously enhancing Lightning Experience, encouraging users to transition for better productivity
and functionality.
The Salesforce AppExchange is an online marketplace where users can discover, evaluate, and install third-party applications and
solutions that extend Salesforce’s capabilities. It offers a wide range of apps, components, and consulting services designed to
meet various business needs, such as marketing automation, data management, and industry-specific solutions. The AppExchange
allows businesses to enhance their Salesforce environment without requiring extensive custom development. Users can browse
reviews, test apps in sandbox environments, and seamlessly integrate chosen solutions into their Salesforce instance. This
ecosystem promotes innovation and enables businesses to leverage specialized tools to optimize their operations and drive growth.
6. What is CRM?
Answer: Think of a CRM (Customer Relationship Management) system as the nerve center for managing all your customer
interactions and data. In my experience, a CRM is essential for organizing, automating, and synchronizing sales, marketing,
customer service, and technical support. It centralizes customer information, tracks interactions, and streamlines processes,
making it easier to build and maintain relationships.
For example, in a sales environment, I use CRM to track leads, manage opportunities, and monitor performance metrics. This not
only boosts productivity but also provides valuable insights into customer behavior and preferences. By leveraging CRM, we can
deliver personalized experiences, enhance customer satisfaction, and ultimately drive business growth, showcasing my ability to
harness technology for impactful results.
1. Microsoft Dynamics 365: A comprehensive CRM solution that integrates seamlessly with other Microsoft
products, offering sales, customer service, and marketing automation.
2. HubSpot CRM: Known for its user-friendly interface and free CRM offering, HubSpot provides tools for
marketing, sales, and customer service.
3. Zoho CRM: Offers a wide range of features at competitive pricing, suitable for small to medium-sized businesses,
with modules for sales automation, marketing automation, and customer support.
4. SAP Customer Experience: Part of the SAP suite, this CRM focuses on providing a unified customer experience
across various channels and touchpoints.
5. Oracle CX: A robust CRM system from Oracle, offering sales, marketing, and service automation with strong
analytics and AI capabilities.
6. Pipedrive: A sales-focused CRM designed to help small and medium-sized businesses manage their sales
processes and pipelines effectively.
7. SugarCRM: Known for its flexibility and customization options, SugarCRM offers sales, marketing, and customer
support functionalities.
8. Salesforce Service Cloud: While part of the Salesforce suite, it specifically focuses on customer service and
support, providing robust tools for case management and customer interactions.
These CRM solutions cater to various business needs and sizes, offering different levels of functionality, customization, and
integration capabilities.
For example:
9. What are different Salesforce Editions? Why are there so many editions?
Answer: Salesforce provides bundles of features and services, each geared toward specific business needs. These bundles,
called editions, share a look and feel but vary by functionality and pricing. For example, Custom fields allowed per object are
different in each edition. In the Enterprise edition, we can create up to 500 fields per object, while in the unlimited edition, we can
create 800. Salesforce comes in these editions: Essentials, Professional, Enterprise, Unlimited, and Developer Editions.
Salesforce Admin Certification Chapter wise Questions
Chapter 1: Cloud Computing
The “Cloud Computing” section is a vital topic in the Salesforce Admin Certification, reflecting the importance of understanding the
cloud infrastructure that powers Salesforce. Mastery of cloud computing concepts is crucial for interview preparation, as
interviewers frequently assess candidates’ knowledge in this area. Utilizing resources like Trailhead can enhance your
understanding and readiness for any interview. In today’s tech-driven landscape, proficiency in cloud computing is indispensable for
any Salesforce professional.
6. What is CRM?
Answer: Think of a CRM (Customer Relationship Management) system as the nerve center for managing all your customer
interactions and data. In my experience, a CRM is essential for organizing, automating, and synchronizing sales, marketing,
customer service, and technical support. It centralizes customer information, tracks interactions, and streamlines processes,
making it easier to build and maintain relationships.
For example, in a sales environment, I use CRM to track leads, manage opportunities, and monitor performance metrics. This not
only boosts productivity but also provides valuable insights into customer behavior and preferences. By leveraging CRM, we can
deliver personalized experiences, enhance customer satisfaction, and ultimately drive business growth, showcasing my ability to
harness technology for impactful results.
1. Microsoft Dynamics 365: A comprehensive CRM solution that integrates seamlessly with other Microsoft
products, offering sales, customer service, and marketing automation.
2. HubSpot CRM: Known for its user-friendly interface and free CRM offering, HubSpot provides tools for
marketing, sales, and customer service.
3. Zoho CRM: Offers a wide range of features at competitive pricing, suitable for small to medium-sized businesses,
with modules for sales automation, marketing automation, and customer support.
4. SAP Customer Experience: Part of the SAP suite, this CRM focuses on providing a unified customer experience
across various channels and touchpoints.
5. Oracle CX: A robust CRM system from Oracle, offering sales, marketing, and service automation with strong
analytics and AI capabilities.
6. Pipedrive: A sales-focused CRM designed to help small and medium-sized businesses manage their sales
processes and pipelines effectively.
7. SugarCRM: Known for its flexibility and customization options, SugarCRM offers sales, marketing, and customer
support functionalities.
8. Salesforce Service Cloud: While part of the Salesforce suite, it specifically focuses on customer service and
support, providing robust tools for case management and customer interactions.
These CRM solutions cater to various business needs and sizes, offering different levels of functionality, customization, and
integration capabilities.
Read more: Salesforce Senior Business Analyst Interview Questions
8. How many times does Salesforce release updates every year?
Answer:
Salesforce releases updates three times a year. These updates, known as seasonal releases, are named after the seasons in
which they occur: Spring, Summer, and Winter. Each release brings new features, enhancements, and bug fixes, ensuring that the
platform remains current and continuously improves to meet the needs of its users.
For example:
9. What are different Salesforce Editions? Why are there so many editions?
Answer: Salesforce provides bundles of features and services, each geared toward specific business needs. These bundles,
called editions, share a look and feel but vary by functionality and pricing. For example, Custom fields allowed per object are
different in each edition. In the Enterprise edition, we can create up to 500 fields per object, while in the unlimited edition, we can
create 800. Salesforce comes in these editions: Essentials, Professional, Enterprise, Unlimited, and Developer Editions.
Chapter 3: Force.com & Environments
The “Force.com & Environments” section is crucial for any Salesforce Admin, encompassing the platform’s architecture and various
environments used for development and testing. Understanding these concepts is vital for effective system management and
customization. Utilizing Trailhead can enhance your interview preparation, ensuring you are well-equipped for any Salesforce
interview. Mastery of Force.com & Environments enables you to efficiently manage and optimize the CRM platform, an essential
skill for any Salesforce admin.
Schema Builder: Allows you to visually create and manage objects, fields, and relationships within Salesforce. It’s useful for
admins and developers who prefer a visual interface over writing code.
Apex Code Example: This code snippet demonstrates how to create a custom object named Project__c using Apex. The object is
defined with a label, a name field, and its sharing model. The MetadataService is used to handle the creation of the object
programmatically.
26. Can you change the value formula field on the record?
Answer: No, you cannot change the value of a formula field on a record directly. Formula fields are read-only and their values are
automatically calculated based on the defined formula. To change the value displayed in a formula field, you need to modify the
fields that the formula references.
What is Salesforce Batch Apex?
27. What is a dependent picklist?
Answer: A dependent picklist is a type of picklist in Salesforce that allows you to filter its values based on the value selected in
another controlling picklist or checkbox field. This creates a relationship where the value of the dependent picklist changes
dynamically based on the selected value of the controlling field, enhancing data consistency and user experience.
28. What fields can be made dependent?
Answer: In Salesforce, picklist fields (both standard and custom) and custom checkbox fields can be made dependent fields.
Dependent fields have their values filtered based on the value of a controlling field.
Read more: Important Salesforce Experience Cloud Interview Questions
29. What is the difference between ISNULL and ISBLANK?
Answer: ISBLANK has the same functionality as ISNULL but also supports text fields as text fields are never null; hence using
ISNULL on text fields would always return false while is blank returns T or F depending on if the field is empty or not.
ISNULL : This function checks if a field is null (empty). It can be used with number, currency, and date fields. It
returns true if the field is null.
ISBLANK : This function checks if a field is empty or contains only spaces. It can be used with text fields. For text
fields, ISNULL will not work as expected, but ISBLANK can be used instead. It returns true if the field is empty.
In most recent Salesforce versions, ISBLANK is preferred over ISNULL because it covers more use cases.
30. Can we convert formula fields into any other data type?
Answer: No, formula fields cannot be directly converted into other data types. If you need to change a formula field to another data
type, you must create a new field with the desired data type and then populate it with the required values, potentially using a data
migration or update process.
31. Can we mark standard fields as dependent fields?
Answer: No, standard fields cannot be marked as dependent fields. Only custom picklist fields and custom checkbox fields can be
marked as dependent fields in Salesforce.
32. Can we define checkbox and multi-select fields as controlling fields?
Answer: No, we can’t define multi-select as the controlling field, but we can define the checkbox as the controlling field.
Chapter 5: UI Customization
The “UI Customization” section is pivotal for any Salesforce Admin, focusing on tailoring the Salesforce interface to improve user
experience and efficiency. Proficiency in UI customization ensures that the CRM system meets the specific needs of its users.
Utilizing Trailhead for this topic can significantly boost your interview preparation, equipping you for any Salesforce interview.
1. Go to Setup.
2. Enter the name of the object in the Quick Find box and select the object.
3. In the object management settings, click on Search Layouts.
4. You can then customize the different search layouts for the object, such as search results, lookup dialogs, and list
views.
Important Salesforce Experience Cloud Interview Questions
38. What are object-specific actions?
Answer:
Object-specific actions in Salesforce are actions that are directly related to a particular object. These actions allow users to create
records, update records, log calls, send emails, or perform other custom actions directly from a record page.
Create a Record: Allows users to create a new record that is automatically linked to the current record.
Log a Call: Lets users log call details related to the current record.
Update a Record: Enables users to update the current record with specific fields.
Send Email: Allows users to send an email from the current record.
Custom Actions: Custom actions can be created using Visualforce, Lightning components, or Flow.
Object-specific actions are typically added to page layouts, allowing users to access them from the record pages.
Create the LWC Component: First, create the LWC component that you want to use in the quick action. For example, let’s create
a simple LWC called myLwcComponent .
// myLwcComponent.js
import { LightningElement, api } from 'lwc';
Create an Aura Component to Wrap the LWC: Next, create an Aura component that wraps the LWC component. This Aura
component will be used in the quick action.
<!-- myLwcQuickAction.cmp -->
<aura:component implements="force:lightningQuickActionWithoutHeader,force:hasRecordId" access="global">
<aura:attribute name="recordId" type="String" />
<c:myLwcComponent recordId="{!v.recordId}" />
</aura:component>
<!-- myLwcQuickActionController.js -->
({
// Controller logic if needed
})
<!-- myLwcQuickActionHelper.js -->
({
// Helper logic if needed
})
<!-- myLwcQuickActionRenderer.js -->
({
// Renderer logic if needed
})
Create a Quick Action: Now, create a quick action in the object where you want to use the LWC. Go to the object manager, select
the object, and then create a new quick action.
Action Type: Lightning Component
Lightning Component: Select the Aura component c:myLwcQuickAction
Add the Quick Action to the Page Layout: Finally, add the quick action to the page layout where you want it to be available.
40. Can you call flows from object-specific actions and global actions?
Answer: Yes, you can call flows from both object-specific actions and global actions in Salesforce. When creating an action, you
can select a flow as the action type. This allows users to launch flows directly from record pages (for object-specific actions) or from
the global actions menu (for global actions).
Read more: Salesforce Advanced Admin Interview Questions and Answers
41. What are global actions, and how are they different from object-specific
actions?
Answer:
Global actions in Salesforce are actions that are not tied to a specific object and can be accessed from various locations in
Salesforce, such as the global actions menu in the Salesforce app, the Chatter feed, or the Home page.
43. What is the difference between 15 digit and 18 digit record ID?
Answer:
In Salesforce, every record has a unique identifier called a record ID. There are two formats for these record IDs:
15-Digit Record ID: This is the case-sensitive version of the record ID. It is used primarily in the Salesforce user
interface and is what you see in the URL when viewing a record.
18-Digit Record ID: This is the case-insensitive version of the record ID, often used for API interactions and
integrations. The 18-digit ID is created by appending a three-character checksum to the 15-digit ID, which helps systems
that do not support case sensitivity to distinguish between different records.
44. How can we convert a 15 digit record ID to 18 digits and vice versa in the
formula field?
Answer:
Converting a 15-digit record ID to an 18-digit record ID in a formula field is not natively supported by Salesforce formula fields due
to their complexity. However, you can achieve this conversion using Apex code or external tools.
For instance, in Apex, you can use the following code to convert a 15-digit ID to an 18-digit ID:
public static String convertTo18DigitId(String id) {
String suffix = '';
String[] chunks = new String[3];
return id + suffix;
}
Converting an 18-digit ID back to a 15-digit ID simply involves truncating the last three characters:
public static String convertTo15DigitId(String id) {
return id.substring(0, 15);
}
If you have more questions or need further details, feel free to ask!
48. What is the use of the action “Export All” in the data loader?
Answer: The “Export All” action in Salesforce’s Data Loader tool is a powerful feature that allows users to export all records from a
specific object, including those in the Recycle Bin. Unlike the standard “Export” action, which only retrieves active records, “Export
All” fetches both active and deleted records. This is particularly useful for data recovery, auditing, and historical data analysis, as it
ensures that no data is left behind, even if it has been marked for deletion. The Data Loader generates CSV files containing the
exported data, which can then be used for various purposes such as backups, migrations, or integrations with other systems. Using
“Export All” is a critical capability for administrators and developers who need comprehensive access to their Salesforce data,
ensuring that all information is accounted for during data management tasks.
Chapter 7: Data Security
The “Data Security” section is essential for any Salesforce Admin, focusing on protecting sensitive information within the Salesforce
CRM. This topic includes user permissions, field-level security, and data sharing settings. Understanding data security is crucial in
any job interview, as it ensures the protection of business data and compliance with regulations. To prepare for these questions,
utilize Trailhead for in-depth learning and practical experience, enhancing your interview preparation and demonstrating your
expertise as a Salesforce admin.
Having multiple approval processes provides flexibility and ensures that different types of records or business situations can be
handled appropriately, improving efficiency and compliance with organizational policies.
1. Create a Process: Go to Setup, search for Process Builder, and create a new process.
2. Define the Criteria: Set the criteria that determine when the record should be submitted for approval.
3. Add an Action: Choose “Submit for Approval” as the action.
4. Specify Approval Process: Select the appropriate approval process to submit the record to.
Using Flow:
1. Create a Flow: Go to Setup, search for Flow, and create a new flow.
2. Add Elements: Use elements such as “Get Records” to find the record and “Submit for Approval” to submit it.
3. Define the Trigger: Set when the flow should be triggered (e.g., record creation or update).
4. Activate the Flow: Ensure the flow is activated and properly linked to the triggering event.
Using Apex Triggers:
1. Write Apex Code: Create an Apex trigger on the object you want to submit for approval.
2. Define the Logic: Write the logic to submit the record for approval based on specific conditions.
3. Deploy the Trigger: Deploy the trigger to your Salesforce organization.
Example Apex Trigger:
By using any of these methods, you can automate the submission of records for approval, bypassing the need for manual clicks on
the “Submit for Approval” button.
83. Assume we have created multiple field updates and email alerts used in
workflow rules. Now I want to do the same field updates and send the exact emails
via the approval process. Can I re-utilize the same field updates and email alerts in
the approval process, or do I need to create a new one here?
Answer: Yes, you can re-utilize the same field updates and email alerts from workflow rules in the approval process. Salesforce
allows you to use the existing field updates and email alerts across different automation processes, including both workflow rules
and approval processes.
When setting up an approval process, you can select previously created email alerts and field updates rather than creating new
ones. This helps maintain consistency and efficiency, as you don’t need to duplicate efforts. You can simply add these actions to
the appropriate approval steps within your approval process.
For instance:
While defining actions for the initial submission, approval, or rejection steps in the approval process, you can
choose from the existing field updates and email alerts created under workflow rules.
This reuse of automation elements ensures streamlined management of workflows and approvals in Salesforce, reducing
redundancy and improving maintainability.
1. Tabular Reports: These are simple lists of data without any grouping. They are best used for tasks like exporting
data or creating lists.
2. Summary Reports: These reports allow you to group data by rows and provide subtotals. They are ideal for
showing data trends over time or by specific criteria.
3. Matrix Reports: These reports allow grouping by both rows and columns, providing a detailed view of data
across two dimensions. They are useful for comparison of related totals.
4. Joined Reports: These reports combine multiple reports into a single view, allowing for more complex data
analysis and comparison from different perspectives.
Each of these report types can be used to create different dashboard components, such as charts, gauges, tables, metrics, and
visualforce pages, offering a versatile and powerful way to visualize and analyze your Salesforce data.
85. Are newly created fields automatically included in your custom report types?
Answer: Yes, if you tick mark the option to include it in the report types while creating the field, you will have to add them manually.
Salesforce OWD Interview Questions and answers
87. What is a report type?
Answer: A report type in Salesforce defines the objects and fields available for use in reports, serving as the foundation for
creating reports. For example, a “Contacts and Accounts” report type allows users to create reports that include fields from both
the Contact and Account objects. This means users can generate reports displaying contact details alongside their related account
information, such as account name, industry, and annual revenue. This report type facilitates comprehensive reporting on customer
relationships by combining data from both objects in a single report.
88. What is the difference between custom report types and standard report types?
Answer: Listed down the differences, make a note of it and answer in any job interview.
Custom Report Types Standard Report Types
Defined by users to include specific fields and objects. Predefined by Salesforce, covering common use cases.
Allows custom relationships and data combinations. Limited to predefined object relationships and fields.
Users can add up to 4 levels of related objects. Typically focuses on primary objects and their children.
Provides flexibility to include custom fields. Includes standard fields and commonly used relationships.
Can tailor reports to specific business requirements. Suitable for general reporting needs.
Requires setup and configuration by the admin. Ready to use out-of-the-box without additional setup.
Enables advanced filtering and customization options. Offers basic filtering and formatting options.
Ideal for complex reporting needs across multiple objects. Best for simple, straightforward reporting tasks.
Standard report types are report types which Salesforce create itself when we create objects and relationships between them, for
example, Contacts and Accounts.
Custom report types allow the admin to specify all fields available to the user while creating a report. Also, it provides functionality
to associate up to 4 objects. It’s like creating a template that tells Salesforce that I need these objects with these fields to be
available to create the report.
1. Single Active Rule: Only one lead assignment rule can be active at a time. This rule will automatically assign
new leads based on the criteria defined.
2. Multiple Rule Entries: Within an active lead assignment rule, you can define multiple rule entries (conditions).
Each rule entry specifies the criteria for assigning leads, such as assigning leads from a specific country to a particular
sales rep.
3. Criteria-Based Assignment: Rules are based on field values of the lead. For example, if the lead’s country is
“USA,” it can be assigned to the US Sales team, while leads from “UK” are assigned to the UK Sales team.
4. Assignment to Users or Queues: Leads can be assigned directly to individual users or to a queue, where
multiple users can pick up the leads for follow-up.
5. Auto-Response Rules: Lead assignment rules can be integrated with auto-response rules to send an
automatic email response to the lead based on the assignment criteria.
6. Execution Order: Rule entries are executed in the order they are listed, and the first matching entry is applied.
Once a lead matches a rule entry, no further entries are evaluated.
Example Use Case:
A company might have different sales teams for different regions. By setting up a Lead Assignment Rule, any lead coming from
Europe could be automatically assigned to the “EU Sales Team,” while leads from North America are assigned to the “US Sales
Team.”
Example of Rule Entry:
Criteria: Lead Country = “United States”
Action: Assign to User = “John Doe”
Lead Assignment Rules are essential in automating the distribution of leads to ensure prompt follow-up and increased conversion
rates. They help sales teams stay organized and focused by automatically routing leads to the appropriate resources.
96. Once the lead is converted, can we move it back to an unconverted state?
Answer: No, once a lead is converted in Salesforce, it cannot be moved back to an unconverted state. The conversion process
creates a new account, contact, and optionally an opportunity, and the original lead record is marked as converted. This action is
irreversible. If you need to revert a converted lead, you would need to manually delete the newly created records and recreate the
lead record, which is not an ideal or efficient process.
98. What all records are created on lead conversion? Is it mandatory to have all
records created on conversion?
Answer: 3 new records created on lead conversion
One each of Account, Contact, and Opportunity
We can tickmark “Don’t create Opportunity” if we don’t want to create an opportunity on lead conversion.
Chapter 12: Service Application
The “Service Cloud” section is pivotal for any Salesforce Admin, focusing on optimizing customer service processes within the
Salesforce CRM. This includes topics like case management, service console, knowledge base, and omnichannel support.
Understanding Service Cloud is crucial in any job interview, as it demonstrates your ability to enhance customer satisfaction and
service efficiency. To prepare for these questions, leverage Trailhead for practical exercises and in-depth learning, ensuring
thorough interview preparation and showcasing your expertise in Salesforce & CRM Basics.
Note – Currently, the Solutions tab and object are not available in lightning and Salesforce Classic support.
103. What is a Case Assignment Rule?
Answer: A Case Assignment Rule in Salesforce is a mechanism used to automatically assign incoming cases to specific users or
queues based on predefined criteria. These rules help streamline the case management process by ensuring that cases are routed
to the appropriate support personnel or teams as soon as they are created. Case assignment rules can be based on various criteria
such as case origin, priority, product, customer type, or any custom field. This automation helps improve efficiency, response times,
and customer satisfaction by directing cases to the right people who are best equipped to handle them.
104. What is Web-to-Case?
Answer: Web-to-Case is a Salesforce feature that allows organizations to capture customer inquiries directly from their website
and create cases in Salesforce. By embedding a simple web form on the company’s website, customers can submit issues or
requests that are automatically converted into cases within Salesforce. This process helps streamline the case creation process,
ensuring that customer inquiries are logged and tracked efficiently, facilitating timely responses and resolution by the support team.
Web-to-Case supports a maximum of 5,000 cases per day, making it suitable for businesses of varying sizes.
105. Can we define an auto-reply in case of email to the case in Salesforce?
Answer: Yes, Salesforce allows you to define auto-reply rules for cases created via Email-to-Case. Auto-reply rules enable you to
send automatic email responses to customers when their case is created or updated. These responses can be customized based
on the case criteria, ensuring that customers receive immediate acknowledgment of their inquiry. Auto-reply emails can include
personalized messages, case details, and expected response times, enhancing customer communication and satisfaction.
106. What is the support process in Salesforce?
Answer: Support Process is only for the “Status” picklist, as you might know. The picklist values available in the status of a case
record type determine a support process. It is only a business-relevant feature as the status field is the most process-specific field
on a case. The status field cannot be customized on a record type; it should be customized in support.
107. Can we have multiple record types using the same Support Process?
Answer: Yes, in Salesforce, you can have multiple record types that use the same support process. Record types allow you to
offer different page layouts and picklist values to different users based on their profile or role. By using the same support process
across multiple record types, you ensure that all cases follow the same set of stages and statuses, while still providing customized
views and fields appropriate for different scenarios or types of cases. This flexibility helps tailor the user experience to specific
requirements while maintaining consistent case management practices.
108. How to give users access to knowledge articles?
Answer: To give users access to Knowledge articles in Salesforce, you need to ensure they have the appropriate permissions.
First, enable Salesforce Knowledge if it is not already enabled in your organization. Then, create and assign the necessary
Knowledge-related user permissions via profiles or permission sets. Key permissions include “View Articles,” “Manage Articles,”
and “Publish Articles.” Additionally, configure the Knowledge settings to define data categories and visibility settings, ensuring that
users can access the relevant articles. You can also include Knowledge components on Lightning record pages, giving users easy
access to articles directly from related records.
Salesforce CPQ Interview Questions
Chapter 13: MVC Architecture
The “MVC Architecture” section is a core topic for any Salesforce Admin, focusing on understanding the Model-View-Controller
design pattern used within the Salesforce CRM. This includes topics like data models (Model), user interfaces (View), and business
logic (Controller). Understanding MVC Architecture is crucial in any job interview, as it demonstrates your ability to structure and
manage Salesforce applications effectively.
1. What is the role of the Model in the MVC architecture in Salesforce, and how is it
represented?
The Model in Salesforce’s MVC architecture represents the underlying data and business logic. It is responsible for interacting with
the database and retrieving, updating, or deleting records. In Salesforce, the Model is typically represented by Standard
Objects (such as Account, Contact, Opportunity) or Custom Objects that store data. The Model also includes Apex Classes that
define business logic, such as validation rules, triggers, and workflows, which manipulate the data.
2. How does the View component in Salesforce MVC architecture help in rendering
user interfaces?
The View is responsible for displaying data to the user and handling user interactions. In Salesforce, the View is implemented
through Visualforce pages, Lightning Components, or Lightning Web Components (LWC). These components are used to
create user interfaces that render data from the Model and present it in a user-friendly way. The View interacts with the Controller
to get the data and also sends user inputs back to the Controller for processing.
3. What is the purpose of the Controller in Salesforce MVC, and how does it interact
with the Model and View?
The Controller acts as the intermediary between the Model and the View. It processes user inputs from the View, performs the
necessary logic (using Apex classes or standard controllers), and updates the Model. After processing, it sends updated data back
to the View for display. In Salesforce, Controllers can be Apex Controllers or Standard Controllers that help manage the
behavior and flow of data between the user interface and the data in the database.
4. Can you explain how Visualforce pages or Lightning components act as the View
in Salesforce’s MVC model?
Visualforce pages and Lightning components represent the View in Salesforce’s MVC architecture. They provide the user
interface layer where data is displayed to the user. Visualforce pages are built using a tag-based markup language, while Lightning
components (Aura components or Lightning Web Components) offer a more dynamic and modern user interface experience. These
components retrieve data from the Controller and render it on the screen. They also capture user actions like button clicks and
send them back to the Controller for processing.
5. How do Apex classes and Controllers manage business logic in the Salesforce
MVC architecture?
Apex classes and Controllers handle the business logic in Salesforce’s MVC architecture. Apex classes can be used to create
custom Controllers or extensions of standard Controllers. These Controllers process user requests, interact with the database
(Model), and return the necessary data to the View. For example, when a user interacts with a form on a Visualforce page, the
Controller processes the input, runs the business logic, retrieves or updates records, and passes the result back to the View for
rendering. This separation of logic into Controllers ensures a clean, modular architecture that improves maintainability.
6. What is MVC architecture?
Think of MVC architecture as the blueprint for building organized and scalable applications. MVC stands for Model-View-
Controller. The Model represents the data and business logic, handling data storage and management. For instance, in
Salesforce, this would be your objects and records. The View is the user interface, what the user interacts with—think of it as your
Visualforce pages or Lightning components that display data to the user. The Controller acts as an intermediary, processing user
input from the View, updating the Model, and refreshing the View. This separation of concerns ensures a clean, maintainable
codebase, making it easier to manage complex applications. My proficiency with MVC architecture ensures efficient development
and smooth user experiences, crucial for high-quality Salesforce implementations.
Chapter 14: Data Import
The “Data Import” section is a critical topic for any Salesforce Admin, focusing on the methods and tools used to import data into
the Salesforce CRM. This includes topics like Data Import Wizard, Data Loader, and best practices for data migration.
Understanding data import is crucial in any job interview, as it demonstrates your ability to manage and integrate data effectively.
Imagine needing real-time data in your Lightning Web Components (LWC)—that’s where the wire function comes in.
The @wire decorator is used to connect a property or method to Salesforce data. It automatically provisions data and updates the
UI when data changes, ensuring reactive and efficient data handling. For example, I use @wire to fetch records or call Apex
methods, providing seamless integration between LWC and Salesforce data. This method ensures components remain up-to-date
without manual refreshes, streamlining the development process and enhancing user experience with real-time data.
117. What are Lifecycle hooks in LWC?
Lifecycle hooks in LWC are methods that allow developers to tap into key points of a component’s lifecycle. For
instance, connectedCallback() runs when the component is inserted into the DOM, perfect for initializing properties or setting up
event listeners. disconnectedCallback() is used for cleanup tasks when the component is removed. renderedCallback() is called
after the component’s template has been rendered, useful for DOM manipulation. These hooks provide control over the
component’s behavior at different stages, ensuring efficient resource management and optimal performance in dynamic
applications.
118. What is the difference between event.stopPropagation() and
event.preventDefault()?
Understanding event.stopPropagation() and event.preventDefault() is crucial for handling events in
JavaScript. event.stopPropagation() prevents the event from bubbling up the DOM hierarchy, stopping parent elements from
reacting to the event. This is useful when you want to isolate an event’s effect to a specific element. event.preventDefault() stops
the browser’s default behavior for an event. For instance, preventing a form submission when validation fails. Both methods provide
fine control over event handling, ensuring precise behavior in complex interfaces.
119. What is a Promise in async transactions?
Promises in JavaScript handle asynchronous operations, ensuring code executes sequentially without blocking the main thread.
A Promise represents a value that may be available now, or in the future, or never. It has three states: pending, fulfilled,
and rejected. I use promises to manage async calls, like fetching data from an API. For instance, I use .then() for success
handlers and .catch() for error handlers. Promises simplify managing asynchronous tasks, avoiding callback hell and making code
more readable and maintainable.
120. What are web components? Is LWC based on web components?
Web components are a suite of standardized technologies that allow developers to create reusable and encapsulated HTML tags.
They include Custom Elements, Shadow DOM, and HTML Templates. Yes, Lightning Web Components (LWC) are built on
these standards. LWC leverages web components to provide a modern framework that’s lightweight, efficient, and fast. By using
web components, LWC ensures compatibility with future web standards and delivers a modular approach to building complex UIs in
Salesforce.
121. What does composed = true do in an event?
Setting composed = true in a custom event allows the event to traverse the shadow DOM boundary. Normally, events are restricted
to their own shadow DOM, but with composed: true , the event can propagate through the shadow DOM and reach the main
document. This is crucial in scenarios where a component needs to communicate with its parent components or the main
application, ensuring flexible and seamless event handling across the entire DOM hierarchy.
Read more: Change Sets in Salesforce
122. What are callback functions in LWC?
Callback functions in LWC are functions passed as arguments to other functions, often used to handle asynchronous operations.
For instance, when making an API call, a callback function processes the response once it’s received. They are essential for tasks
like event handling, timers, and network requests. Using callbacks, I can define what should happen after an operation completes,
ensuring smooth and controlled execution flow in my components. They are foundational for managing asynchronous behavior in
JavaScript.
123. What is Callback hell?
Callback hell refers to the situation where multiple nested callback functions make code hard to read and maintain. This typically
happens in complex asynchronous operations, leading to deeply nested and difficult-to-follow code structures. I combat callback
hell by using Promises and async/await syntax, which flattens the code structure and enhances readability. By adopting these
techniques, I ensure cleaner, more manageable, and maintainable asynchronous code in my Salesforce development projects.
Read all the important lwc interview questions with their answers here.
Salesforce QA interview questions
124. What is the role of a QA tester in a Salesforce implementation project?
Imagine a project where precision is critical—that’s where a QA tester comes in for Salesforce implementations. Their role is to
ensure the system meets the required quality standards before it goes live. This involves creating and executing test plans, writing
test cases, and performing various types of testing like functional, integration, and performance testing. I’ve seen QA testers
meticulously verify that all customizations, workflows, and integrations function as expected. They identify defects, report them, and
work closely with developers to resolve issues, ensuring a smooth, bug-free deployment. Their work guarantees that the Salesforce
solution is robust, reliable, and meets user requirements.
125. How do you manage test environments in Salesforce?
Managing test environments in Salesforce involves setting up sandboxes that mirror the production environment. I typically use
different types of sandboxes for various testing needs: Developer sandboxes for unit testing and development, and Full sandboxes
for performance testing and user acceptance testing. Keeping these environments synchronized with production data and
configurations is crucial. I schedule regular refreshes and use deployment tools like Change Sets or Salesforce DX to ensure
configurations are consistent. This structured approach allows for thorough testing without risking the integrity of the production
environment, ensuring that all changes are validated in a safe, controlled setting.
126. How do you perform regression testing in Salesforce?
Regression testing in Salesforce ensures that new changes don’t negatively impact existing functionality. I start by identifying
critical functionalities and creating a comprehensive suite of test cases that cover these areas. Automated testing tools
like Selenium or Salesforce’s own Apex test classes help streamline this process, running tests efficiently across different
scenarios. Each time a new feature is added or a bug is fixed, I re-run the regression tests to verify that the system behaves as
expected. This approach catches unintended side effects early, maintaining the stability and reliability of the Salesforce instance
while allowing for continuous improvements and updates.
Read all the QA interview questions here
Bonus Interview Questions
127. What is a custom object in Salesforce?
A custom object in Salesforce is a database table that allows users to store data specific to their organization’s needs, which isn’t
covered by standard objects like Accounts, Contacts, or Opportunities. Custom objects are created by users to tailor the Salesforce
environment to their business processes. They come with standard features such as fields, relationships, page layouts, and
security settings, enabling organizations to capture and manage unique data. For example, a company might create a custom
object called “Project” to track detailed information about ongoing projects, including project status, deadlines, and assigned
resources.
A custom object permits users to create and manage custom data specific to their organization’s requirements. It allows users to:
Define Custom Fields: Users can create custom fields to capture specific information relevant to their business
processes.
Set Up Relationships: Users can establish relationships with other objects, both standard and custom, to link
related data.
Create Page Layouts: Users can customize page layouts to control the display and organization of fields and
related lists on record pages.
Implement Validation Rules: Users can define validation rules to ensure data integrity by enforcing business
rules during data entry.
Build Custom Reports and Dashboards: Users can generate reports and dashboards to analyze the data
stored in custom objects.
Automate Processes: Users can create workflow rules, process builder flows, and triggers to automate business
processes involving custom objects.
129. What is Self-Relationship?
A self-relationship in Salesforce is a lookup relationship where an object relates to itself. This means that a record within an object
can be linked to another record of the same object. For example, in a “Employee” custom object, a self-relationship can be used to
create a “Manager” field that links to another Employee record, representing the manager of the employee. Self-relationships are
useful for hierarchical data structures or when you need to associate records within the same object.
The Object Relationship Overview in Salesforce provides a summary of how different objects relate to each other. It includes details
about the relationships between objects, such as lookup, master-detail, and many-to-many relationships. This overview helps users
understand the data model and how different pieces of information are connected within the system. It typically includes:
Parent-Child Relationships: Indicating which objects are related and the nature of their relationship.
Field Mappings: Showing how fields in related objects are linked.
Relationship Types: Identifying whether the relationship is a lookup, master-detail, or a junction object for many-
to-many relationships.
131. How many types of relationships are offered by Salesforce.com?
Salesforce.com offers three main types of relationships to define how objects relate to each other:
1. Lookup Relationship: A loosely coupled relationship that allows one object to be linked to another. Records in a
lookup relationship can exist independently. For example, linking Contacts to Accounts.
2. Master-Detail Relationship: A tightly coupled relationship where the child record (detail) is dependent on the
parent record (master). If the parent record is deleted, the child record is also deleted. For example, linking Opportunity
Line Items to Opportunities.
3. Many-to-Many Relationship: Implemented using a junction object, which is a custom object with two master-
detail relationships. This allows each record of one object to be linked to multiple records of another object. For
example, linking a custom object “Course” to “Student” via a junction object “Enrollment” to track which students are
enrolled in which courses.
132. What is a custom object in Salesforce?
A custom object in Salesforce is a database table created by users to store data specific to their organization’s needs. Custom
objects enable users to extend Salesforce’s capabilities beyond standard objects like Accounts, Contacts, and Opportunities. They
come with standard features, such as custom fields, page layouts, relationships, validation rules, and custom reports, allowing
businesses to manage their unique data requirements effectively. For example, a company might create a custom object called
“Project” to track project details, deadlines, and resources.
133. What does a custom object permit the user to do?
A custom object permits users to create and manage data that is specific to their business processes. Users can:
A self-relationship in Salesforce is a lookup relationship where an object links to itself. This allows records within the same object to
be related to each other. For instance, in an “Employee” custom object, a self-relationship can be used to create a “Manager” field
that links to another Employee record, indicating the employee’s manager. Self-relationships are useful for hierarchical data
structures or scenarios where records within the same object need to be associated, such as linking team members or creating
reporting structures.
The Object Relationship Overview in Salesforce provides a summary of how different objects are interconnected within the system.
It outlines the relationships between objects, including lookup, master-detail, and many-to-many relationships. This overview helps
users and administrators understand the data model and how various pieces of information relate to one another. It typically
includes:
Parent-Child Relationships: Descriptions of how objects are related hierarchically.
Field Mappings: Details on how fields in related objects are linked.
Relationship Types: Identification of the relationship types (lookup, master-detail, or junction objects for many-
to-many relationships).
136. How many types of relationships are offered by Salesforce.com?
Salesforce.com offers three main types of relationships to define how objects relate to each other:
1. Lookup Relationship: A loosely coupled relationship that allows one object to be linked to another. Records in a
lookup relationship can exist independently. For example, linking Contacts to Accounts.
2. Master-Detail Relationship: A tightly coupled relationship where the child record (detail) is dependent on the
parent record (master). If the parent record is deleted, the child record is also deleted. For example, linking Opportunity
Line Items to Opportunities.
3. Many-to-Many Relationship: Implemented using a junction object, which is a custom object with two master-
detail relationships. This allows each record of one object to be linked to multiple records of another object. For
example, linking a custom object “Course” to “Student” via a junction object “Enrollment” to track which students are
enrolled in which courses.
These relationship types help model complex data structures and ensure data integrity within Salesforce.
A trigger in Salesforce is a piece of Apex code that executes automatically before or after specific database events, such as
insertions, updates, deletions, and undeletions of records. Triggers allow developers to perform custom actions, such as data
validation, complex calculations, or updating related records when certain conditions are met. For example, a trigger can
automatically update the total amount of an Opportunity whenever a related Opportunity Line Item is inserted or updated.
Read more about the detailed guide on Triggers in Salesforce.
138. What is the difference between Trigger and Workflow?
Triggers: Triggers are written in Apex and can handle complex logic, execute before or after specific database events, and can
operate on multiple objects. They offer more flexibility and control but require coding knowledge.
Workflow Rules: Workflow Rules are point-and-click automation tools that can automate standard internal procedures and
processes. They can only handle simple logic and are limited to field updates, email alerts, tasks, and outbound messages.
Workflow Rules are easier to create and manage but offer less flexibility compared to Triggers.
Here’s a comparison table with three columns comparing Triggers, Workflow Rules, and Process Builder in Salesforce:
Triggers Workflow Rules Process Builder
Requires development skills to write and maintain Configurable through Salesforce Setup by admins or
Apex code, allowing for tailored, fine-grained control users with appropriate permissions, offering predefined
Customization over data manipulation and validation logic. actions based on simple record criteria.
Executes based on DML events (insert, update, delete) Executes based on record criteria (like when a record is
Event on records and can react to changes in related records created or updated) but does not react to changes in
Triggering as well. related records.
Allows for complex business logic, validation rules, Supports straightforward actions and workflows based
and interactions between multiple objects or records in on record field updates or criteria, lacking the flexibility
Complexity a single transaction. for complex logic and interactions.
Subject to Apex governor limits (such as CPU time Operates within declarative limits set by Salesforce,
Governor and SOQL queries per transaction), impacting ensuring actions remain within platform-specific
Limits performance if not optimized. boundaries without impacting performance.
Ideal for scenarios requiring extensive data Suitable for automating repetitive tasks, enforcing
manipulation, intricate business logic, and real-time business processes based on simple conditions, and
Use Cases updates across multiple objects. sending notifications based on record changes.
This table now provides a comprehensive comparison between Triggers, Workflow Rules, and Process Builder in Salesforce,
covering their definitions, execution contexts, customization options, event triggering capabilities, complexity levels, governance
considerations, and typical use cases.
1. Lookup Relationship: A loosely coupled relationship where one object can link to another without dependency.
For example, a Contact can look up to an Account.
2. Master-Detail Relationship: A tightly coupled relationship where the child (detail) record is dependent on the
parent (master) record. If the master record is deleted, the detail records are also deleted. For example, Opportunity
Line Items are dependent on Opportunities.
3. Many-to-Many Relationship: Implemented using a junction object, which is a custom object with two master-
detail relationships. This allows linking each record of one object to multiple records of another object. For example, a
junction object “Enrollment” links “Course” and “Student” objects to track enrollments.
140. What is the junction object and what purpose does it serve?
A junction object in Salesforce is a custom object used to create a many-to-many relationship between two other objects. It
contains two master-detail relationships, one with each of the objects it connects. The purpose of a junction object is to enable
complex data modeling by allowing multiple associations between records of different objects. For example, in an educational
context, a junction object “Enrollment” can link “Course” and “Student” objects, allowing a student to enroll in multiple courses and a
course to have multiple students. Read more about junction object.
141. What is an Audit Trail?
An Audit Trail in Salesforce is a vital feature that I regularly utilize to track changes made to our organization’s setup and data. It
provides a detailed log of user actions, including modifications to records, configuration changes, and security settings. As an
experienced consultant, I rely on the Audit Trail to maintain transparency and accountability within our Salesforce environment.
Using the Audit Trail, I can view who made specific changes, what changes were made, and when these changes occurred. This
visibility is crucial for compliance with regulatory requirements, internal governance policies, and auditing purposes. It helps me
identify unauthorized modifications, troubleshoot issues, and ensure data integrity by monitoring the history of system changes over
time. Furthermore, the Audit Trail enables me to proactively manage our Salesforce instance by reviewing historical data
modifications and trends. By leveraging this feature effectively, I can uphold data governance standards, maintain trust with
stakeholders, and support informed decision-making across our organization.
SOQL (Salesforce Object Query Language): SOQL is used to query records from a single object or multiple related objects. It is
similar to SQL and allows precise querying based on specific field criteria. For example, querying all accounts with a specific
industry.
SOSL (Salesforce Object Search Language): SOSL is used to perform text searches across multiple objects. It returns records
that match the search term from specified objects. SOSL is useful for broad searches across multiple objects and fields. For
example, searching for a term across all accounts, contacts, and opportunities.
Read more about the differences between SOQL and SOSL.
143. What is a Wrapper Class?
A Wrapper Class in Salesforce is a handy technique that I frequently use to bundle together different data types into a single object.
It allows me to combine primitive data types (like strings and integers) with complex data structures (such as lists or custom
objects) into a cohesive unit. This approach is particularly useful when I need to pass multiple pieces of related data between
components or when formatting data for display in Visualforce pages.
I often employ Wrapper Classes to streamline development and enhance code readability. By encapsulating related data into a
single wrapper object, I can simplify interactions between controllers and Visualforce pages, making it easier to manage and
manipulate data. This not only improves the efficiency of our Salesforce applications but also enhances user experience by
presenting data in a clear and organized manner.
Wrapper Classes are versatile tools in Salesforce development, allowing me to handle complex data structures effectively while
maintaining code simplicity and flexibility across various functionalities and requirements.
A Salesforce dashboard is a visual representation of key metrics and data insights, compiled from multiple reports within
Salesforce. Dashboards provide a snapshot view of an organization’s performance, allowing users to track KPIs, monitor trends,
and make data-driven decisions. Each dashboard consists of components like charts, tables, gauges, and metrics, which are based
on underlying reports. Dashboards can be customized to display data relevant to different roles or departments, ensuring that users
have access to the most pertinent information. For example, a sales dashboard might include components for total sales, sales
pipeline, top opportunities, and lead conversion rates, giving sales managers a comprehensive view of their team’s performance.
As a consultant, I leverage Salesforce objects to model our business processes effectively. This involves defining custom objects to
capture specialized information that standard Salesforce objects may not accommodate. Each object is customizable, allowing me
to tailor fields, page layouts, and business logic to meet our exact requirements.
Objects serve as the backbone of our Salesforce applications, facilitating efficient data management, reporting, and automation. By
understanding how to create, modify, and relate objects, I ensure our Salesforce implementation aligns closely with our business
goals, enabling us to maximize the platform’s capabilities to drive productivity and growth.
Governor limits are runtime limits enforced by Salesforce to ensure efficient use of resources and maintain the performance of the
multi-tenant environment. These limits include constraints on the number of SOQL queries, DML operations, CPU time, heap size,
and other resource-intensive activities per transaction. Governor limits prevent any single user or organization from monopolizing
shared resources, ensuring fair usage across all tenants. For example, a single Apex transaction cannot execute more than 100
SOQL queries.
In Salesforce, a Sandbox is my go-to playground for development, testing, and training without risking the live production
environment. It’s a replica of our Salesforce organization where I can experiment with new features, customizations, and
integrations before deploying them to production. Sandboxes come in various types like Developer, Partial Copy, Full, and Scratch
Sandboxes, each tailored to different needs based on data volume and complexity. I rely on Sandboxes to validate changes,
troubleshoot issues, and train users effectively. They’re essential for ensuring smooth deployments and maintaining data integrity.
These environments foster innovation by providing a safe space for iterative development and testing, helping me deliver high-
quality Salesforce solutions aligned with our business goals.
An App in Salesforce is a collection of objects, tabs, and other components that work together to support a specific business
function. Apps can be standard, like Sales and Service, or custom-built to meet specific business requirements. An app provides a
customized user interface for users to interact with the necessary objects and data for their tasks. For example, a custom Project
Management App might include custom objects for Projects, Tasks, and Milestones, with corresponding tabs and components.
Visualforce is a framework within Salesforce that I use to craft custom user interfaces tailored to our organization’s needs. It allows
me to design web pages using markup tags similar to HTML, enhanced with Apex, Salesforce’s programming language. With
Visualforce, I can create forms, tables, and other components that interact seamlessly with Salesforce data and functionalities. By
writing controller classes in Apex, I can define how data is processed and displayed, ensuring our applications are intuitive and
efficient. Visualforce pages are instrumental in aligning our user interfaces with our branding and workflow requirements,
empowering us to build bespoke solutions that extend Salesforce’s capabilities to precisely match our business objectives.
151. What are the differences between Sales Cloud and Service Cloud?
Focuses on driving sales and managing leads Focuses on customer service and support
Helps track sales performance and forecasting Helps manage and resolve customer service cases
Includes features like opportunity management Includes features like case management and SLAs
Tailored for sales teams to close deals efficiently Tailored for support teams to provide better service
Sales Cloud Vs Service Cloud
Sales Cloud: Designed to support sales processes, Sales Cloud provides tools for managing leads, opportunities, accounts,
contacts, and sales performance. It includes features like lead management, sales forecasting, workflow automation, and
integration with email and productivity tools.
Service Cloud: Focuses on customer service and support, offering tools for case management, knowledge base, service
contracts, and field service. It includes features like case routing, service console, omnichannel support, and integration with social
media for customer service.
Sales Cloud primarily helps sales teams close deals faster, while Service Cloud aims to enhance customer satisfaction and support
efficiency.
152. Can you provide an example of a custom app you could build on the
Salesforce platform?
A custom app on the Salesforce platform could be a “Project Management App.” This app might include custom objects like
Projects, Tasks, and Milestones, each with fields capturing relevant data such as project deadlines, task owners, and milestone
completion dates. The app could have Visualforce or Lightning components for creating and viewing projects, assigning tasks, and
tracking progress. Workflow rules or process automation tools could be used to send notifications and update statuses
automatically. Reports and dashboards would provide insights into project performance, helping teams stay on track and manage
resources effectively.
A Queue in Salesforce is a powerful tool that I often use to manage and distribute work efficiently across teams. It acts as a holding
place for records, such as leads, cases, or custom objects, that are awaiting processing by users or automated processes. As an
experienced consultant, I leverage Queues to ensure tasks are appropriately assigned based on criteria like region, product type, or
priority. This helps streamline workflows and ensures that no work item falls through the cracks. Queues are highly flexible; they
can be configured to automatically assign records to team members or allow users to manually take ownership of items as they
become available. This functionality not only enhances productivity but also promotes collaboration by providing transparency into
workload distribution and ensuring timely resolution of customer issues and requests.
Data skew in Salesforce refers to performance and data integrity issues that arise when a single record, such as an Account, has a
very high number of related records, like Contacts or Opportunities. This can cause locking problems and degraded performance
during data operations. There are three main types of data skew: ownership skew, lookup skew, and parent-child skew. For
example, ownership skew occurs when one user owns a disproportionately large number of records, which can lead to locking
issues during record updates.
SOQL (Salesforce Object Query Language) SOSL (Salesforce Object Search Language)
Used to query records from a single object or multiple objects that are related Used to search text, email, and phone fields for multiple
to each other objects
Syntax is similar to SQL with SELECT statements Syntax includes FIND and RETURNING clauses
Retrieves data based on specific criteria Retrieves data based on keywords or text match
SOQL (Salesforce Object Query Language): Used to query records from a single object or multiple related objects. It is similar to
SQL and allows precise querying based on specific field criteria. For example, querying all accounts with a specific industry.
SOSL (Salesforce Object Search Language): Used to perform text searches across multiple objects. It returns records that
match the search term from specified objects. SOSL is useful for broad searches across multiple objects and fields. For example,
searching for a term across all accounts, contacts, and opportunities.
156. What is an Apex transaction?
An Apex transaction in Salesforce is a fundamental concept that I deal with regularly in my role as a consultant. It refers to a
sequence of operations that are executed as a single unit of work. Every time Apex code is executed, whether triggered by user
interaction, API call, or system process, it initiates a transaction. These transactions ensure data integrity and consistency by either
committing all changes to the database at once or rolling back changes if an error occurs.
As an experienced consultant, I carefully manage Apex transactions to optimize performance and maintain reliable application
behavior. I use techniques like bulk processing to handle large volumes of data efficiently within transaction limits. Understanding
transaction boundaries and governor limits is crucial, as exceeding these limits can lead to runtime exceptions or performance
degradation. By mastering Apex transactions, I ensure that our Salesforce applications operate smoothly, providing users with a
seamless experience while safeguarding data integrity throughout every operation.