Tip 1 : Practice 20 standard questions of each DS.
Tip 2 : Focus on Recursive solutions to problems.
Tip 1 : The resume should be simple and clear.
Tip 2 : Focus on work experience.
Round was easy with questions on RedHat, Linux and system admin.
Where do the manual (man) pages for all commands reside in the File System Hierarchy (FSH)?
Tip 1 : Learn Previous interview questions
Tip 2 : Learn from online tutorials.
Total 2 coding questions. Medium to hard.



A substring is a contiguous segment of a string.
Maintain a boolean table[n][n] that is filled in bottom up manner.
The value of table[i][j] is true, if the substring is palindrome, otherwise false.
To calculate table[i][j], check the value of table[i+1][j-1], if the value is true and str[i] is same as str[j], then we make table[i][j] true.
Otherwise, the value of table[i][j] is made false.
We have to fill table previously for substring of length = 1 and length =2 because
as we are finding , if table[i+1][j-1] is true or false , so in case of
(i) length == 1 , lets say i=2 , j=2 and i+1,j-1 doesn’t lies between [i , j]
(ii) length == 2 ,lets say i=2 , j=3 and i+1,j-1 again doesn’t lies between [i , j].



We have a linked list 1->2->3->4->5->6->7 and so on. You are supposed to swap pairs of a linked list like swap (1,2), (3,4), (5,6), and so on.
1. You may not modify the data in the list’s nodes; only nodes themselves may be changed. Because imagine a case where a node contains many fields, so there will be too much unnecessary swap.
2. If a pair of a node does not exist, then leave the node as it is.
If there are 2 or more than 2 nodes in Linked List then swap the first two nodes and recursively call for the rest of the list.
Round conducted on phone.
Design Facebook.
Tip 1 : Prepare Standard system design questions on google.
Tip 2 : Clear the basics of DS.
This was an easy round.

Here's your problem of the day
Solving this problem will increase your chance to get selected in this company
What is recursion?