Salesforce | MTS | Awaiting Feedback
Summary
I interviewed for the MTS role at Salesforce, undergoing several rounds focused on Data Structures & Algorithms, System Design, and behavioral aspects. I'm currently awaiting feedback on my application.
Full Experience
I recently interviewed for the MTS role at Salesforce. I have 2.5 years of experience.
Round 1: Online Assessment
This round lasted an hour and consisted of two easy-medium Data Structures and Algorithms questions. I completed this round successfully.
Round 2: Online - Data Structures & Algorithms
After a brief introduction, I was presented with two DSA questions.
- The first problem asked me to find K strings with the most occurrences from an array of N strings. If frequencies were equal, lexicographically lower strings were preferred, and results needed to be in decreasing order of frequency. I managed to write working code for this with some help from the interviewer.
- The second question was to find the number of islands using DFS. Due to time constraints, I couldn't write the full code but I explained my approach clearly.
Round 3: Online - Data Structures & Algorithms
This round also started with introductions and featured two more DSA problems.
- The first question was Target Sum. I initially proposed a recursive solution and then optimized it with memoization. I got a bit stuck on how to fully implement it using dynamic programming, so we moved on to the next problem without completely coding this one.
- The second problem was Product of Array Except Self. I discussed various approaches, starting from a brute-force method and gradually refining it to an optimal solution, which I then implemented with working code.
Round 4: Online - Hiring Manager Round
This final round began with introductions, followed by a detailed discussion about my previous projects and the experience listed on my resume. We then delved into a System Design question where I was asked to design Google Calendar. Towards the end, I asked the interviewer some questions about the work environment and team culture.
It's been a week since my last interview, and I haven't heard back from the recruiter yet. I'm currently awaiting the final decision.
Interview Questions (5)
Given an array of N strings and a positive integer K. The problem is to find K strings with the most occurrences, i.e., the top K strings having the maximum frequency. If two strings have the same frequency then the string with a lexicographically lower value should be given preference. The strings should be displayed in decreasing order of their frequencies.
Find the number of islands using DFS.
Given an array of integers nums and a target integer target, you want to build an expression out of nums by adding one of the symbols '+' or '-' before each integer in nums and then concatenate all the integers. Return the number of different expressions that you can build, which evaluates to target.
For more details, refer to the LeetCode problem: Target Sum.
Given an integer array nums, return an array answer such that answer[i] is equal to the product of all the elements of nums except nums[i].
You must write an algorithm that runs in O(n) time and without using the division operator.
For more details, refer to the LeetCode problem: Product of Array Except Self.
Design a system like Google Calendar, considering aspects such as scheduling events, managing notifications, user interface interactions, data storage, scalability, and concurrency.