I was contacted by a recruiter for a position that I applied online. She setup an interview one of the team members from Kindle organisation. He called me at the exact time and asked few question from the resume. With in couple of minute he jumped into technical questions. He asked a question and we need to tell him our initial thoughts about the problem. He ask us to improve the algorithm in terms of time complexity. The discussion goes on inorder to improve the efficiency of algorithm. Then he stops us at a point and asks us to write code in callaboration tool. he will looking at the code we are writing. They dont care about small syntax errors. After couple of days I contacted the recruiter and she said that I was not picked up for an interview. I can understand the reason, I am not that good at algorithms and data structures. So my advice would be going through all the algorithms and datastructures before you apply online. Also I would suggest to work on as many problems as yo u can, so that you can get know multiple ways of solving a problem.