Salesforce interview experience Real time questions & tips from candidates to crack your interview

MTS 1

Salesforce
upvote
share-icon
3 rounds | 6 Coding problems

Interview preparation journey

expand-icon
Journey
Before applying for this position, I worked as a software developer at Aptean, where I encountered and conquered stimulating challenges. A logical mindset guides my approach to problem-solving, and I find joy in resolving real-world issues. I started exploring data structures and algorithms during my third year of college. I have since continued to prioritize learning in this area while excelling in my previous job.
Application story
I was active on LinkedIn and other job portals and have uploaded my updated resume. In the case of Salesforce, the recruiter reached out to me directly on LinkedIn.
Why selected/rejected for the role?
Alongside Data Structures and Algorithms (DSA), I should also emphasize Core subjects and Object-Oriented Programming (OOP) concepts. During explanations of my thought process, I should consider being more vocal and assertive.
Preparation
Duration: 6 months
Topics: Data Structure and Algorithms, Problem solving, Computer Science fundamentals, Operating system, DBMS
Tip
Tip

Tip 1: Aim for consistency by solving at least one problem daily.
Tip 2: Focus on building strong fundamentals

Application process
Where: Linkedin
Eligibility: 7 CGPA
Resume Tip
Resume tip

Tip 1: Keep your resume concise. A one-page resume is ideal, but you may need two pages if you have a lot of experience. Remember to highlight your most relevant skills and experience, and proofread your resume carefully before submitting it.
Tip 2: Be specific. Don't just list your job duties. Instead, could you focus on your accomplishments and the results you achieved? For example, instead of saying, "Managed a team of 10 employees," say, "Increased team productivity by 15%."

Interview rounds

01
Round
Easy
Online Coding Interview
Duration75 mins
Interview date10 Jan 2022
Coding problem2

The online assessment was conducted on HackerRank and consisted of 15 multiple-choice questions (MCQs) on operating systems (OS), database management systems (DBMS), object-oriented programming (OOPs), data structures (DS), and algorithms, as well as two coding questions.

1. Interleaving Two Strings

Moderate
45m average time
50% success
0/80
Asked in companies
AppleFacebookAmazon

You are given three strings 'A', 'B' and 'C'. Check whether 'C' is formed by an interleaving of 'A' and 'B'.

'C' is said to be interleaving 'A' and 'B', if the length of 'C' is equal to the sum of the length of 'A' and length of 'B', all the characters of 'A' and 'B' are present in 'C' and the order of all these characters remains the same in all three strings.

For Example:
If A = “aab”, 'B' = “abc”, 'C' = “aaabbc”
Here 'C' is an interleaving string of 'A' and 'B'. because 'C' contains all the characters of 'A' and 'B' and the order of all these characters is also the same in all three strings.

interleaving

If 'A' = “abc”, 'B' = “def”, 'C' = “abcdefg”
Here 'C' is not an interleaving string of 'A' and 'B'. 'B'ecause neither A nor 'B' contains the character ‘g’.
Problem approach

Initially, I applied recursion, but for that, 7/10 test cases were getting the Time limit exceeded. I optimized the approach using a dynamic programming Memoization approach and was able to solve 9/10 test cases.

Try solving now

2. Longest Subarray Zero Sum

Moderate
18m average time
85% success
0/80
Asked in companies
OlaPayUAmazon

Given an array arr of length N consisting of positive and negative integers, return the length of the longest subarray whose sum is zero.

Problem approach

My approach:-

1. Create a hashmap to store the cumulative sum and corresponding index for each element encountered.
2. For each element in the array, consider the following three cases:
a) If the element is zero, mark the start and end indices as the "current index."
b) If the cumulative sum becomes zero, set the start index as 0 and the end index as the "current index."
c) If the cumulative sum already exists in the hashmap, set the start index as "map. get(sum) + 1" and the end index as the "current index."

Try solving now
02
Round
Medium
Video Call
Duration60 mins
Interview date28 Jan 2022
Coding problem2

The interview had a friendly and welcoming tone. Before transitioning to the introduction phase, the interviewer showed interest in my health and hobbies. In my self-introduction, I emphasized once again that my primary interest lies in problem-solving, just as I had done previously.

1. Next smaller Palindrome

Easy
10m average time
85% success
0/40
Asked in companies
AmazonDeutsche BankSprinklr

You are given a number 'N' in the form of a string 'S', which is a palindrome. You need to find the greatest number strictly less than 'N' which is also a palindrome.

Note:
1. A palindrome is a word, number, phrase, or another sequence of characters that reads the same backward as forward, such as madam, racecar, 1234321, etc.
2. The numerical value of the given string S will be greater than 0.
3. A single-digit number is also considered a palindrome.
4. The answer number should not contain any leading zeros, except for the case when the answer is 0.
5. Note that the length of the string is nothing but the number of digits in N.
Problem approach

