Adobe | CS1 | Interview Experience | 4.8 Years | Rejected

adobe logo
adobe
CS14.8 yearsRejected
April 4, 20223 reads

Summary

I applied for a CS1 role at Adobe via employee referral and underwent a 4-5 week interview process comprising technical, system design, and hiring manager rounds, ultimately resulting in a rejection.

Full Experience

I applied for a CS1 position at Adobe through an employee referral and received an interview call within two weeks. The entire process lasted about 4-5 weeks.

Round 1: Technical
This round focused on data structures and algorithms. I was asked to solve two LeetCode problems: Group Anagrams and Merge Intervals.

Round 2: Technical
Another technical round where I tackled the Median of Two Sorted Arrays problem.

Round 3: System Design
The focus here was on the Low-Level Design (LLD) of a client-side rate limiting library. The interviewer expected me to code a rate-limiting algorithm. I designed and explained a complete, thread-safe solution with a driver class demonstrating client ID-based rate limiting. We then discussed potential test cases for this code, including how to test threaded clients here, etc.

Round 4: Hiring Manager
This round started with extensive discussions about my previous work experience. The interviewer asked some quick questions on concurrency, binary semaphores, and mutexes.

Then, an open-ended question about linear search in an array was posed. I was asked to write an algorithm to search an element in an unsorted array, then modify the loop to be unbounded, and finally, address potential issues without using try/catch blocks. I explained that an unbounded loop would eventually lead to memory issues like stack overflow or integer overflow. I suggested increasing JVM memory or breaking the loop under certain conditions, but acknowledged that the linear search algorithm itself would eventually fail for some test cases. I attempted to use some things like bit manipulations or 'hacks' to control the infinite loop by decrementing the loop variable, but these weren't what the interviewer was looking for. I realized I wasn't clear on their expectations, which I believe was a turning point. Later, typical operational questions followed, such as how I handle conflict, what my manager would say about me, and how I react to not receiving credit for my work. I answered these confidently.

Verdict: Rejected!

Interview Questions (7)

Q1
Group Anagrams
Data Structures & Algorithms

I was asked to solve the LeetCode problem 'Group Anagrams'.

Q2
Merge Intervals
Data Structures & Algorithms

I was asked to solve the LeetCode problem 'Merge Intervals'.

Q3
Median of Two Sorted Arrays
Data Structures & Algorithms

I was asked to solve the LeetCode problem 'Median of Two Sorted Arrays'.

Q4
Low-Level Design of Client-Side Rate Limiting Library
System Design

I was tasked with the Low-Level Design (LLD) of a client-side rate limiting library. The interviewer expected me to write and explain the complete, thread-safe code for a rate limiting algorithm with a driver class demonstrating client ID-based rate limiting. We also discussed potential test cases for this code, including how to test threaded clients.

Q5
Unbounded Linear Search Algorithm
Other

I was given an open-ended question on linear search in an array. First, I had to write an algorithm to search an element in an unsorted array. Then, I was asked to make the loop in this algorithm unbounded. Finally, the challenge was to solve potential issues/errors in this code without using try/catch blocks. The interviewer's main focus was on how try/catch works internally and how to control the unbounded loop effectively without explicit error handling.

Q6
Concurrency Concepts
Other

I was asked quick questions about concurrency, binary semaphores, and mutexes.

Q7
Behavioral Interview Questions
Behavioral

I was asked typical operational questions: how I tackle conflict, what my manager would say about me if the interviewer called them, and how I would react if I didn't get enough credit for my work.

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!