Virtusa Salesforce Developer Interview Questions Following are the interview questions asked at Virtusa for a Salesforce Developer role with 3 years of experience.
What's Covered
Topics covered in this interview.
All Interview Questions
Every question asked in this interview, listed one by one.
More Salesforce Interview Questions to Practice
The extra questions below are not from this interview. They cover the same topics and are commonly asked in Salesforce developer interviews, so they make good practice before your own round.
Apex questions
- What is the difference between static and instance variables in Apex?
- What is the difference between with sharing, without sharing and inherited sharing?
- What are governor limits? Name five important ones.
- What is the difference between Database.insert and the insert DML statement?
- What is the difference between Batch Apex, Queueable Apex, Future methods and Schedulable Apex?
Triggers questions
- What is a trigger handler framework, and why use one?
- How do you bulkify a trigger?
- Why can you not update the records in Trigger.new directly inside an after trigger?
- How do you stop a trigger from running more than once on the same record (recursion)?
SOQL and Data questions
- What is an external ID, and how is it used with upsert?
- How do you query polymorphic fields such as WhoId and WhatId?
- What are custom indexes, and when would you request one?
- What is the difference between SOQL and SOSL?
Security and Administration questions
- What are the different types of sandboxes?
- What is the difference between profiles and permission sets?
- How do OWD, the role hierarchy, sharing rules and manual sharing work together?
General and experience questions
- How do you keep up with new Salesforce releases?
- Tell me about your current project and your role in it.
- What was the most challenging issue you solved recently, and how did you solve it?
Concepts to Revise
Based on the questions on this page, these are the areas most worth revising.
Apex
- Governor limits for SOQL, DML, CPU time and heap size
- Bulkification: no SOQL or DML inside loops
- Sharing keywords and how they affect record access
- Asynchronous Apex: future, queueable, batch and schedulable
- Test classes: test data, System.assert, Test.startTest and Test.stopTest
- Collections and wrapper classes
Triggers
- Context variables: isBefore, isAfter, isInsert, isUpdate, isDelete, isUndelete
- Trigger.new, Trigger.old, Trigger.newMap and Trigger.oldMap, and in which events each exists
- One trigger per object with a handler class
- Preventing recursion with static variables
- addError to block a save with a message
- Testing triggers with single and bulk records
SOQL and Data
- SOQL clauses: WHERE, ORDER BY, LIMIT, OFFSET, GROUP BY, HAVING
- Relationship queries and subqueries
- Aggregate functions and AggregateResult
- SOSL versus SOQL and when to use each
- Dynamic SOQL and bind variables
- Lookup, master-detail and roll-up summary fields
How to Prepare
The questions on this page lean towards Apex, Triggers and SOQL and Data. Spend most of your revision time there, then cover the remaining topics lightly.
- Practise explaining governor limits and bulkification with a real example from your own project.
- Write a trigger with a handler class from memory, then test it with 200 records to prove it is bulk safe.
- Run relationship, aggregate and subquery examples in the Developer Console until you can write them without looking.
- Say your answers out loud. Interviewers listen for clear, structured explanations, not memorised definitions.
- Prepare one or two real examples from your own projects for the general questions.
Preparing for a Salesforce developer interview?
Browse more real company interview experiences and hands-on Apex trigger patterns.
i’m interested