Salesforce SMTS Interview

salesforce logo
salesforce
MTS IINo Offer
October 30, 2025122 reads

Summary

I recently interviewed for the SMTS role at Salesforce, where I encountered two algorithmic challenges. Despite formulating approaches for both problems, I was unable to complete them within the allotted time, ultimately not receiving an offer.

Full Experience

I had my first round interview at Salesforce for the SMTS position. After a brief one-minute introduction, the interviewer immediately presented me with two coding questions via a Hackerrank link. The first question was identical to Remove All Adjacent Duplicates in String II. I initially brainstormed a brute-force approach but, after about 10-15 minutes, I pivoted to a more efficient stack-based solution. However, since nearly 30 minutes had passed, the interviewer decided to move on. The second question was conceptually the same as Binary Tree Maximum Path Sum, but it came with a significant twist: the input was provided as List<Integer> parent and List<Integer> values. This meant I had to either construct the entire tree from these lists myself or develop an approach that could work directly with this input format. I managed to devise the core approach for the problem but found the task of building the tree from scratch within the tight time constraints to be quite challenging. In the end, I wasn't able to fully solve either problem, though I was able to articulate my thought processes and proposed solutions for both.

Interview Questions (2)

Q1
Remove All Adjacent Duplicates in String II
Data Structures & Algorithms

The problem given was exactly the same as Remove All Adjacent Duplicates in String II. The task involves repeatedly removing sequences of k adjacent and identical characters from a string until no such sequences remain, and then returning the final string.

Q2
Binary Tree Maximum Path Sum with List Input
Data Structures & Algorithms

This question was fundamentally the same as Binary Tree Maximum Path Sum, which asks to find the maximum path sum in a binary tree. However, the inputs were given as List<Integer> parent and List<Integer> values, rather than a pre-built tree. This required me to first construct the binary tree from these lists or adapt my solution to work directly with this list-based representation before computing the maximum path sum.

Discussion (0)

Share your thoughts and ask questions

Join the Discussion

Sign in with Google to share your thoughts and ask questions

No comments yet

Be the first to share your thoughts and start the discussion!