In the time I've been here in India I've met a number of people working at or running service companies. The most common engagement models for these companies I have seen are:
- fixed bid projects
- fixed price per developer (no transparency)
- cost plus (full transparency, hiring company can negotiate directly with the employees, the service company takes an HR fee for doing the search, plus a monthly facilities fee, plus some margin)
Of these I generally push for the cost plus model for the obvious benefits transparency brings, and the employees in India feel more like first class citizens in the companies they are ultimately working for. It also tends to be expensive as dealing with less expensive / more junior developers requires time, sensitivity and hand holding, all of which are hard to do across 11 time zones and 12,000 miles.
With fixed bid projects, often much of the work is done by junior engineers hidden behind someone who communicates well and interfaces to the client. There can be time & cost benefits to this, but because the process is opaque, the back end to these types of operations tends to shuffle a bit, which can make consistency problematic.
Amitabh Jain runs a small software service company that approaches this differently. Oriented around building teams for his clients, he initially hires junior developers and then mentors them as a group in the technologies and processes of the client. It takes some time for the teams to become productive, and Amitabh reflects this in an escalating payment structure which starts at a few hundred dollars / month / engineer and grows each month such that after a year the client is paying market rates.
I like this model because it reflects the current conditions of the labor pool,
it gives Amitabh the chance to add significant value by mentoring the individuals and teams involved, and the hiring companies benefit from having cohesive teams at a lower cost and with less risk than if they tried to hire more senior people individually directly. The downside is time, its definitely more about capacity building than executing a project quickly.