hi everyone, thought i'd chime in with my thoughts and experiences.
historically people learn how to program on the job. when people stayed with a job for many years there was time for jr. engineers to establish mentorship relationships with more senior people on their teams. globally work culture has evolved such that people bounce much more quickly between jobs. as a result it seems senior people and management have much less tolerance "wasting" senior peoples time answering jr. questions. this is exacerbated in India where there is often a desire to scale dev teams quickly. a danger is that without a supportive environment, i can imagine people working for years in a variety of outsourced development positions without experienceing a functional work cutlure that would lead to developing good work habits / skills / practices. when i talk with friends interested in working with developers here, I strongly encourage them to hire people and establish a real relationship with them in the same way they would if the employees were on-shore. This contrasts with the fixed bid model which I feel is too 'us - them'. i've been a part of two projects over here. one was an outsourced gig where the engineers at the usa company weren't interested in the work they gave us, didn't want to waste their time explaining it to us, and everyone had a crappy experience. in contrast for almost the last year i've been working in a startup in Pune where we have a cool team and work culture similar to that in California. Issues come up, but we're all in it together and they get worked out. *** possibly as a tangential thread - Im really interested in ideas people have for how to help recent graduates in India develop their skills such that they can integrate in with a high end team more successfully. some thoughts I had were: encourage people to contribute to high profile open source projects. to learn about working in distributed development environments with strict development processes. encourage people to develop their online profile what comes up when someone types your name into google is essentially your CV. make sure its good. cheers, freeman http://wheresfreeman.blogspot.com
