In my last column, I identified four primary areas where things went wrong when I first tried to start a software development group in India: supervision, team integration, training, and hiring. (To read more about these experiences, read "Lessons Learned about Starting a Development Group in India," Part 1 and Part 2 ).
The New Plan
The general outline of our revised plan is as follows: Create a liaison position here in the United States, who is responsible for the initial training of the offshore team in India. This person travels to India and participates in the hiring process. (Our goal the second time around was to hire four or five software engineers, assuming that we would be able to retain three or four).
Our liaison then stays in India for three months as the people who come onboard acquire US training visas, which takes about four to six weeks. Afterward, the entire team travels to the states for a combination of in-house and third-party training. Once that training is complete, the liaison travels with the team back to India, where he stays for six months to mentor the team as they work through their first project. Finally, he travels back to the states, where his primary responsibility becomes acting as the technical and business interface between the two development teams.
I've discovered several advantages with this plan. First, the liaison is largely dedicated to making sure that the needs of the team in India are being met by the team in the US. Second, this person works with the team for more than a year to ensure that the best practices established in the United States are followed offshore and that the team doesn't drift off the rails. What's most important is that the liaison has the technical, domain, and process experience necessary to mentor the team.
Prior to our trip to India, we reviewed several resumes and conducted several phone interviews, which was very difficult for several reasons. Language and accent barriers made communication difficult. This was compounded by phone problems, as there is often a pronounced delay or echo in phone calls to India. We attempted to improve this by having one of our engineers in India in the room with the interviewees to help smooth over communication difficulties, which had mixed results.
Behaviors of the Indian Job Market
We arrived in India in early August. This is the monsoon season, and I fully expected continuous torrential downpours. Instead, I was created by a climate like San Diego, with nightly rain showers. The streets were alive with a mix of motorized rickshaws, small motorcycles with a family of four aboard, buses and cars, mixed with the occasional cow. All honk their horns continuously (except maybe the cow), and managed to fit twice as much traffic in half the space as an American city.
When we reached our office in Bangalore, there was a large stack of new resumes for us to review. I was immediately struck by the amount of "job-hopping" that was going on amongst the applicants. The average stay in a job was a year or less. Repeated durations of six or even three months were not uncommon. Retention was going to be a serious problem, especially when it takes up to six months to train someone in all the specialized technology our products use.
I met with the engineering manager and discussed the situation. We decided to attack this problem in two ways: first, we would pay our personnel a salary equivalent to the top end of the local wage scale. Second,