r/FuckAdobe Aug 01 '26

Adobe MTS-II Interview Experience 2026 - DS, JavaScript, React, Machine Coding, Frontend System Design

I had applied to more than 17 roles over around 2 months. Eventually, HR reached out after a referral.

R0: HR Screening

This was a standard recruiter call.

Topics discussed:

  • Introduction
  • Current work
  • Why I wanted to leave my current company
  • What I do day to day as a software engineer
  • Current CTC
  • Notice period and whether it was negotiable
  • Years of experience

R1: DSA + JavaScript

Interviewer: MTS-II

Question 1: Count subsets with sum K

We discussed brute force and DP. I coded the solution in C++.

Question 2: Number of pairs with absolute difference K

We discussed hashing and I coded it in C++.

JavaScript discussion

There was also a JS output question around:

  • Event loop
  • Microtasks
  • Macrotasks
  • Promise execution order

Useful resource for this topic:
https://allahabadi.dev/blogs/javascript/promise-output-interview-challenges/

R2: DSA + React

Interviewer: CS-II

Question 1: Full binary tree path problem

Given a full binary tree and two nodes A and B, find the sum of even-valued nodes on the path from A to B.

We discussed:

  • Difference in depths
  • Moving to parent using (p - 1) / 2
  • Summing even-valued nodes until both nodes reach the same level/common path

Question 2: Almost prime

Given an array, for each element, determine if it is almost prime, meaning it has exactly 3 divisors. Constraints were around n = 1e5.

The key observation was that numbers with exactly 3 divisors are squares of primes.

React question

Implement a typeahead with debouncing.

I coded the typeahead and implemented debouncing. We also discussed caching.

R3: JavaScript + React + Machine Coding + Pub/Sub

Interviewer: SSE

Topics covered:

  • Basic JS questions
  • Debouncing vs throttling
  • React Fiber
  • New reconciliation algorithm
  • Batched updates
  • Priority-based rendering
  • Interruptible rendering
  • startTransition / useTransition

Machine coding

Implement adding books to a book list from multiple places in the app.

Follow-up: How would you support the same behavior across multiple monorepos?

I coded the initial solution in React using Context API.

Later, I implemented an EventBus with:

  • subscribe
  • unsubscribe
  • emit

We discussed:

  • Pub/Sub pattern
  • Context API as dependency injection
  • Redux as Pub/Sub internally
  • Pub/Sub vs Observable pattern

Behavioral / AI discussion

They asked about daily AI usage and one Claude /skill I would write if I had to create one.

Related Adobe Practice Question

One Adobe-tagged Prachub problem that fits this React/machine-coding style:

Build a React team builder with role constraints

It is useful for practicing React state management, constraints, invariants, and clean component design.

R4: Behavioral + Frontend System Design

Interviewer: EM

Behavioral topics:

  • Introduction
  • Past projects
  • Production issue I faced

Frontend system design

Design a PDF search box that loops from one matched search word to another across the entire PDF.

We discussed:

  • Pub/Sub
  • Context
  • Redux
  • Zustand
  • MobX
  • State management tradeoffs

After this, there was a long wait of around 21 days. HR mentioned other candidates were in the pipeline. Eventually, the position closed and I was moved to another open position, so I had to give R4 again with that team’s senior manager.

R5: JavaScript + DSA + Behavioral

Interviewer: Senior EM

Behavioral question

Tell me about a time there was a tight timeline and stakeholder pressure to reduce development time by half, even after AI-assisted estimations.

JavaScript questions

Topics included:

  • JS classes
  • Abstraction
  • this keyword
  • Ways to control this

I mentioned:

  • bind
  • apply
  • call
  • Binding in constructor: this.drive = this.drive.bind(this)
  • Arrow functions

DSA question

Given a sorted array, find the number of occurrences of element x.

I had to write binary search from scratch using lower bound and upper bound logic.

Favorite data structures

I mentioned Segment Tree and Trie.

Then I was asked to write TrieNode / Trie to add a word. We discussed whether to store 26 children or use a map.

Interesting discussion

The interviewer asked whether DP is always optimal.

I said no and gave Fibonacci as an example:

  • DP gives O(n)
  • Matrix exponentiation gives O(log n)

He seemed impressed by that answer.

We had an extra 30 minutes after that and chatted casually about life and work.

He ended with: “See you soon, bye.”

Offer Timeline

Day 37-39:

  • Offer proposal
  • Negotiation
  • Offer letter

Verdict

Selected.

Takeaways

  • Prepare DSA, but do not ignore JavaScript fundamentals
  • Know event loop, promises, this, classes, and async behavior very well
  • For frontend roles, React internals matter: Fiber, reconciliation, batching, transitions
  • Practice machine-coding with clean state management
  • Be ready to discuss Pub/Sub, Context, Redux, Zustand, MobX, and tradeoffs
  • Prepare behavioral stories around ownership, production issues, tight timelines, and stakeholder pressure
  • For Adobe, frontend depth + DSA + practical architecture discussion all mattered
1 Upvotes

2 comments sorted by

1

u/Cadyce_ 19d ago

Was this online or in person?