At the first one I automated some testing for them what would free up 3 people they were having to hire for that job. They didn't like it. Thats because they don't have to bear the cost associated with hiring them. It's the client who has to pay. By the person, by the hour and the company gets a (mega) huge cut from it. I'm not sure how such consultancy firms handle this conflict of interest else where but for Indian firms, I know anecdotally, this is very common. So there is no incentive to hire good programmers. Or do good programming because the server costs, etc. again are going to be borne by the client.
And the second one, I was working at another such Indian consultancy firm bit out of Singapore this time. The company was run by the sales force. My manager's manager said in one of his speeches that "as the iPad becomes dual core it will replace servers." I looked at him as my dual core iPad 2 lay in my lap and clapped because that's what you have to do. And I'm pretty sure he didn't mean a P2P future of the web. My manger on the other hand wanted a "function" done that could take in an "iDevice program" and output a BlackBerry app. He wanted it done in 3 hours. My team could have been an isolated incident and I want to believe that but it wasn't so. The only thing my team was doing different than the rest of the organization was the rest of the organization used some form of source control I had never heard of. Probably Microsoft based as that was the decision criteria in all cases. Out team was using none. Files were shared using USB flash drives. There were instances where old employees had left and we didn't have the source of their work - only the binaries. They only hiring a particular ethic group of Indians by the time I left.
Majority of jobs in India are consultancy jobs. They may not be as terrible as my last one but I would think they are half way there. Things may be changing but that's how most of "IT life" is.