Someone from the Bangalore team interviewed me for the first round and then there were four technical and three non technical interviews from US. I cleared all the rounds and was asked to come for an onsite interview. The HR told me it's all positive till now and the only formality is to meet the team here in Bangalore who would be interviewing me, asking non-technical questions.
The interviews went well and it looked positive when I left their office. However, after a few days the HR sent an email mentioning that I'm not shortlisted. I was in ambush and mentioned that everything was positive according to her. She said the team has chosen someone else that they were interviewing. The head of the HR mentioned that this is not right and she had escalated the issue to the management; clearly it does not make sense to reject the candidate just because they found someone else later in the stage.
I'm still waiting for the head of HR to call me and let me know what happened to the escalation. At least they owe an apology.