The whole world uses operating systems, browsers and development tools made in western countries.
The whole world uses operating systems, browsers and development tools made in western countries.
Now, the quality of engineering education received at top CS/engg. institutes and a local college is night and day. This means that only a small subset of the graduating engineers get any decent quality of education.
Most of these people, often considered the cream of the crop are poached by the aforementioned western companies or go for graduate studies. Graduate institutes in India are underwhelming, so these students land up in the west as well.
The rest of the cream have to choose between software engineering roles that pay around $15-25k with very little vertical movement and business analyst/ consultancy roles where you might earn a bit more and have a much clearer clearer progression up the ladder. These are often referred to as the MBA crowd.
Look at people like Sanjay Ghemawat, whose achievements are as noteworthy as Jeff Dean, having been a fundamental part of developing MapReduce, BigTable, Tensorflow, GFS and Spanner.
It is actually a very ironic situation. One one hand the US is complaining about negative intellectual biases against Asian immigrants, while both the Indian and Chinese govt. are lamenting how they are losing the cream of the crop to the US as well.
If both are the be believed, India and China's best are leaving the countries, but the US is not getting competent people from these countries. So, I guess these people have vanished into thin air. In the mean time Chinese and Indians increasingly churn out ground breaking papers and research in CS.
This is very much changing, especially in China, but I presume there is still some lag. The other thing worth bearing in mind is that Chinese products are very insular. They are slow to get localized if ever so unless you have a reason to be going out to download them, you are unlikely to ever be using them.
This is right. From my experience working with an offshore team in India, the main problem is cultural. A large majority of the developers in India I've worked with have no interest in furthering their development carrier, but see it simply as a way to transition into management as fast as possible. In practice, this means that you can go from a junior developer to a project manager in the span of 2 years or so. 2 years is not enough time to solidify your knowledge and become the t-shaped programmer that this industry requires. I think one needs at least 5 years of work and experimentation in this field to reach the level where you can contribute positively to a company, without creating huge amounts of technical debt.