Pavan Muzumdar's company is based in a small town in Michigan. But much of the company's development work these days takes place halfway around the world, in Jaipur, India. "There's a small cost advantage--we pay maybe $10-$12 an hour for contract developers, with no overhead for benefits," says Muzumdar. "But it's the availability of talent, especially for short-term jobs, that makes offshore development attractive. You can actually throw bodies at a project and come out ahead."
Muzumdar concedes that he's heard "horror stories that would make your hair stand on end" about out-of-control offshore projects. Usually, he notes, failures occur for the same reasons that in-house projects get in trouble--management neglect, haphazard development procedures, and poor communication. If a company already has "a strong engineering process," says Muzumdar, offshore development is likely to be very successful.
Some key success factors:
* Adequate scope: Outsourcing little jobs is "very tricky," Muzumdar points out. "If you have only three people working offshore, a lot of the project management overhead you have to put in place here overwhelms the job. You need a fairly large project to leverage the offshore economies of scale."
* A detailed functional spec: "Most software projects are defined in very high-level terms," Muzumdar points out, but dealing with remote developers requires "clear, precise specifications followed by a development process that converts these requirements into developed code."
* A change-management process: In addition to a detailed spec, says Muzumdar, it's also important to manage changes as the spec evolves. "Developing software isn't like manufacturing a car offshore," he says. "It's an iterative process: You go back to customers to see what they think, and then change the design based on what they say."
* A single technical liaison: Inevitably, the offshore team will ask questions about small details that aren't in a formal spec--"the little things that developers talk about over coffee," says Muzumdar. To maintain consistency, it helps to put a single product designer in charge of answering all technical questions. "Also, it almost never works to have end users talk directly to the offshore team."
* Mutual trust: "This is probably the most important factor," says Muzumdar. A U.S. client has to reach a level of comfort about giving up day-to-day control of development, he says; just as important, the offshore team has to trust the U.S. client enough to disclose problems and schedule slippages. "In our case, I got to know the team we use on a personal visit to India. The founders are all from a premier engineering institution and have experience in software development in the U.S.," he says. "I wouldn't feel the same way if I'd just posted a job on a Web site somewhere."
Pavan Muzumdar, chief operating officer, MV Software, 651 N. Rochester Rd., Clawson, Mich. 48017; 248/583-4110. E-mail: pmuzumdar@mvsoftware.com.




Mobile Edition
Print
Get the Mag
Weekly Updates