Background
I’m currently a frontend developer at a fintech startup with 2 years and 10 months of experience. I recently interviewed at Adobe for the CS-1 role. I cleared all five rounds with positive feedback, but since CS-1 requires a minimum of 4 years of experience, I was offered the MTS-2 role instead, which I accepted.
Round 1: JavaScript Fundamentals
This round focused on JS core concepts like closures, the event loop, async behavior, and context binding.
Coding questions:
- Implement a debounce function
- Flatten a deeply nested object using dot notation
- Compose async functions with chaining support (
composeAsync)
We also talked about memory leaks in large React apps, garbage collection, and retry strategies for flaky APIs. The feedback was positive.
Round 2: React Implementation
I was asked to build a nested comment section with support for replies, like/dislike, auto-saving drafts, and keyboard accessibility.
Follow-up questions included:
- Custom hook for infinite scroll with cursor-based pagination
- Optimizing re-renders using
React.memo,useCallback, and virtualization - Handling large lists and conditional rendering for better performance
The interviewer appreciated the way I structured and explained the solution.
Round 3: Frontend System Design
I had to design a content management dashboard with real-time updates and access control.
We discussed:
- Component-level architecture
- Polling vs WebSocket trade-offs
- Caching strategies
- List virtualization
- Handling offline mode and sync conflicts
- Tracking frontend performance using tools like Sentry and Web Vitals
Feedback from this round was strong.
Round 4: Manager Round
The first part of the round focused on my current work, team dynamics, and expectations from Adobe.
DSA questions:
- Search in a 2D sorted matrix
- Follow-up: Replace the found element and restore sorted order with minimal operations
- Hard DP problem: Given a grid with obstacles, find the number of unique paths from top-left to bottom-right, with at most one obstacle allowed to be removed
I solved the matrix problem completely and walked through the DP approach verbally for the unique paths question. The manager was satisfied with my reasoning.
Round 5: Director Round
We had a casual discussion about my projects, interests, and why I wanted to join Adobe.
DSA problem:
Reverse nodes in k-group in a linked list
Follow-up:
Modify to solve using iterative method with O(1) space
Bonus DP question (asked verbally):
Given a string, find the minimum number of cuts needed to make all substrings palindromes (Palindrome Partitioning II)
I gave a detailed breakdown of the approach using bottom-up DP and space optimizations. The director appreciated the clarity.
Final Outcome
All rounds were positive. Since I had just under 3 years of experience, Adobe moved ahead with the MTS-2 offer instead of CS-1. I accepted it as the team, scope of work, and growth path felt right.
If you're preparing for frontend/product roles at companies like Adobe, make sure to cover advanced JavaScript concepts, React architecture, real-world system design, and at least medium-to-hard DSA questions. For DSA, focus on topics like dynamic programming, linked list manipulation, and matrix-based problems. Happy to help if you need resources or want to discuss anything.
Also, if you are not getting referrals on LinkedIn, can try using www.boostmyreferral.com.


