With the Salesforce CRM making its way into both small scale and large scale organizations at such a burgeoning rate, there’s a continued acceleration of demand for skilled administrators and developers throughout the world. However, being aware of how fantastic of a platform Salesforce is, there isn’t any scarcity of talented Salesforce professionals either. When beginning your job search, leave no stone unturned in applying for Salesforce oriented roles that best fit your qualifications and experience. Before we get into the technicalities of what a developer interview can be like, here are a few tips for beefing up your chances of getting that first interview call:
- First and foremost, spend a lot of time updating your resume and LinkedIn profile. The prospective employer or recruiter should be able to get a bird’s eye view of all your experience and accomplishments within five minutes of starting to look at your resume/profile among a plethora of other candidates. And it should leave an impression.
- Post your resume on multiple trusted job web sites. This would further amplify your chances of recruiters approaching you themselves. Aggressively look for job positions with relevant search strings on these sites, make sure that the job responsibilities align with what you want and hit that Apply button.
- Send InMail to technical recruiters on LinkedIn and be immensely responsive if they contact you. The recruiters are actively looking for candidates so the response time matters. This was the most effective and rewarding step for me in the job application process primarily because of the positive outcome and overall high success rate.
So you did everything right and got the first interview call scheduled with your dream company. You have prepared well (hopefully used some suggestions from my previous post) and now have this irresistible urge to stamp out each and every stage of the interview process that comes your way. I recently had the fabulous opportunity to interview with various firms for diverse Salesforce roles (like Salesforce Developer/Administrator, Salesforce Solution Architect) and would love to share the kind of questions that are asked during such interviews. Since every interview had a more or less similar pattern with respect to the structure of stages, I will break down the process into three different parts:
- The ‘Why-are-you-a-good-fit -for-this-role’’ interview
Type and Duration: Usually a 15-30 minute phone interview.
Interview Panel: This interview is mostly conducted by an HR team member at the company who is trying to screen you among a deluge of other eligible candidates.
How to tackle it: This is not the time to be overly technical but being succinct and compelling with the ‘Tell me about yourself’ speech. There can be some minor additions to this interview like a preliminary online assessment test or a quick basic technical interview round, both meant to gauge if the candidate is well versed with the nuts and bolts of the Salesforce platform.
- Tell me a little about yourself and your work experience.
- Why do you want to leave your current employer?
- What kind of a role are you looking for?
- What would be the desired compensation range?
- How many end-to-end implementations have you worked on and what was your level of involvement in most of them?
- What is Apex Data Loader and what kind of operations can it perform?
- What is an Apex Constructor?
- What’s the difference between Roles and Profiles?
- What are approval processes in salesforce?
- What’s the difference between SOSL and SOQL?
- How many Master Detail relationships can you have on an object?
- What is the difference between 15 digit and 18 digit ID’s in Salesforce?
- Which standard objects in Salesforce support Queues?
- What is the difference between Profiles and Permission Sets?
- What are Visual Workflows and how are they different from Workflows?
- When would you use a before or after trigger?
- What are custom settings and how can you use them?
My take on it: As you must have noticed, the above questions should be easy enough for a person who has even a few months of experience with the platform. The HR person or the technical recruiter was probably handed a pre-built questionnaire along with the answers, which they use to screen out candidates. If you answer most of the above precisely and correctly, you are through to the next round.
- The ‘Let’s-get-to-know-your-skills-and -you-better’ interview
Type and Duration: Usually a 45 minutes-1 hour interview.
Interview Panel: This interviewing team normally comprises the hiring manager along with other team members who will most likely be collaborating with you on the job.
How to tackle it: Now is the time to blow one’s own trumpet, not refrain from getting all technical and showing the interviewers that you really know your stuff. This is also the time to deliver the perfect elevator speech and convince the panel that you are the BEST fit for this job. The reason why I put BEST in all caps is to stress upon the the fact that for this round, you should really aim to set yourself apart from other candidates in order to make it to the onsite interviews. Here are the kind of questions that you should keep your ammo ready for:
- Tell us about yourself. (Yes that question again and it isn’t the last time you will be asked this one)
- Tell us about some of the most interesting projects you worked on.
- Tell us about your typical approach to a project.
- Why do you want to apply for this position at our firm? Another version of this can be: Why do you want to join XYZ company?
- What are your top 5 favorite apps on the Appexchange and why?
- Do you have any questions for us?
- When and why would you use Visualforce?
- What is the benefit of Enterprise edition over Professional/Group edition?
- What are the three governor limits that you have come across in the past and how did you manage them?
- How would you decide to choose between a lookup or a master detail relationship?
- Why would you use Batch Apex? What are the pros and cons of using it?
- How would you approach a scenario where a client needs to track Parking Permits in Salesforce? What questions would you ask them before the implementation?
- What does ‘good code’ mean for you?
- Give examples of where you would use static and non static variables in Apex.
- What are the principles of a good test class?
- Give examples of scenarios where you would use Matrix and Joined reports.
- Why would you use a summary function in a report? Explain with an example.
- Accounts, Leads, Contacts and Opportunities all have multiple records types. How would you ensure that the lead record type on conversion maps to the appropriate record type on Account, Contact and/or Opportunity?
- Only two users in the org need to have view access to a certain record. How would you control it?
- Which entity would you use to build a visualforce page that respects user permissions?
- Mention a few uses of Visual Workflow, especially things that workflow rules cannot do.
- Question on order of execution where you might be asked to troubleshoot a scenario with a before/after trigger, workflow rule and validation rule involved.
My take on it: The interviewers in this round are primarily trying to evaluate how technically sound you are. Your answers to questions like above should be replete with examples and brimming with reference to projects on your resume. Don’t be saddened if you aren’t able to get a few of them right since the interviewers are more geared towards assessing your approach to a problem/question rather than expecting you to get each one of it right.
- The Onsite Interview
Notice how did I didn’t try to be fancy with the name above? That’s because the onsite interview needs no introduction. The first and second interviews might have differed for me from company to company but the onsite interviews were much the same everywhere.
Type and Duration: In-person and 3-5 hours give or take.
Interview Panel: You meet with a bunch of people either for a single or multiple rounds of interviews , some of them who you have interacted with before and maybe others who you have never spoken with. I put the Behavioral questions after the Technical ones since most companies were interested in grilling me technically first and then moving on to the HR oriented rounds later.
- How would you write a SOQL query for a certain scenario? (Involving both upward and downward traversal)
- Write the pseudocode for a trigger that fires recursively and how would you fix it?
- Why would you use SOQL inside Apex code?
- Explain with an example that how you would use the <apex:actionsupport> tag in Visualforce.
- The Account owner needs to receive a notification when the number of inactive contacts on an Account has crossed a certain number. How would you approach this?
- I want to build a troubleshooting script for the call center folks. What are the various tools that you could use to build this? Which one would you prefer the most?
- I want to calculate the moving 3 week average of won opportunities. How would you approach this?
- What’s the difference between SOAP and REST API?
- What is a future call in Apex and why would you use it? Explain with an example.
- I am trying to build an HR app in Salesforce. Explain everything right from scratch about how you will build it, the business logic around various components and rolling it out to users.
- Does scheduled Apex use synchronous or asynchronous governor limits? (this is a trick question so tread with caution)
- Why would you use batch apex? Write the pseudocode for an example scenario.
- Have you performed any integration with third party systems? Discuss.
- Why would you use the Schema class?
- What is an Apex email service and why would you use it?
- What is your experience with Sales/Service cloud and how much were you involved in setting it up? Discuss.
- Why would you use buckets in reports? Explain with an example.
- Mention three biggest issues that you have faced with Process Builder in the past.
- How do you maintain clean data in Salesforce? Have you used Duplicate Management before? If yes, mention a few limitations of this feature based on prior experience.
- What can you do for us? (Yep, plain yet loaded)
- What was one situation when you had to be quick in coming to a decision?
- Any difficult person to deal with in the past and how did you tackle it?
- Describe a situation in which you used good judgment to solve a problem.
- Have you had trouble getting others to agree with your ideas? How did you resolve it?
- Any situation in which you positively influenced the actions of others?
- What would you do when behind on project schedule?
- Why should we hire you?
- Short term goals? Long term goals?
- How do you stay up to date with technology, especially with respect to Salesforce?
My take on it: If you have been invited for an onsite interview, you are the chosen one among the few other elite candidates who are deemed a great fit for the role. Be extremely expressive and eloquent with all the questions thrown at you, be it technical or behavioral. Even if you feel completely knocked over by a question and don’t know the correct answer to it, do at least try solving it with a workaround or a hack or your best possible solution. Like I mentioned before, most of the interviewers (at least the good ones) intend to examine your approach rather than extracting the perfectly correct answer out of you.
Finally as a disclaimer, please do not rely on the above questions as the sole preparation resource for the interview since no company has this process set in stone. They can have an entirely different interview rounds structure and a different set of questions for various Salesforce roles. I faced the ordeal of going through four phone interviews, two Skype(video) interviews and two different days of onsite interviews with one of the firms. And last but not the least, I recommend sending personal Thank You notes via E-mail to each of the folks in the interview panel for taking the time to interview you. It would obviously not sway the decision in your favor if you didn’t fare well but might prove to be a tad bit decisive if it ends up being another candidate and you as the top contenders for the job. And the courteous gesture doesn’t hurt anyone, right?
Yet again, Best of luck with your future endeavors!