Salesforce Fundamentals & Interview Guide
Salesforce Fundamentals & Interview Guide
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 the 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.
In Salesforce, you can customize apps to match your requirements, or you can build
new applications by combining custom and standard tabs.
By following this procedure, you can build an application. However, you want.
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.
6. What are Salesforce Standard Fields?
Owner,
Name,
Last modified by,
Created by.
There are four types of reports that are available in Salesforce, which are as follows.
The tabular report is those that give us the total in a tabular format.
Matrix report 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.
15. What is a profile? Can two users have the same profile?
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.
Profile: Unlike the roles profile is mandatory for all, and it stays at the object level. It
is treated as a building pillar of an organization.
Master-detail relationship
Lookup relationship
External Lookup
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.
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.
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.
A protocol that defines a uniform way of passing XML-encoded data. SOAP Stands
for Simple Object Access Protocol.
The computer system executes one or more tasks according to the set of rules and
scheduled tasks.
The trigger is defined as an Apex code that executes before or after the following
functions such as insert, update, delete, etc. trigger enables to perform custom
actions before and after modifications to the records of Salesforce.
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).
If you delete the parent record in the MDR, the child record also gets deleted in
MDR.
No, we cannot change the license when we are creating the profile.
It creates a link between the custom object and the standard object recorded in a
related list. This is helpful to find the product's defects.
We have some fields which are indexed by default in Salesforce, which are :
Name
ID
Owner fields
Master-detail relationship fields
Lookup fields
Last modified dates
Audit dates
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.
There are many custom fields available they are Picklist, Currency, Date, Text,
Picklist (multi-select), Email, Percent, Number, Phone, Text area, Lookup
relationship, Geolocation, Checkbox, Master-Detail relationship, etc..
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:
DataTable:
There are many things that can contribute to the data loss in Salesforce. Which
includes :
The sharing rules are used only for allowing greater access to records not for
restricting.
Role Hierarchy :
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:
OWD can be Private, Public Read Only, Public Read and Write.
Manual Sharing :
We can see this button detail page of the record and this is visible only when the
OWD setting is private.
Using the insert method we can insert the records but if any error occurs in any
record system will throw an error insertion fail and none of the records are inserted.
If we want to execute partially the success of bulk insert operation we will use
database .insert.
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.
We can customize different things on page layouts like Fields, Buttons, Custom
Links, and Related Lists. We can also create sections.
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?
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.
The batch apex class deploys the database batchable interface with the three
methods as follows:
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:
Email services are an automated process that uses Apex classes to process the
contents, Headers, Attachments of Inbound Email.
Note:
For Example, the following table represents a map of countries and currencies
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 dividing 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
The trigger is an Apex Code that executes before or after. The following types of
DML Operations:
Insert
Update
Delete
Merge
Upsert
Undelete
1. Before Triggers
2. After Triggers
Syntax:
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.
A Sandbox helps you when you want to test the newly developed application on
[Link] or VisualForce page. It is not possible to check something in the
production environment if do, so it creates a problem for the regular functioning.
So, to get out of this problem developers use Sandbox to test the application.
Developer
Developer pro
Partial copy
Full
Ans: Static resources allow you to add the content that you want to reference it on
the VisualForce page, which includes things like images, Javascript, archives, CSS
files, etc. The maximum size of a static resource of an organization is 250 MB.
Collections
User-defined types
subjects
Primitive types
Built-in Apex types
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.
We must avoid using index values like [Link][0] as we never know how many
records we get in [Link] at runtime.
Insert ListForBulkDML;
1. Static SOQL
2. Dynamic SOQL
Static SOQL:
Example:
Dynamic SOQL:
It is used to refer to the creation of a SOQL string at run time with Apex code.
Syntax -
Example:-Queries
With API version 18.0 and later/you can use group by with aggregate functions,
such as sum() or max() to summarize the data and enable you to rollup query
results rather than having to process the individual records in your code.
Syntax: [ GROUP BY field GROUP BY LIST]
SOSL statement evaluates the list of sObjects, where each list contains the search
results for a particular sobject type, The result lists are always returned in the same
order as they were specified in the query.
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
The remote method invocation you add to the VisualForce page, written in
javascript.
The remote method definition in your Apex controller class.
This method definition is written in apex, but there are few differences from
normal action methods.
The response handles callback function you add to or include in your VF
page, written in javascript.
Syntax -
98. When one wants to pass the collection to the query instead of
passing one value which keyword helps us?
IN - keyword.
inputField - copy the field from any object and display on a VF page | like copy paste
work.
Add javascript file in Static Resource setup -> develop -> Static Resources -> click on
‘New’ -> Name: filename and add file from local desktop and save.
SOQL- (Salesforce Object Query Language) SOSL (Salesforce Object Search Language)
Using SOQL we can Search only on one object one time. Using SOSL we can search on many objects at one time.
We can query only on fields whose data type is text, phone, and
We can query on all fields of any datatype
Email.
We can use SOQL in the Triggers and the classes. We cannot use Triggers but can in classes.
We can perform a DML operation on SQL query results. We cannot perform DML operations on search results.
104. What is Future Annotation(@Future)?
Use the future annotation to specify that these methods are executed
asynchronously.
Syntax:
A web directory where hundreds of app exchange apps are available to Salesforce
customers to review, demo, comment upon, and /or install. Developers can submit
their apps for listing on the appexchange directory if they want to share them with
the community.
106. Which tag is used with both radio buttons and picklists to
create the selectable values?
We use <Apex:selectoption>
Workflow:
109. What are some apex classes that are commonly used within?
The transient keyword prevents the data from being saved into view state. This
should be used for very temporary variables.
The maximum number of field dependencies we can use is a VisualForce page is 10.
Click on your Name tab, then click on Personal and you will find Reset my security
token.
S-Controls are the predominant [Link] widgets that are completely based
on JavaScript. These are hosted by salesforce but executed at the client-side. S-
Controls are superseded by VisualForce now.
115. What is wrapper class in Salesforce?
A wrapper or container is a data structure, a class type, or an abstract data type that
contains multiple collections of objects. It helps in displaying various objects on a
VisualForce page in a single table.
Public websites and applications that are directly integrated with your Salesforce
organization without requiring users to log in with a username and password.
A Tab is a user interface to display custom object data or other embedded web
content to a user. We have three types of tabs in Salesforce which are:
Custom Tabs.
Visualforce Tabs.
Web Tabs.
118. What are the types of email templates that can be created in
Salesforce?
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.
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.
123. How to invoke batch apex job (or) how to execute the batch
apex job programmatically?
Syntax:
Note: The class name that we are passing to the [Link] batch( ) method
should be the object of the class which has implemented the [Link]
interface.
124. Will Visualforce still support the merge fields usage like S-
control?
Yes. Just like S-Controls. Visualforce pages support embedded merge fields.
127. The client wants to see data from mobile sell DB and Home
Appliance sell DB together to take the decision of the next
financial year's planning. Also, the client wants to group the sell,
discount-related columns grouped together?
They can see all the required data by using the Joined Report.
128. When two objects are connected with each other using r/s,
then on secondary record the relationship will be shown using the
field. On the primary record, the relationship will be shown using a
related list.
Lookup R/S:
1. It is used to connect 2 or more objects with each other as per the business
requirement.
2. It works on standard objects and custom objects.
3. It is so simple to type.
4. It helps to loosely connect 2 objects.
5. It is used whenever we don’t have much strong dependency between 2
objects.
129. There is only 2 MDR allowed per object how many custom
levels it can have?
131. Assume that you require PC’s in bulk and have given an order
to ‘XYZ’ company & they found a bulk supplier and asked to
process, what would be the relationship between the company
and the supplier?
Scenario: Creation of Permission set for the users, other than the user who should
not have the Bonus field access.
Description:
Condition::
OWD: Private.
(Hint: Does he have min access to work on the object & OWD= PRO).
(Hint: Does he have min access to work on the object & OWD= PRW).
137. In the above scenario can Stephen see the record of Celia or
not?
No.
No.
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 detail 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, prioritise, 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.
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.
Workflow Task
When we have to assign the tasks to a salesforce user, you haunt a workflow task.
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?
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:
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
organisation settings. Following are the two kinds of sharing rules:
To assure that no one gains resources from others, [Link] establishes various
restrictions(governor limits) that limit code execution. Salesforce must do this due
to its multi-tenant architecture, where all the customers and organisations share
one resource. If the governor limits are not satisfied, an error will rise, and the
program execution will terminate. Following are the types of Governor limits:
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.
To assure that our code satisfies particular standards, Apex test coverage displays
to you how many lines of code in our classes or triggers have been tested by the
tested methods. Test coverage percentage is the result of the number of the
covered lines divided by the sum of uncovered lines and covered lines. To deploy to
production, we need a minimum of 75% test coverage.
3) Define OAuth?
Connected App integrates the salesforce through APIs, and Connected Apps utilize
OAuth, SAML for authenticating, providing sign-on, and providing tokens for using
the Salesforce APIs.
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.
We can define specific fields as an External ID on the object. We can use these
External ID fields for balancing the data from explicit systems with a distinct
reference ID.
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.
First, we have to define the page section that is going to be refreshed, and then we
have to define the event that leads to refreshing. The method changes if the area
being refreshed is similar to the one managing the event. It also relies on if we are
processing on the server or if we have to change the user interface.
By using the action provider, we can invoke the javascript controller action through
a component markup
Application events
By using any component, we can fire the application events, and we can manage
them. Application events do not need any relationship among the components;
however, these components should be a part of an application.
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
<apex:pageMessages></apex:pageMessages>
12) What are the differences between Custom Objects and Custom
Settings?
We can create a tab for custom objects. We cannot create a tab for custom settings
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.
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.
We use isBlack() for the text fields. Since text fields cannot be NULL, even though
nothing is given as a value, ISNULL() function fetches only empty values. If we use
ISNULL() with a text field, then it returns false.
Salesforce records data on the details like customer details, sales numbers,
customer served, repeat customers and use of these records for creating detailed
charts, dashboards, and reports. In this way, it tracks the sales of our organisation.
18) What is the limit of the [Link] records that we can add to
Salesforce?
In the user section of [Link], 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.
The batch apex class deploys the database batchable interface with the three
methods as follows:
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:
Yes, we use a getter method for returning the values for a controller. Each value
computed by the controller and shown on the page should have a getter method.
On the other way, we use the setter method to pass the user-defined values from
the page markup to the controller. In the controller, we execute the setter method
automatically.
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.
The reRender attribute defines an elements list that we can update dynamically
through the AJAX library of the Salesforce. We do not need the entire page to
refresh. Only a part of the page detected by the components is named in the
“.rerender” attribute.
By using the <chatter: feed> component, we can display the chatter feed.
Example:
<apex:page>
<chatter: feed entityId=”{!$[Link]}”/>
</apex:page>
Blob variable is the variable that is intended to gather binary data. tostring()
converts the blob back into the string.
The apex: output link body comprises of image or text that we can display in the
link.
It's not difficult to get started with a Salesforce career. Although getting an entry-
level salesforce job takes time, it is possible.
There are lots of different groups or communities on the internet. These are some
simple ways for learning Salesforce's new features. Joining such communities can
help you enhance your skills, which are necessary for obtaining a good job.
Getting trained and certified in Salesforce is another great way for a beginner to
gain relevant skills with the platform and land a job.
Salesforce is expected to grow in popularity and expand into new SMB markets,
based on these positive predictions. Therefore Salesforce appears to be a viable
career option.
The demand for Salesforce skills is rising. The highest-paying career on the pyramid,
for example, is Technical Architect, with an average annual income of $138k in the
United States. In India, the average income for a Salesforce Consultant is Rs
10,40,587 per year, but it may go up to Rs24 lakh.
On the other hand, salaries are determined by the employer, location, level of
expertise, and type of certification. Naturally, if you have more credentials under
your belt, your bundle will be more expensive.
Obtain one or more Salesforce certifications if you want to land a new job with an
arsenal of in-demand skill sets or move laterally to a well-paying Salesforce job with
greater career prospects.
There are certain skills that any good Salesforce developer should have. These
include:
Determine the users' requirements, and then design, test, and develop
software to suit those needs.
Create successful project planning by designing Salesforce solutions. Add
value to the project definition, development, and deployment stages.
Suggest improvements to existing client apps, programmes, and systems in
the form of new software.
For internal users, create and deploy Internet- and intranet-based
programmes.
Address any potential data quality issues and develop strategies to overcome
any system deficiencies.
For future reference, document every aspect of the company's entire
inventory of applications and systems, particularly in relation to updates and
maintenance.
Collaborate with other tech experts to develop the best software.
9. What does a Salesforce Administrator do?
12. What are the job profiles that a Salesforce Professional can
look for?
Salesforce Admin
Salesforce Developer
Salesforce Marketer
Salesforce Business Analyst
Salesforce Functional Consultant
Salesforce Architect
Implementation Experts
CPQ Specialists
Here are a few suggestions to keep in mind while creating your Salesforce
Developer CV. Since the Salesforce Ecosystem is so vast, you'll probably be familiar
with a number of Salesforce tools, technologies, and services. You must choose to
highlight experiences that the recruiter finds appealing.
Communication
Customer Service
Problem-solving
Project Management
Although there are many opportunities for Salesforce professionals in the market,
this does not mean that you should ignore the necessity of being well prepared for
every interview that you attend.
You may only get one chance to impress a potential employer. Follow our tips to
give yourself the best and succeed in the interview.
Research the Company: We are sure that everyone views a company's website
before attending an interview, but it is no longer sufficient.
We recommend that you look at the company's social media accounts (Instagram,
Twitter, Facebook, etc.) to get a sense of the company's culture. You should also
look at LinkedIn company sites, hashtags, Google news, and anywhere else where
information about a firm is stored online.
Understand what the recruiting manager is looking for: It's important to know
what the hiring manager is looking for, not simply the job title.
Use real-life examples: It may sound simple, but it's surprising how many times
after an interview, we speak with a Salesforce professional and they recollect a
previous accomplishment that they had forgotten about due to interview anxiety or
other causes.
To set yourself apart, make sure you prepare particular facts and speak about your
previous-role accomplishments.
Research the hiring manager: Perhaps not as entirely as you stalked the company,
but be well-prepared for the interview by knowing:
The role of the recruiting manager, how long they've been with the company,
and who's on their team are all factors to consider.
Where they've previously worked and with whom they've collaborated
They may post work-related content in professional groups that they are
members of.
Any interests you have in common could be a good fit.
Prepare some common interview questions: While you can't predict what the
company will ask, you may prepare by familiarising yourself with popular interview
questions from StackOverflow and other communities.
Certifications enhance a Salesforce professional's career by validating skills and expertise, increasing employability, and often leading to higher salaries. Over 40 certifications are available, with roles ranging from administrators to developers, each catering to specific career paths and expertise levels .
Apex is used in Salesforce to implement complex business logic that cannot be accomplished by workflows alone. Its uses include creating email services, web services, performing complex validation across multiple objects, building complex business processes, custom transaction logic, and attaching custom logic to database operations through triggers .
A Salesforce Developer designs, tests, and implements software to meet user requirements. Responsibilities include designing solutions, contributing to project stages, improving client apps, developing internet-based programs, addressing data quality, documenting systems, and collaborating with technical teams to develop software solutions .
Before triggers are used to update or validate record values before saving them to the database. After triggers are executed after records are saved and used to access field values for changes in other records. The primary difference lies in their timing relative to database operations—Before executions pre-save, After executions post-save .
A career in Salesforce is promising due to the expected creation of approximately 3.3 million new jobs by 2022. Trends indicate increased Salesforce use by small companies and a focus on fields like IoT and app simplification, suggesting robust job opportunities and career growth in the Salesforce domain .
Essential skills for a Salesforce Administrator include automation, user management, data management, security protocols, report creation, change management, and troubleshooting. These skills enable admins to optimize business processes, maintain data integrity, and ensure security .
The Batch Apex class in Salesforce processes large data volumes by breaking them into smaller manageable chunks. It uses the methods Start, Execute, and Finish to perform batch processing. The Start method gathers the records, the Execute method processes each batch of records, and the Finish method executes after all records are processed. This method enables execution over data sets larger than 10,000 records by dividing them into subtasks .
A Salesforce Scheduler automates processes by invoking Apex classes at specific times, using the schedulable interface. This interface allows classes to be scheduled through methods like execute(schedulablecontext sc), enabling continuous automated operations like account record updates without manual intervention .
An Apex transaction is a set of operations that execute together, affecting DML operations. If any part fails, the entire transaction is rolled back, maintaining atomicity and ensuring data integrity. This means DML operations must all succeed or roll back completely if an error occurs .
Apex classes in Salesforce can be invoked through various methods: from another class, using the developer console, via JavaScript links, from homepage components, through triggers, and from Visualforce pages .









