Adobe Interview Experience || MTS-2 || 27th May 2025 Drive
Summary
I detailed my multi-round interview process for an MTS-2 role at Adobe, covering Data Structures & Algorithms, Low-Level Design, and a Hiring Manager round, ultimately leading to my selection for the position.
Full Experience
Hi community,
From long time I have been reading leetcode interview experience section but i guess this is the time to contribute.
College: Tier 1
Current Organsation: PBC(Startup)
YOE: 2 years 1 month
Recently an Adobe recruiter reached out to me and for MTS-2 role and she mentioned that all the rounds will be in single day only as it is a hiring drive.
Round 1: Problem Solving(DSA)
Given an array of words and an array of sentences, calculate how many sentences can be created by replacing any word with one of its anagrams.Note: • Two words are said to be anagrams of each other if one can be created by rearranging the letters of another word, using all the original letters exactly once.
wordSet = ['listen', 'silent', 'it', 'is'] sentences = 'listen it is silent', 'silent it is silent'
wordSet = ['cat', 'act', 'is'] sentences = 'cat is tac', 'act tac is cat'
Write the countSentences function in the editor below.
countSentences has the following parameters: • string wordSet[n]: an array of strings • string sentences[m]: an array of strings
Returns: • int[]: an array of m integers that denote the number of sentences that can be formed from each sentence
Question 2:
Imagine you are designing the organizational hierarchy of a large company. In this structure, each node represents a department, and the edges represent direct managerial relationships between departments. • The company consists of n departments, labeled from 0 to n - 1. • You are given n - 1 manager-subordinate relationships in the form of an array edges, where each element [a_i, b_i] indicates that department a_i is the direct manager of department b_i, or vice versa. This structure forms a tree (i.e., there are no circular managerial chains).Task: Your goal is to choose the most efficient department to serve as the central management hub for the entire company. The height of the hierarchy represents the longest managerial chain (in terms of reporting lines) from the central management department to the most distant department. In a well-designed organizational structure, you want the central management department to be as close as possible to all other departments, minimizing the distance (in terms of reporting lines) to any department.
Objective: You need to identify which departments can serve as the best central management hubs. These are the departments that, when selected as the central hub, result in the shortest longest reporting chain to the most distant department. This ensures that communication and decision-making processes are as efficient as possible.
Output: Return a list of all the departments (node labels) that can act as the best central management hubs for the company. The answer can be returned in any order.
Input: n = 4, edges = [[1,0],[1,2],[1,3]] Output: [1]
Input: n = 6, edges = [[3,0],[3,1],[3,2],[3,4],[5,4]] Output: [3,4]
I answered both of them and within 10 minutes i got email to appear for
Round 2: Problem Solving(DSA)
Question 1:
Imagine you are designing the organizational hierarchy of a large company. In this structure, each node represents a department, and the edges represent direct managerial relationships between departments. • The company consists of n departments, labeled from 0 to n - 1. • You are given n - 1 manager-subordinate relationships in the form of an array edges, where each element [a_i, b_i] indicates that department a_i is the direct manager of department b_i, or vice versa. This structure forms a tree (i.e., there are no circular managerial chains).
Task: Your goal is to choose the most efficient department to serve as the central management hub for the entire company. The height of the hierarchy represents the longest managerial chain (in terms of reporting lines) from the central management department to the most distant department. In a well-designed organizational structure, you want the central management department to be as close as possible to all other departments, minimizing the distance (in terms of reporting lines) to any department.
Objective: You need to identify which departments can serve as the best central management hubs. These are the departments that, when selected as the central hub, result in the shortest longest reporting chain to the most distant department. This ensures that communication and decision-making processes are as efficient as possible.
Output: Return a list of all the departments (node labels) that can act as the best central management hubs for the company. The answer can be returned in any order.
Input: n = 4, edges = [[1,0],[1,2],[1,3]] Output: [1]
Input: n = 6, edges = [[3,0],[3,1],[3,2],[3,4],[5,4]] Output: [3,4] O(Number of nodes)
Question 2:
Imagine you're working with an e-commerce platform that tracks customer interactions with products. The platform collects data about which products users view, add to their cart, and purchase. As part of the product recommendation system, you need to identify the most popular products, i.e., the products that are viewed the most often.
Problem Statement: Given an array nums representing the product IDs that customers have viewed, and an integer k, you need to identify the k most frequent product IDs. These products are the ones that are viewed most often, and they will be recommended to users.
Example: • Product Views (nums): [1, 2, 3, 1, 1, 4, 2, 2, 5, 6, 2] • k: 3 Output: [2, 1, 3]
Cleared this round as well, within another 10 minutes got call for appearing in another round.
Round 3: LLD Round
Interviewer asked my current organisation project, and said you have to design something like you might have seen in your current organsation.
So design LLD of Notification Service.
The notification will be sent to multiple platform such as SMS,WHATSAPP,PUSH notification.
Discussed the approach,Design patterns I will use and he asked some follow up questions.
Then wrote the high level classes for them , drew a diagram as well.
He asked some question on tracking activity of the user on the notification.
Verdict: Selected
Round 4: HM Round
He asked me some general questions, then asked me some questions related to microservices as I worked too much on them, then asked me why you created this microservice as this can be accomodated in single monolith.
I answered this question but he was not satisfied, as after a point of time he asked me who took the decision of creating this microservice, I told upper management, So he asked me
Tell me about a time when you did not agree with your upper management.
I told him a scenario.
Then he asked me one damn wierd questions on which I went kind of blank.
Design a water bottle.
I was like what dude what you are asking.
Then he gave me some hint, shape, color,material, way of opening closing, capacity these will be there in water bottle, how you will use encapsulation,inheritance in the classes you wrote.
In the end he was not completely satisfied.
Verdict(Self): Lean Hire
Interview Questions (8)
Given an array of words and an array of sentences, calculate how many sentences can be created by replacing any word with one of its anagrams.
Note:
• Two words are said to be anagrams of each other if one can be created by rearranging the letters of another word, using all the original letters exactly once.
wordSet = ['listen', 'silent', 'it', 'is']
sentences = 'listen it is silent', 'silent it is silent'
wordSet = ['cat', 'act', 'is']
sentences = 'cat is tac', 'act tac is cat'
Write the countSentences function in the editor below.
countSentences has the following parameters:
• string wordSet[n]: an array of strings
• string sentences[m]: an array of strings
Returns:
• int[]: an array of m integers that denote the number of sentences that can be formed from each sentence
Imagine you are designing the organizational hierarchy of a large company. In this structure, each node represents a department, and the edges represent direct managerial relationships between departments.
• The company consists of n departments, labeled from 0 to n - 1.
• You are given n - 1 manager-subordinate relationships in the form of an array edges, where each element [a_i, b_i] indicates that department a_i is the direct manager of department b_i, or vice versa. This structure forms a tree (i.e., there are no circular managerial chains).
Task:
Your goal is to choose the most efficient department to serve as the central management hub for the entire company. The height of the hierarchy represents the longest managerial chain (in terms of reporting lines) from the central management department to the most distant department.
In a well-designed organizational structure, you want the central management department to be as close as possible to all other departments, minimizing the distance (in terms of reporting lines) to any department.
Objective:
You need to identify which departments can serve as the best central management hubs. These are the departments that, when selected as the central hub, result in the shortest longest reporting chain to the most distant department. This ensures that communication and decision-making processes are as efficient as possible.
Output:
Return a list of all the departments (node labels) that can act as the best central management hubs for the company. The answer can be returned in any order.
Input: n = 4, edges = [[1,0],[1,2],[1,3]]
Output: [1]
Input: n = 6, edges = [[3,0],[3,1],[3,2],[3,4],[5,4]]
Output: [3,4]
Imagine you are designing the organizational hierarchy of a large company. In this structure, each node represents a department, and the edges represent direct managerial relationships between departments.
• The company consists of n departments, labeled from 0 to n - 1.
• You are given n - 1 manager-subordinate relationships in the form of an array edges, where each element [a_i, b_i] indicates that department a_i is the direct manager of department b_i, or vice versa. This structure forms a tree (i.e., there are no circular managerial chains).
Task:
Your goal is to choose the most efficient department to serve as the central management hub for the entire company. The height of the hierarchy represents the longest managerial chain (in terms of reporting lines) from the central management department to the most distant department.
In a well-designed organizational structure, you want the central management department to be as close as possible to all other departments, minimizing the distance (in terms of reporting lines) to any department.
Objective:
You need to identify which departments can serve as the best central management hubs. These are the departments that, when selected as the central hub, result in the shortest longest reporting chain to the most distant department. This ensures that communication and decision-making processes are as efficient as possible.
Output:
Return a list of all the departments (node labels) that can act as the best central management hubs for the company. The answer can be returned in any order.
Input: n = 4, edges = [[1,0],[1,2],[1,3]]
Output: [1]
Input: n = 6, edges = [[3,0],[3,1],[3,2],[3,4],[5,4]]
Output: [3,4]
O(Number of nodes)
Imagine you're working with an e-commerce platform that tracks customer interactions with products. The platform collects data about which products users view, add to their cart, and purchase. As part of the product recommendation system, you need to identify the most popular products, i.e., the products that are viewed the most often.
Problem Statement:
Given an array nums representing the product IDs that customers have viewed, and an integer k, you need to identify the k most frequent product IDs. These products are the ones that are viewed most often, and they will be recommended to users.
Example:
• Product Views (nums): [1, 2, 3, 1, 1, 4, 2, 2, 5, 6, 2]
• k: 3
Output: [2, 1, 3]
Interviewer asked my current organisation project, and said you have to design something like you might have seen in your current organsation.
So design LLD of Notification Service.
The notification will be sent to multiple platform such as SMS,WHATSAPP,PUSH notification.
He asked me why you created this microservice as this can be accomodated in single monolith.
Tell me about a time when you did not agree with your upper management.
Design a water bottle.
He gave me some hint: shape, color,material, way of opening closing, capacity these will be there in water bottle, how you will use encapsulation,inheritance in the classes you wrote.