Adobe MTS 2 interview experience

adobe logo
adobe
MTS 2
August 10, 20240 reads

Summary

I recently interviewed at Adobe for the MTS 2 role, undergoing four technical rounds that tested my skills in JavaScript fundamentals, system design principles, and core data structures and algorithms.

Full Experience

My interview journey for the MTS 2 role at Adobe consisted of four comprehensive rounds.

Round 1 focused heavily on JavaScript. I was asked about object manipulation using destructuring, creating a polyfill for the Promise.all API, and handling event triggering during scroll and window resize, specifically discussing throttling techniques including naive and timestamp-based implementations.

Round 2 continued with a mix of DSA and JS. I had a problem on finding the Lowest Common Ancestor (LCA) of a Binary Tree. We also discussed Critical Rendering Path (CRP) and asynchronous operations. Further JavaScript concepts like the event loop, objects, call, apply, and bind were covered.

Round 3 began with a data structures question, specifically Level Order Traversal of a Binary Tree. The latter part of this round involved discussions about my past project experiences.

Round 4 was primarily focused on algorithms. I was tasked with reversing words in a long string, finding all direct and indirect flights from a given source to destination, and inverting a Binary Tree.

Interview Questions (11)

Q1
JavaScript Object Manipulation with Destructuring
Other

Concepts and practical application of JavaScript object manipulation, specifically focusing on destructuring.

Q2
Polyfill for Promise.all API
Other

Implement a polyfill for the Promise.all API functionality.

Q3
Event Throttling on Scroll/Resize
Other

Discuss how to handle events triggering on scroll and window resize. Explain throttling, its implementation strategies, including naive and timestamp-based approaches.

Q4
Lowest Common Ancestor of Binary Tree
Data Structures & AlgorithmsMedium

Given a binary tree, find the lowest common ancestor (LCA) of two given nodes in the tree.

Q5
Critical Rendering Path & Async Operations
System Design

Discussion on Critical Rendering Path (CRP) and handling asynchronous operations in web development.

Q6
JavaScript Event Loop, Objects, Call, Apply, Bind
Other

In-depth discussion on core JavaScript concepts including the event loop, objects, and the usage of call, apply, and bind methods.

Q7
Level Order Traversal of Binary Tree
Data Structures & AlgorithmsEasy

Perform a level order traversal (breadth-first traversal) of a binary tree.

Q8
Past Project Experiences Discussion
Behavioral

Discussion about past project experiences, design choices, challenges faced, and lessons learned.

Q9
Reverse Words in a String
Data Structures & AlgorithmsMedium

Given a string, reverse the order of words. For example, 'the sky is blue' becomes 'blue is sky the'.

Q10
Find All Flights from Source to Destination
Data Structures & AlgorithmsMedium

Given a list of flights (direct connections), find all possible flights (direct and indirect) from a given source city to a given destination city.

Q11
Invert Binary Tree
Data Structures & AlgorithmsEasy

Invert a binary tree, swapping left and right children for all nodes.

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!