I was selected from an online programming contest, which was relatively easy.
The on-site first round was a discussion on the program I created in the contest. Since the problem in the contest was easy, there wasn't much to ask about. Hence I think the interviewer was just checking if it really was me who wrote the program.
In the next round, we were each given a task to program for. I had to write an API, having various input options, to return results from 2 XMLs with different schema. The problem statement stated to take care of Code Design, OOP concepts, code format, documentation and such about 8 things, which I don’t think was possible to complete within a reasonable time frame, along with developing a solution, and that too for programmers who had experience working on RDBMSs and not XMLs. The interviewer asked me to stop half-way after 2 and a half hours, and said that the quality of programmer they require was very high, but they could give me a support job, which I declined. I couldn’t understand why they did not mention anything about this in the interview email. They even gave me 2 days to think about the support job, and called 2 days later to check if I was ready to accept their offer.