Salesforce | MTS | Hyderabad | Oct 2020 [Offer]
Summary
I recently cleared the Salesforce interview for a MTS position in Hyderabad. The process, which included an online assessment, multiple technical rounds, and a managerial discussion, concluded with an offer after a lengthy waiting period and a re-initiation of the process due to the initial lockdown.
Full Experience
Hi Leetcoders, I recently cleared the Salesforce interview for the Hyderabad location. The process initially started in March 2020, where I attended the first round after a recruiter call, which went well. However, due to the lockdown, I never received feedback, and the position was eventually closed in April. Finally, in October, the same recruiter reached out, offering to restart the interview process for a new position from the beginning. Below is a detailed account of my interview experience:
Round 1: Online Assessment (HackerRank ALOHA-5) [90 mins]
- Contiguous Subarray Sum
- Maximum sub-matrix sum in a given matrix (I was able to solve the first question quickly, which gave me enough time to work on the second one).
Round 2: (60 min)
- Maximum path sum in a triangular matrix from top to bottom (Only two directions allowed - down and down-right)
- Split BST with given value k
Round 3: (90 min)
- Top K repeated words in a given paragraph (with punctuations and delimiter)
- LLD of a given scenario on cricket match (Observer design pattern). I was asked to write down running code along with classes. (The scenario was: if I hit a six, my friend will cheer, my dog will bark, my car will blow its horn, etc.)
- DB Design related to employee and multiple addresses with some scenario-based questions.
Round 4: Managerial (45 mins)
This round was mostly related to my past experience, previous projects, and some behavioral questions.
Final Verdict: Offer
The overall interview experience was very good, and I found the interviewers to be polite.
Interview Questions (7)
Given an array of integers, find the contiguous subarray (containing at least one number) which has the largest sum and return its sum. Alternatively, determine if a contiguous subarray exists that sums to a specific target value.
Find the maximum sum of a sub-matrix within a given 2D matrix. This typically involves applying Kadane's algorithm across all possible sub-matrices formed by row combinations.
Given a triangular matrix, find the maximum path sum from the top element to any element in the bottom row. Movement is restricted to only two directions: directly down or down-right.
Given the root of a Binary Search Tree (BST) and an integer 'k', split the BST into two (or more) subtrees. Typically, one subtree contains all nodes with values less than or equal to 'k', and the other subtree contains all nodes with values greater than 'k'.
Given a paragraph of text, which may include punctuations and various delimiters, find the 'K' most frequently repeated words. The solution should handle case-insensitivity and proper word extraction.
Design a Low-Level Design (LLD) for a scenario related to a cricket match, specifically demonstrating the Observer design pattern. The example provided was: 'Suppose I am playing cricket and when I hit a six, my friend will cheer, my dog will bark, my car will blow horn etc.' I was asked to write down running code along with classes to illustrate this.
Design a database schema to manage employee information, where each employee can have multiple addresses (e.g., permanent, current). This also involved addressing scenario-based questions related to the proposed database design and queries.
Preparation Tips
I utilized the lockdown period for practicing problems on LeetCode. I primarily focused on solving easy and medium problems across various topics, with very few from the hard category. This approach explains why I struggled with the 'Maximum sub-matrix sum' problem (a hard problem) during the Online Assessment. I also tried to solve Daily Challenges whenever possible.
The waiting period for responses from companies was quite long, and I faced rejections twice in Microsoft interviews (3rd and 4th rounds). While frustrating, these experiences significantly helped me focus on my weak areas and improve my coding skills.
The interview process with Salesforce was completed within 10 days of receiving the call from the recruiter, and I happily received my offer on October 21st. I'm very grateful to the LeetCode community; it's truly one of the best platforms. Thank you everyone and all the best!