Open In App

Salesforce Interview Experience for SDE Internship 2021

Last Updated : 27 Sep, 2021
Improve
Improve
Like Article
Like
Save
Share
Report

Round 1: Salesforce came to my college in the second week of August for an SDE role. The eligibility was 7+ CGPA, with no backlogs for the Computer Science students. The first round was an online coding round conducted on Hackerrank. It comprised of 3 coding questions, based on DSA, to be solved in 90 mins.

  • The first question was deleting a minimum number of digits from a string to make it divisible by 3, such that the final string has no leading zeroes. My approach was finding the remainder of the string (after converting it into a number) and deleting digits accordingly- if the number was divisible by 3, return the original string, divisible by 1, delete any one of the digits with remainder 1 (on division by 3), divisible by 2, delete either 1 digit with remainder 2, or 2 digits with remainder 1. I couldn’t take care of the leading zeroes condition while deletion, so I deleted them after removing digits. I managed to pass 5/6 TCs using this approach. Article link.
  • The second question was a simple recurrence but with large constraints. The recurrence was of the form T(n) = T(n-1) + T(n-2). To take care of the large constraints, rather than storing the outputs in a large DP array, we could take reminders on divisibility by 3 and reuse space. While writing the test, I didn’t realize this, so I brute-forced my solution with a large DP array and managed to pass 4/8 TCs.
  • The third question was tricky. It was a 3D DP question. The only tricky part was realizing that it is a DP question. Tabulating the approach was relatively straightforward. I managed to solve this entirely, passing 6/6 TCs.

Suggestion: Solve the questions you’re confident about/ find easy first. Never leave a question. If you have time, try to think of a brute-force way of solving it. In most cases, you’ll end up passing at least more than one of the test cases. 

Round 2(Technical Interview 1): 10 candidates were shortlisted after the first round, including me. The next round was conducted the next day of the coding test. It lasted for nearly an hour.

  • This was a code-pair round. The interview started with a few basic questions on strings – reversing a string and different approaches. I had to code each approach (recursion and traversing till the mid of the string) and explain time complexities for the same.
  • The next question was to remove duplicate elements from an array in the least time possible. I told them an approach using an unordered map and later modified it using an unordered set.
  • The next question was decoding a Roman number encoded in a string to a number. For example, decoding “XII” to 12. Due to the lack of time, I couldn’t code this completely since some of the test cases were missing.
  • In the end, she asked me to mirror a binary tree (https://www.geeksforgeeks.org/write-an-efficient-c-function-to-convert-a-tree-into-its-mirror-tree/). I told her a recursive approach and explained how I’d handle the edge cases.
  • After these questions, I was asked to write a SQL query to remove duplicate rows from a database. Next, I was asked to write a pseudo-code for Quicksort.
  • Then we had a detailed discussion about an OOPS project that I had done and how I incorporated different OOPS features (Encapsulation, Inheritance, Polymorphism, and Abstraction) into my project. She also asked me about different layers of a mobile app and the different coding practices I follow.
  • Lastly, the interview ended with a question based on designing a database, such that there’s a hierarchy in the data that is being stored—for example, designing a database for developers, senior developers, managers for developers, and so on. I explained my approach using normal forms to reduce the redundant data and also mentioned integrity constraints that would be used.

Suggestion: 

  • Keep preparing for interviews a few days before companies start arriving.
  • You won’t get a lot of time to prepare for the interviews after your coding test.
  • Practice analyzing the time complexity whenever you’re writing a piece of code.
  • The interviewer always asks for time (and sometimes space) complexity after you’ve written your code.
  • Do not skip basic topics like sorting, arrays, and strings; they’re commonly asked in interviews. Revise OOPS and DBMS properly. The interviewers at Salesforce were really helpful. Whenever you feel stuck, do ask for help.

Round 3(Technical Interview-2): 8 candidates were shortlisted after the first technical interview.

  • The interview started with a brief introduction of the interviewer and myself. Then he asked me about different data structures and what we’d use in different scenarios. Then I was asked about deletion in a singly and doubly linked list. Next, we moved to the code pair on Hackerrank.
  • The first question asked to me was a DP question. It was this question – https://www.geeksforgeeks.org/find-length-longest-subsequence-one-string-substring-another-string/. I could write one of the conditions correctly, whereas the second was wrong. However, the interviewer helped me, and I was able to code the solution using tabulation. This was the only question that I was asked to code.
  • Later, I was asked a similar puzzle, with 9 balls and a minimum number of steps – https://www.geeksforgeeks.org/puzzle-8-balls-problem/. Then we had an in-depth discussion about my projects and how I used DBMS and OOPS concepts.

Suggestion:

  • The interviewers of Salesforce are sweet and helpful.
  • Even if you’re not able to code your approach, tell the interviewer about your thought process and pick up hints.
  • The technical interviews of Salesforce focus on overall CS concepts you’ve been taught till your second year.
  • They expect you to have a sound knowledge of DSA, OOPS, DBMS, basic CS concepts (you cannot really practice this beforehand, in my opinion), your projects.
  • You can practice a few puzzles beforehand from – https://www.geeksforgeeks.org/puzzles/.
  • Be thorough with whatever you’ve mentioned in your resume. Also, prepare one or two questions about the company, like the work/projects, etc. to ask the interviewer towards the end of your interview.

Round 4(HR Round): 5 candidates were shortlisted after the second technical interview.  My HR round was conducted with a senior engineer manager of Salesforce. We briefly introduced ourselves and asked each other a couple of follow-up questions based on the introduction. This round was very personal, and I answered all the questions very calmly. A couple of questions that I was asked were – 

  • What do I miss the most about an offline semester?
  • How do I plan my schedule for the week?
  • What are my strengths/ weaknesses?
  • I was asked two situation based questions –
    • If I have my project changed, how would I quickly adapt to the new team and project?
    • How would I respond to teammates who are not very supportive and helpful?
  • What do I like the most about Salesforce?

Suggestion: 

  • In most cases, the HRs are very friendly, and they’re trying to understand your overall understanding of different things and whether you’re a right fit for their company.
  • Prepare for the most commonly asked HR round questions beforehand.
  • Be calm and answer all the questions wisely. Do not get over-excited that you’ve cleared the previous rounds.
  • Know well about the company and ask questions about the same.

I could clear the HR round and was the only one select from my college!

The article is contributed by Anuradha Pandey.


Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads