I applied using LinkedIn.
Round 1: Technical
- He asked me to explain my projects in detail first.
- It started with a puzzle. https://practice.geeksforgeeks.org/problems/the-3-5-litre-die-hard-water-puzzle
- https://www.geeksforgeeks.org/program-reverse-string-iterative-recursive/ (Discussed both the approaches)
- Given a set of paths. Find the maximum common path among all of them.
- Eg. /a/b/c and /a/c are the paths. Then, output has to be /a.
- It was expected to handle all the corner cases and solve the problem efficiently (eg. returning if after processing some string the path becomes empty and stuffs like that).
Round 2: Technical
- He asked me to explain my projects in detail first.
- Again started with a puzzle: https://www.geeksforgeeks.org/print-0-and-1-with-50-probability/
- Suppose there is a new number system where 5 is not present. Convert the number given in this number system to the decimal number system.
- Example. Input: 6 Output: 5 Explanation: 5 is absent in the new decimal system
- I suggested a DP approach similar to this: https://www.geeksforgeeks.org/count-numbers-from-1-to-n-that-have-4-as-a-a-digit/
- But the interviewer was expecting a more optimized answer. It can be solved using base notation. Approach will be similar to this: https://www.geeksforgeeks.org/n-th-number-with-digits-in-0-1-2-3-4-5/
- Find the closest square of a given number without using sqrt function.
- Can be solved by finding the sqrt using a binary search approach and then looking for +1 and -1 number’s square.
Round 3: Technical
This was more of a language which focussed more on language-specific details.
For me, it was C++. First, he asked me to rate myself in C and C++. I rated 9 in C++ but 8 in C. He asked me the reason and I said pointers are my nightmare. Then, he told I am going to ask lot of pointer questions today. :p
Questions asked were:
- Define a function pointer
- Create a 2D array dynamically using pointers
- A lot of discussions went around virtual functions
- Can virtual functions be inline? Ans: No . Give Reason as well.
- Generalized stack using a template. Create a class and write all the functions.
- A little bit of discussion on process and thread.
- Shared memory and message passing. How does it work? Advantage of one over other.
- Mirror a BST. initially I swapped the data but later he asked me to do using pointer swapping.
- Puzzle on probability
- Many other questions which I don’t remember 😀
After one day, I got a call from HR that there will be one more round called director round.
Round 4: Technical (Director round)
Brief introduction of the work that I am doing in the company and my role in it.
- WAP to convert decimal number to binary number. After this, he asked me to review my code and consider optimizations, corner cases if any and what comments will you give if you are reviewing this code. In the end, I used some bit operations to make things faster. Like instead of n/2, n>>1 and stuffs like that.
- He asked me my favorite subject. I said operating systems. The discussion went on around shared library, static library, virtual memory, paging, copy-sharing, message passing, etc os concepts.
- In the end, he asked me to provide the approach to compare two files which has 10^9 lines in an efficient way and return the lines that are common in both. The discussion went for around 40 to 45 minutes. This is one of the best discussion I had.
- Approaches discussed were mostly on hashing and sorting.
- Constraints: Single processor machine
Verdict: Selected 😀
After a couple of days, I got call for HR informing me the same.
- I think the interviewers were not looking for the perfect answer every time. They were looking for the approach and thought process.
- Be confident and explain things clearly.
- Say no to whatever you don’t know.
- All the very best.
- Adobe Interview Experience | Set 48 (On-Campus)
- Adobe Interview Experience | Set 50 (On-Campus)
- Adobe Interview Experience | Set 42 (Off-Campus)
- Adobe Interview Experience | Set 24 (On-Campus for MTS)
- Adobe Interview Experience | Set 29 ( Off-Campus)
- Adobe Interview Experience | Set 25 (On-Campus for MTS-1)
- Adobe Interview Experience | Set 40 (On-Campus for MTS-1)
- Adobe Interview Experience | Set 22 (On-Campus)
- Adobe Interview Experience | Set 26 (On-Campus for MTS-1)
- Adobe Interview Experience | Set 52 (On-campus for MTS-1)
- Adobe Interview Experience | Set 33 (On-Campus)
- Adobe Interview Experience | Set 27 (On-Campus for Internship)
- Adobe Interview Experience | Set 35 (Off-Campus Drive)
- Adobe Interview Experience | Set 36 (Off-Campus Drive)
- Adobe Interview Experience | On-Campus for Internship
- Adobe Interview experience | 2020 Internship (Off-campus)
- Adobe Interview Experience | Set 55 (On-Campus Full Time for MTS profile)
- Adobe Interview Experience | Set 30 (Off-Campus For Member Technical Staff)
- Adobe Interview Experience | Set 56 (Off-Campus Full Time for MTS profile)
- Adobe Interview Experience | On-Campus 2020 Product-Dev Summer Intern
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.