Senior Salesforce Developer
70+ Senior Salesforce Developer Interview Questions and Answers
Q1. What are best practices to write trigger? What are execution order in salesforce? What are deployment techniques used in salesforce? What is min code coverage required while deployment? What is azure dev ops?
Best practices for writing triggers, execution order, deployment techniques, code coverage, and Azure DevOps.
Use trigger framework to avoid code duplication
Bulkify triggers to handle large data sets
Follow trigger order of execution
Use metadata API or change sets for deployment
Minimum code coverage is 75%
Azure DevOps is a cloud-based tool for managing software development projects
Q2. Can an email message from a trigger be sent after logic gets into Adderror method
Yes, an email message can be sent from a trigger even after logic gets into AddError method.
Email messages are sent asynchronously and are not affected by the AddError method.
The AddError method only prevents the record from being saved and rolls back any changes made in the transaction.
To send an email from a trigger, use the Messaging.SingleEmailMessage class and the Messaging.sendEmail method.
Senior Salesforce Developer Interview Questions and Answers for Freshers
Q3. Lightning requirement WRT mobile friendly design . How to show as many as columns in single page
To show many columns in a single page for mobile-friendly design in Lightning, use responsive design and consider using horizontal scrolling.
Use responsive design to ensure the layout adjusts to different screen sizes
Consider using horizontal scrolling to allow users to view more columns without taking up too much vertical space
Prioritize the most important columns to display first
Use filters or collapsible sections to allow users to focus on specific columns
Test the design o...read more
Q4. What is difference between custom settings and custom metadata
Custom settings are hierarchical data that can be accessed using code, while custom metadata are metadata types that are customizable at the metadata level.
Custom settings are hierarchical data that can be accessed using code
Custom metadata are metadata types that are customizable at the metadata level
Custom settings can be used to store data that needs to be accessed by code, such as application settings or user preferences
Custom metadata can be used to define custom metadat...read more
Q5. Write a trigger on Order Products. It should display the most number of sold product type on the account. Eg: if most order products sold out of Tv, Ac and Fridge is Tv then update Tv as the most_sold_product o...
read moreCreate a trigger on Order Products to display the most sold product type on the account
Create a trigger on Order Products object in Salesforce
Use SOQL query to count the number of each product type sold
Update the most_sold_product field on the Account object with the highest sold product type
Q6. Write a trigger on Account. if one or more contact is associated with Account then show error if user tries to delete the account
Create a trigger on Account to prevent deletion if associated with one or more contacts
Create an after delete trigger on Account object
Query for related contacts using SOQL
If contacts are found, add an error message to prevent deletion
Share interview questions and help millions of jobseekers 🌟
Q7. How to optimize SOQL and DML in a Apex transaction
Optimizing SOQL and DML in Apex transactions
Use selective SOQL queries to limit the number of records retrieved
Avoid using SOQL queries inside loops
Use bulkified DML operations to process records in batches
Minimize the number of DML statements by grouping similar operations
Use @future or Queueable Apex for long-running operations
Consider using Database methods for DML operations to handle errors
Use System.debug() to monitor performance and identify bottlenecks
Q8. Web service scenario.Best approach to handle bulk callouts over button click
Use batch Apex to handle bulk callouts over button click
Implement the Database.Batchable interface to process records in batches
Use the @future annotation to make asynchronous callouts
Consider using a queueable Apex job to handle large volumes of data
Use the Limits.getCallouts() method to monitor callout limits
Handle any errors or exceptions that may occur during the callout process
Senior Salesforce Developer Jobs
Q9. How many development tools have you used?
I have used multiple development tools throughout my career.
I have experience with IDEs like Eclipse and Visual Studio Code.
I have used version control systems like Git and SVN.
I am familiar with Salesforce development tools like Salesforce DX and Force.com IDE.
I have worked with continuous integration and deployment tools like Jenkins and Salesforce CI/CD.
I have used debugging tools like Salesforce Inspector and Developer Console.
Q10. What are best practices in Trigger? And what are trigger events?
Best practices in Trigger and trigger events
Best practices include bulkifying triggers, using helper classes, and limiting logic in triggers
Trigger events are before insert, before update, after insert, after update, etc.
Examples of trigger events include before insert, after update, etc.
Q11. What is connected App, remote site settings and OAuth?
Connected App, remote site settings, and OAuth are key components in Salesforce for enabling secure external access to Salesforce data and functionality.
Connected App is a framework that enables external applications to securely integrate with Salesforce using APIs.
Remote Site Settings allow Salesforce to make callouts to external services over HTTPS.
OAuth is an open standard for access delegation, commonly used in Salesforce for authentication and authorization of external a...read more
Q12. 4. what is static block in apex
Static block is a block of code that runs only once when the class is loaded.
Static block is enclosed in curly braces and starts with the keyword 'static'.
It is used to initialize static variables or to perform any one-time setup for the class.
Static block is executed before the constructor of the class.
Example: static { System.debug('This is a static block'); }
Q13. How will you call a service running inside an internal network from an outside network
To call a service running inside an internal network from an outside network, you can use a VPN, port forwarding, or a reverse proxy.
Set up a VPN connection between the internal network and the outside network to securely access the internal service.
Use port forwarding to route external network traffic to the internal service through a specific port.
Deploy a reverse proxy server in the DMZ to act as an intermediary between the external network and the internal service.
Q14. What would be the structure of backend class for LWC component?
The backend class for a Lightning Web Component (LWC) should handle data retrieval, manipulation, and communication with Salesforce.
Create an Apex class with @AuraEnabled methods to be called from the LWC component
Use SOQL queries to retrieve data from Salesforce database
Implement logic for data manipulation and business processes
Handle error messages and exceptions appropriately
Utilize Apex triggers and classes for complex operations
Q15. Full form of RAM & how does it works Full form of ROM & how does it works How to convert the customer others brand to Xiaomi brand etc
RAM stands for Random Access Memory and ROM stands for Read Only Memory. RAM is a volatile memory used for temporary storage while ROM is a non-volatile memory used for permanent storage.
RAM is used for storing data that is currently being used by the computer's CPU. It is volatile, meaning the data is lost when the power is turned off.
ROM is used for storing data that needs to be permanently stored, such as the computer's BIOS. It is non-volatile, meaning the data is not los...read more
Q16. What type of parameters can be passed to Future?
Future methods in Salesforce can accept primitive data types as parameters.
Primitive data types like Integer, String, Boolean, etc. can be passed as parameters to Future methods.
Non-primitive data types like custom objects or collections cannot be passed as parameters to Future methods.
Example: @future public static void myFutureMethod(Integer param1, String param2) { }
Q17. Write a trigger on contact to display the number of contact on Account.
Create a trigger on Contact to display the number of contacts on the related Account.
Create an after insert, update, delete trigger on Contact object
Query for the count of contacts related to the Account
Update a custom field on the Account with the count of contacts
Q18. Write lwc code for displaying Accounts with related contacts in a list
Display Accounts with related contacts in a list using LWC code
Create a Lightning web component (LWC) to display the list
Use Apex to query for Accounts and their related Contacts
Iterate over the data to display Accounts and their related Contacts in the list
Q19. What are the decorators in Lwc and its uses?
Q20. Test method for private methods, trigger for updating related data of opportunity's contact and account
Test private methods in trigger for updating related data of opportunity's contact and account
Create test data for Opportunity, Contact, and Account records
Call the private methods in the test class using System.assertEquals to verify the expected results
Use Test.startTest and Test.stopTest to isolate the trigger execution
Q21. How connection is done from Mulesoft to Salesforce
Connection from Mulesoft to Salesforce is done using Salesforce Connector in Mulesoft Anypoint Platform.
Use Salesforce Connector in Mulesoft Anypoint Platform to establish connection
Authenticate using Salesforce credentials (username, password, security token)
Utilize Salesforce APIs to interact with Salesforce data
Q22. How to pass subjects to future methods?
To pass subjects to future methods, use the @future annotation in Apex.
Use the @future annotation before the method declaration to indicate that the method will run asynchronously in the future.
Pass the subject parameters to the @future method as arguments when calling the method.
Ensure that the subject parameters are serializable to be passed to future methods.
Q23. What are the tools for deployment?
Tools for deployment include Salesforce DX, Ant Migration Tool, Change Sets, and Metadata API.
Salesforce DX is a command-line interface for development and deployment
Ant Migration Tool is a Java/Ant-based tool for moving metadata between environments
Change Sets allow for moving configuration changes between orgs
Metadata API is a web service for managing metadata
Q24. What is with and without sharing?
With and without sharing in Salesforce determines whether sharing rules are enforced for a class.
With sharing keyword enforces sharing rules, restricting access to records based on the user's profile and organization-wide defaults.
Without sharing keyword does not enforce sharing rules, allowing full access to all records regardless of the user's profile or organization-wide defaults.
Q25. Write a code to calculate multiply of two integer passing as parameter
Code to calculate the product of two integers passed as parameters.
Declare a function that takes two integer parameters.
Multiply the two integers together and store the result in a variable.
Return the calculated product.
Q26. Difference between Future and Queable Apex?
Future is asynchronous and runs in a separate thread, while Queueable Apex runs in the same thread but can be queued for execution.
Future methods are used for executing code asynchronously, while Queueable Apex is used for chaining jobs and running them in a specific order.
Future methods have a limit of 50 per transaction, while Queueable Apex has a limit of 50 jobs in the queue per transaction.
Future methods cannot be scheduled, while Queueable Apex can be scheduled for futu...read more
Q27. order of execution in Salesforce
Order of execution in Salesforce determines the sequence of events that occur when a record is saved.
Triggers are executed first
Validation rules are checked next
Before triggers are executed
Custom validation logic is checked
Record is saved to the database
After triggers are executed
Assignment rules are executed
Auto-response rules are executed
Workflow rules are executed
Escalation rules are executed
Roll-up summary fields are updated
Criteria-based sharing rules are evaluated
Post-c...read more
Q28. Any Experience with sending emails from salesforce api
Yes, I have experience sending emails from Salesforce API.
I have used the Salesforce REST API to send emails programmatically.
I have integrated email functionality into Salesforce workflows and processes.
I have experience with setting up email templates and automating email sends using Salesforce API.
Q29. 5. best practices of test class
Best practices for test classes in Salesforce development.
Test all positive and negative scenarios
Use test data factory methods to create test data
Avoid hardcoding IDs and use SOQL queries to retrieve data
Use System.assert methods to validate results
Test governor limits and bulk data scenarios
Use @testSetup to create common test data
Avoid using SeeAllData=true
Test asynchronous code using Test.startTest() and Test.stopTest()
Use Test.isRunningTest() to avoid executing unnecessa...read more
Q30. What is promise and promiseAll?
Promise is an object representing the eventual completion (or failure) of an asynchronous operation, and promiseAll is a method that takes an iterable of promises and returns a single Promise that resolves when all of the promises have resolved.
Promise is used in JavaScript to handle asynchronous operations.
It represents a value that may not be available yet, but will be resolved at some point in the future.
PromiseAll is a method that takes an iterable of promises and returns...read more
Q31. how many type of prise rule in salesforce cpq
There are two types of price rules in Salesforce CPQ.
There are two types of price rules in Salesforce CPQ: Product Rules and Discount Schedule Rules.
Product Rules are used to set pricing based on specific product configurations or attributes.
Discount Schedule Rules are used to apply discounts based on predefined discount schedules.
Q32. recent technical implementation
Implemented a custom Lightning component for a client to streamline their lead management process.
Created a custom Lightning component using Aura framework
Integrated the component with Salesforce lead objects and workflows
Implemented client-specific business logic and validation rules
Tested the component thoroughly to ensure functionality and performance
Q33. Code to send email on update record form apex Trigger
Code to send email on update record form apex
Create a trigger on the object you want to monitor for updates
In the trigger, check if the record has been updated
If it has, create an instance of the Messaging.SingleEmailMessage class
Set the necessary properties of the email message, such as the recipient, subject, and body
Add the email message to a list of messages
Use the Messaging.sendEmail method to send the email
Q34. Can callouts be made from trigger?
Yes, callouts can be made from triggers in Salesforce.
Callouts can be made from triggers using @future annotation to make asynchronous callouts.
It is recommended to use @future annotation to avoid hitting governor limits.
Make sure to handle any potential exceptions that may occur during the callout.
Q35. Query to fetch the second maximum amount record of opportunity
Use SOQL query to fetch the second maximum amount record of opportunity
Use ORDER BY clause to sort the records by amount in descending order
Use LIMIT 2 to fetch the top 2 records
Use OFFSET 1 to skip the first record and fetch the second maximum amount record
Q36. what is flow and automation type
Flow and automation types are tools in Salesforce used to automate business processes and streamline workflows.
Flows are declarative automation tools that allow users to design and automate business processes by creating visual workflows.
Automation types include Process Builder, Workflow Rules, and Approval Processes, which automate repetitive tasks and streamline processes.
Examples of automation types include automatically sending an email when a new lead is created, updatin...read more
Q37. what is new features of salesforce
Some new features of Salesforce include Lightning Web Components, Einstein Voice, and Salesforce Blockchain.
Lightning Web Components allow developers to build custom components using modern web standards.
Einstein Voice enables users to interact with Salesforce using natural language processing.
Salesforce Blockchain helps organizations securely share data and processes across multiple parties.
Q38. Rollup Summary trigger on Account and contact
Rollup summary triggers are used to calculate and display aggregated data from child records on a parent record in Salesforce.
Create a trigger on the child object (Contact) to calculate the sum of a field (e.g. Amount) and update a field on the parent object (Account)
Use SOQL queries to retrieve the related child records and calculate the sum
Handle bulk operations to ensure trigger efficiency and avoid governor limits
Q39. 3. disadvantages of process builder
Process builder has some limitations and drawbacks.
Process builder can slow down the system performance.
It has a limit of 10,000 records per hour.
It can be complex to use and maintain.
It cannot handle bulk updates efficiently.
It does not support all types of actions and criteria.
It can cause recursion and infinite loops if not configured properly.
Q40. how to subscribe for a platform event ??
To subscribe for a platform event, use the CometD library or the EMP Connector
Use the CometD library to subscribe to platform events
Use the EMP Connector (Enterprise Messaging Platform) to subscribe to platform events
Specify the event channel to subscribe to in the code
Q41. What is rollup summary field?
Rollup summary field is a field in Salesforce that calculates values from related records and displays the result on a parent record.
Rollup summary fields are used to perform calculations on child records and display the result on a parent record.
They can be used to calculate the sum, count, minimum, or maximum of a field in related records.
For example, a rollup summary field can be used to calculate the total amount of all opportunities related to an account.
Rollup summary f...read more
Q42. Before vs After Triggers
Before triggers are executed before the record is saved to the database, while after triggers are executed after the record is saved.
Before triggers are used to validate or modify record values before they are saved.
After triggers are used to perform additional actions after the record is saved.
Before triggers can be used to prevent the record from being saved by throwing an exception.
After triggers can be used to update related records or perform asynchronous operations.
Q43. What is LDT and its restrictions
LDT stands for Long Data Type and has restrictions on its usage in Salesforce.
LDT is a custom field type in Salesforce used for storing large amounts of text data.
It has a limit of 131,072 characters per record.
LDT fields cannot be used in formula fields or workflow rules.
LDT fields are not searchable in Salesforce reports.
Q44. Communication between indepedent components in lwc
Communication between independent components in LWC can be achieved using events, pubsub, and properties.
Use events to communicate between components in a parent-child relationship
Implement pubsub pattern using custom events to communicate between unrelated components
Pass data between components using properties
Q45. What are Salesforce governor limits
Salesforce governor limits are limits enforced by Salesforce to ensure efficient use of resources and prevent abuse.
Governor limits are enforced to prevent long-running or resource-intensive operations.
Examples of governor limits include limits on the number of SOQL queries, CPU time, and DML statements.
Exceeding governor limits can result in exceptions being thrown by Salesforce.
Developers need to be aware of governor limits and design their code to work within these constra...read more
Q46. LWC decorators, difference between SOQL and SOSL
LWC decorators are used to define metadata for Lightning web components. SOQL is used to query records in Salesforce, while SOSL is used to search for records.
LWC decorators are used to add metadata to Lightning web components, such as @api to expose a property or method
SOQL (Salesforce Object Query Language) is used to query records in Salesforce based on specific criteria
SOSL (Salesforce Object Search Language) is used to search for records in Salesforce using a search quer...read more
Q47. What is Lazy approach in lWC
Lazy loading in LWC delays the loading of resources until they are actually needed.
Lazy loading helps improve performance by only loading resources when necessary
This approach is commonly used for loading images, scripts, or components on demand
Example: Lazy loading images in a gallery component to improve page load speed
Q48. Child to parent communication in LWC
Child to parent communication in LWC involves using events to pass data from child components to parent components.
Use custom events to communicate from child to parent components
Dispatch the custom event in the child component and handle it in the parent component
Pass data along with the custom event to send information from child to parent
Q49. What are OWDs in SF
OWDs in SF refer to Organization-Wide Defaults which control the default level of access users have to records in Salesforce.
OWDs determine the baseline level of access for all records in an organization
They can be set to Public Read/Write, Public Read Only, Private, or Controlled by Parent
OWDs can be further refined using sharing rules and manual sharing
Q50. What is Dml mixed Error
DML mixed error occurs when a single DML operation tries to insert, update, or delete multiple records of different types in a single transaction.
Occurs when trying to perform DML operations on multiple types of records in a single transaction
Can happen when inserting, updating, or deleting records of different objects in one operation
Results in a mixed DML error and requires workaround like using @future annotation for asynchronous processing
Interview Questions of Similar Designations
Top Interview Questions for Senior Salesforce Developer Related Skills
Interview experiences of popular companies
Calculate your in-hand salary
Confused about how your in-hand salary is calculated? Enter your annual salary (CTC) and get your in-hand salary
Reviews
Interviews
Salaries
Users/Month