Adobe | MTS-2 | Frontend | Offer
Summary
I interviewed at Adobe for a CS-1 role and was eventually offered the MTS-2 role due to falling short of the experience requirement, clearing all five rounds with positive feedback and accepting the offer.
Full Experience
Background - Currently working as a frontend engineer at one of India’s leading quick-commerce companies with 2 years and 11 months of experience.
I interviewed at Adobe for a CS-1 (Computer Scientist 1) role. I cleared all five rounds with positive feedback, but due to my years of experience falling short of their CS-1 requirement (minimum 4 years), I was eventually offered the MTS-2 (Member of Technical Staff - 2) role instead.
Round-1
(JS Fundamentals and Coding)
This round focused on core JS concepts:
Topics: Closures, this context, call/apply/bind, event loop, etc.
Problem 1: Based on closure
Problem 2: Related to prototype chaining
We also discussed web security and frontend performance optimizations.
Feedback: Positive
-> It was a positive feedback
Round-2
(React machine coding round)
I was asked to:
Build a custom hook to support pagination with hasNext, cursor, pageSize, etc.
Implement infinite scrolling where nextPage is triggered on scroll end.
I completed it within 45 minutes. The interviewer was happy with the result.
We then had a casual chat about Adobe’s culture, which was really helpful and positive.
-> It was again positive feedback
Round-3
(Web system design round)
This was divided in two halfs
In first half i need to design a app which will sort of config driven
Had discussion on BFF layer, pros and cons, how we can achieve, how we can optimize that by using caching and all
Second half, she asked me to design facebook feed page
I approached it step-by-step:1. Functional & non-functional requirements
2. MVC architecture
3. BFF and API interfaces
4. Real-time data with sockets or polling
5. Rendering optimizations
6. Accessibility concerns
The interviewer was from the Acrobat Android team, so we went deep into the BFF integration aspect.
-> Again a positive feedback
Round-4
(Manager Round)
first half -> More about my work, which team i am going to join, hows the culture and what is my expectations
second half -> 1 Dsa problem
Search in 2D sorted matrix
was able to solve it in 15 mins, Then he extended the problem by saying: after finding the element, I need to replace it with a new number, and after that, the sorted order of the matrix must be maintained with the minimum number of operations.
I was able to discuss about how i can approach it optimially, he was satisified by the verbal approach and asked me to dry run once
-> Positive feedback and hr asked me if i am available for the director round on the same day, i was ready so i said yes
Round-5
(Director round)
It was pretty chill round
Discussion on my projects, why i want to join adobe, what is motivation at work daily, and he tell me more about the team and the people
After that he asked me one DSA problem
Reverse linked list in k group, i wrote down the code in js
The HR called the next day with highly positive feedback.
However, they informed me that I’d be offered the MTS-2 position instead of CS-1 due to my YOE being just under 3 years (CS-1 requires 4+ years minimum).
Though initially it felt odd (as I had interviewed for CS-1 and cleared all rounds), I was still happy to accept the offer and excited to be part of Adobe. 🎉
Interview Questions (7)
Build a custom hook to support pagination with hasNext, cursor, pageSize, etc.
Implement infinite scrolling where nextPage is triggered on scroll end.
Design an application that is configurable via a configuration system.
Design a Facebook feed page.
You are given an m x n integer matrix matrix with the following two properties: Each row is sorted in non-decreasing order. The first integer of each row is greater than the last integer of the previous row. Given an integer target, return true if target is in matrix or false otherwise. You must write a solution in O(log(m * n)) time complexity.
Given a 2D sorted matrix, after finding an element, replace it with a new number, and then maintain the sorted order of the matrix with the minimum number of operations.
Preparation Tips
If you're preparing for frontend interviews or targeting product companies like Adobe, I’d highly recommend brushing up on:
- JS fundamentals
- React + custom hooks
- System design (esp. BFF patterns)
- Core DSA problems (LeetCode mediums)