Its All a Sham - An Indian Techie's Take on Outsourcing
expertdabbler.com
expertdabbler.com
the problems i saw in the dev team across the ocean had nothing to do with their technical skill: they were for the most part technically competent. but they were by and large incapable of self-direction. there were a few exceptions, but for most of the team, once they got into a corner they didn't know how to get out of, they punted to an american developer and asked for help.
in my career i've worked with outsourced labor many times. i'd happily trade 5 butts in seats overseas for one guy locally, or even just stateside that understands initiative and can solve their own problems, even if the overseas developers are more 'technically competent'.
you can learn technical competence. you can't learn initiative. getting rid of those on the team with the most initiative can be very expensive.
I know where it comes from, managers in developing nations seems to suck more than the avg manager in say europe or USA.
Managers in developing nations, tend to give unclear direction and then become agressive when their subordinates do not do as they were told, so eventually in many workplace ppl become very passive so not to anger their manager.
What aggrevate the issue is that being a developing nation, it means opportunities are fewer, and you tend to get stuck where you are longer than you usually want.
The solution is simple, just tell your new co-workers from this developing nations, that they are empowered and allowed to do mistakes without being attacked,thats all!
It's often much easier to survive the day-to-day by being passive and doing things inefficiently or wrong than it is to trying to 'do the right thing'. I don't think I'm exaggerating when I say most management _everywhere_ prefers employees to do things "their way" over "the right way."
And insofar as how to combat it, your simple suggestion pretty much hits the nail on the head. Just make sure on-site management understands that too.
You see this everywhere from talk radio to the boardroom. I don't think a simple instruction to a team can change a learned culture overnight, no matter how well intentioned.
It's a slow cultural change: Indians are starting to feel more confident, and -subjectively- it looks like technology innovation in India is growing.
at its core, it is a fundamental need for permission. it's not that indian software developers can't make decisions, and can't make good decisions -- they can. they're sharp folks. rather, there's an inherent prohibition within the culture not to jump without being told to. not to strike out on their own and forge new code. it's the injunction to wait for orders from a superior, or else face the consequences. it's a very subtle thing, a cultural trend that's hard to identify the origin of in an individual, just like it's hard to figure out why all americans need to have credit cards. credit cards are just what we do. they wait for someone to tell them to do something.
it's even more insidious than that, especially if you're closely partnered: if you tell them to do something, and it's a bad idea, 9 times out of 10 they won't correct you. i, as a fallible human, depend on other people to correct my dumbass mistakes, especially in matters of software development. no one gets everything right. that's what's so fantastic about pair programming -- both people get the best judgment of their partner. if you're paired with an indian, and they perceive that you are in a higher position than they (even if it's on a subconscious level), they'll follow you right into hell, or at least an ill-advised has_many :through relationship, even if they know better. it's the way they're raised, the way they live.
i'm not passing judgments on the culture, it just makes for bad programming partners and strange traffic patterns.
Overall I agree with your observations, especially "they'll follow you right into hell".
On a side note, look over your (plain English) sentence: "this 'slavish' attitude is due to being subjected" Slave comes from slavic. Can't live without dictators.
As a case, I'd point to the fact that outside of India, many do not exhibit that sort of subordinate mentality.
I wouldn't bet against being able to create a work environment in India where that was all brought down to a manageable level.
I can see you don't over generalize or stereotype people!
In India, kids are taught to be respectful to elders/seniors, and it is often taken to an extreme, and one is not encouraged to present a different point of view to them most of the times. You can also add to this mix the earlier generation's 'yes-sir-ism' to Britishers and people in power, and it would give you an idea why most Indians you have worked with, do not tend to speak up much.
I have commented about this earlier on HN, things are changing and changing fast here. The next generation of Indians, is far more open, direct and confident. Globalisation after 1991 and more exposure to 'western' ideas, has had a very positive effect, both economically and culturally.
There are more entrepreneurial and enterprising people in India than you think...
i have worked with 120 or more indian programmers over the course of many jobs and several years, in bangalore, kochi, and chennai. i have met a few that were technically solid, self-directed, and would give me hell for my code, or the code of another american on my team. i'd have been happy to hire these folks if they'd walked off the street into my office at the market rates. i've invited a few to come visit when they get to the states. some i'd even call friends. by and large, it was through these individuals explaining the mindset of their coworkers that i came to understand it. i didn't drop in, make a bunch of judgements and bail. i asked the people who were driven why the other people on their team weren't. they made the generalizations, i just observed their correctness.
in observation, those driven and enterprising developers are the exception, and the exception by a wide margin. i can't speak to Absolute Truth here, and maybe there's a secret society of programming ninjas in india that few people have ever heard of or interacted with, but i have to lean on my own observations, my conversations with indian developers over half a decade, and the observations of a wide swath of software development community.
Asians, in particular, are good at acting deferentially, particularly in front of foreigners. The most extreme case are the Japanese - they are the easiest to underestimate race in the world (and the West did underestimate them). As you move west from Japan, you can progressively reduce the deference factor, crank up the self-confidence factor, until you arrive in California, perhaps the most self-confident place in the world. That deference - self-confidence dial works to a very good first approximation :)
being in this field for the last 2 years, i completely agree to this. But, as someone else has pointed out, this has to do with the bad management practices followed. Also,kids directly from college expect a spoon feeding kind of situation and are afraid to take decisions of their own.
If only US workers would like to relocate to a cheaper place it would be a killer. Perhaps a Silicon Valley branch on a beach paradise in Mexico or Central America? Some place where half a US salary gives a significantly better life. Just a thought.
This is why no one worries about top-shelf product development jobs being "outsourced" for the most part. If developer talent was fungible in this way, we'd have seen rampant "outsourcing" to St. Louis and Pittsburgh long before it became popular in Bangalore or Beijing. The jobs at risk of being moved offshore are those doing lower-level "IT" jobs. These are the people who were complaining a decade ago about being replaced by contractors -- it's the same principle.
Assuming that it contains enough of the right people & supporting services to build the right complexes, why not? How many of the bay area's mojo comes from people moving to the bay area for its mojo? They could go somewhere else.
Keeping it should be easier then building it.
But overall, the tech complex shouldn't be a whole lot more difficult to move then any other complex. I'd say moving the manufacturing complexes out of China would be harder.
A tech company can be anywhere really, as long as they have the people. the complex can scale down to one & still be useful. It's more useful as a complex, but still quite useful without it.
pg has some stuff on how to build a silicon valley (Take one cup of nerd, stir in a generous sprinkling of rich people & nerds, nice weather etc. etc..
I wonder how much of it is easier then he reckons. Surely there is some bias. The Auto manufacturing centres of US or Germany probably thought that they were impossible to move.
Why not start a startup on a SE Asian island? Could live comfortably on 15k per year (including home visits). Assuming you bring your people with you & they are willing to be paid in lifestyle. It might be appealing to certain people. Nice beaches.
Well phrased.
The big problem I see with outsourcing is that it's difficult to cultivate passion in a remote team, and passion is what leads to attention to detail, refactoring, and all of the other things that make high quality software.
This is what people miss when they say, "open source teams work from different countries all the time and produce high quality software, how is outsourcing so different?"
These are indeed boring. I've given myself a challenge of automating the living shit out of them:
* First time I learnt bash was to work out how to make server documentation with it (I'd built some shell functions to handle headings, tables, columns, etc.
* First time I learnt xPath was to fix 60,000 GECOS fields of a customers Linux hosts when the customer refused to give us programmatic access to the corporate directory.
You'll be appreciated for the labor you save (if not, leave).
Then go off, find some more interesting problem, and work on that. With good managers, they'll pick up you're a 'self starter'.