First, Convert the given number to a string so you can easily access its digits. The Algorithm I proposed is:-
=> Start with two pointers approach, one pointing to the leftmost digit (pointer i) and the other pointing to the rightmost digit (pointer j) of the number string.
=> Increment pointer i and decrement pointer j until you find a pair of digits that are not the same (i.e., str[i] != str[j]). If you reach a point where i >= j, the number is already a palindrome and no swaps are needed.
=> If you find a pair of different digits (str[i] != str[j]), you have two options for making the number a palindrome:
a) Swap the digit at i with the digit at j to make both digits the same. This is the first swap.
b) Decide whether to increment or decrement the digits at i and j such that the number becomes the smallest palindrome greater than the original. For example, if the digit at i is more significant than the digit at j, decrease the digit at i, and if the digit at j is more significant, decrease the digit at j.
=> After performing the two swaps (if needed), the number becomes the smallest palindromic number greater than the given number.
=> Convert the modified string to an integer for the final result.

Try solving now

2. DBMS and OS Questions

He asked a lot of Questions about DBMS and OS. A few I remember are:-
=> Explain the differences between DBMS, RDBMS, and NoSQL databases. (Learn)
=> Define the ACID properties in the context of a DBMS.(Learn)
=> Difference between primary and unique key. (Learn)
=> How do you optimize SQL queries to improve performance? How does Indexing work? While creating an Index, what are the things we should consider? How will I know the attributes best suited for indexing? (Learn)
=> Differences between SQL and NoSQL. (Learn)
=> Difference between Semaphore and mutex. (Learn)

Problem approach

Tip 1: Keep your Computer science fundamental strong
Tip 2: Focus on subject as well apart from DSA

03
Round
Medium
Video Call
Duration60 mins
Interview date4 Feb 2022
Coding problem2

The interviewer started by asking me to introduce myself. Then, they asked me to explain the projects I mentioned in my resume briefly. I mentioned three projects in my resume, one based on machine learning and the others related to web development. I explained all of my projects to the interviewer, and they asked me questions in between about the problem statements my projects solved, the tech stacks I used, and the challenges I faced in building them. This took about 20 minutes.

1. LRU Cache Implementation

Moderate
25m average time
65% success
0/80
Asked in companies
MicrosoftUberSalesforce

Design and implement a data structure for Least Recently Used (LRU) cache to support the following operations:

1. get(key) - Return the value of the key if the key exists in the cache, otherwise return -1.

2. put(key, value), Insert the value in the cache if the key is not already present or update the value of the given key if the key is already present. When the cache reaches its capacity, it should invalidate the least recently used item before inserting the new item.
You will be given ‘Q’ queries. Each query will belong to one of these two types:
Type 0: for get(key) operation.
Type 1: for put(key, value) operation.
Note :
1. The cache is initialized with a capacity (the maximum number of unique keys it can hold at a time).

2. Access to an item or key is defined as a get or a put operation on the key. The least recently used key is the one with the oldest access time.
Problem approach

I proposed a solution through a hashmap and a linked list—the hashmap stores elements with their respective data as keys and addresses in the linked list as values. The linked list is organized in the order of element usage, with the most recently used item placed at the start of the list.
Following this approach, the least recently used element will always be at the end of the linked list.

Try solving now

2. Design Question

Design the conflict resolving property of Maven

Problem approach

Tip 1: Ask questions as much as possible and clarify the requirement properly
Tip 2: Separate the functional and non-functional requirements
Tip 3: Break the problem into smaller components

Here's your problem of the day

Solving this problem will increase your chance to get selected in this company

Skill covered: Programming

How do you remove whitespace from the start of a string?

Choose another skill to practice
Similar interview experiences
company logo
MTS 1
4 rounds | 3 problems
Interviewed by Salesforce
3233 views
0 comments
0 upvotes
company logo
Technical Associate
2 rounds | 3 problems
Interviewed by Salesforce
0 views
0 comments
0 upvotes
company logo
MTS 1
3 rounds | 4 problems
Interviewed by Salesforce
2049 views
0 comments
0 upvotes
company logo
MTS
3 rounds | 3 problems
Interviewed by Salesforce
1309 views
0 comments
0 upvotes
Companies with similar interview experiences
company logo
MTS 1
6 rounds | 10 problems
Interviewed by Adobe
4050 views
1 comments
0 upvotes
company logo
MTS 1
4 rounds | 14 problems
Interviewed by Oracle
4097 views
0 comments
0 upvotes
company logo
MTS 1
2 rounds | 5 problems
Interviewed by Adobe
1551 views
1 comments
0 upvotes