Saturday, August 27, 2016

Interview Experience @Adobe


Round 1 -

1. Explain your current project
2. A discussion on process life cycle - including fork exec, scheduling, resource allocation, virtual memory,
3. Code problem - Design a hit counter. Suppose you are designing a NEWS website and at any point of time one wants to know top "N" articles.

Round 2 -
1. Question about memory allocation in C++
2. Asked the approach to solve Sudoku
3. Find whether two lines intersect or not

Round 3-
1. Puzzle - Suppose two people decide to go in a race. One walks for half distance and runs for half distance, other person walks half time and runs half time who will win the race
2. Coding question - Suppose you have been given a document and a list of words ex: "hello how are you". Now you have to find out minimum distance (length) in the document such that all these words occur. The boundary words are hello and  you, remaining words can occur in any order

Input - i am you are asking hello you hi are how you
Output - index 5 to 10


Round 4-
1. Discussion on current project.
2. Toughest problem handled so far and explain why
3. Multiply two integers given in a linked list format. Output should be a linked list

Round 5-
Director round

Design ad scale videos

Following video is nice overview on why Apache fails to handle high number of concurrent connections, where was other web servers like NGINX, NODEJS can handle high number of connections.



Following link contains the the salient points of the above video

http://highscalability.com/blog/2013/5/13/the-secret-to-10-million-concurrent-connections-the-kernel-i.html