Adobe MTS 2 interview experience

adobe logo
adobe
· MTS 2
August 10, 2024 · 95 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)

1.

JavaScript Object Manipulation with Destructuring

Other

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

2.

Polyfill for Promise.all API

Other

Implement a polyfill for the Promise.all API functionality.

3.

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.

4.

Lowest Common Ancestor of Binary Tree

Data Structures & Algorithms·Medium

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

5.

Critical Rendering Path & Async Operations

System Design

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

6.

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.

7.

Level Order Traversal of Binary Tree

Data Structures & Algorithms·Easy

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

8.

Past Project Experiences Discussion

Behavioral

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

9.

Reverse Words in a String

Data Structures & Algorithms·Medium

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

10.

Find All Flights from Source to Destination

Data Structures & Algorithms·Medium

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

11.

Invert Binary Tree

Data Structures & Algorithms·Easy

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!