Most US software companies once considered India as
a low-cost programming resource, a perception which has seen a rapid decline. Most MNCs
who set up shop in India go there for quality software development talent and not merely
cheap resources.While there is a lot of noise about why the industry should move up the
value chain, there does not seem to be a clear consensus on what needs to be done to move
up.
And while the debate goes on, most of the
bottomline continues to flow out of professional (body-shopping) services.
Core Competencies
The first logical step that Indian software developers should consider is to establish
where their core companies lie and try to progress in those. It is widely accepted that
Indian software companies have established themselves as:
software product development process
(out-sourcing).
While the first three areas are strategic
areas for moving up the value chain, the fourth one is merely a proposition to expand your
current capabilities. Ideally, the fourth option should provide for improving the state of
affairs in the first three areas.
Consulting Partners
A good project manager normally looks at the problem at hand and makes sure that the
deliverables are as per the agreed specifications-delivered in time, within budget, and
within the resources available. However, there is hardly any strategic input to the client
in terms of the IT direction, or architecting the IT infrastructure of the client
organization. These inputs today come from the consulting organization who have the ''big
picture'' of the overall information requirements of the client organization. The Indian
software developer is merely told that he has to run a project, with clear boundaries
being defined by the consulting organization. The bigger bucks are mostly cornered by the
consulting organization. Though a few Indian software companies have tried to position
good management talent in this area, in most cases this works more as a client
relationship manager, rather than a client consulting partner. Today''s good project
managers should evolve progressively into tomorrow''s consulting partners. When Indian
software developers evolve into a client partner, the long-term benefits of this
relationship with the client are obvious-increased business and continuous downstream
project flow. However, this would work only when there is a long-term view to the process
and a proper balance of priorities between the client and the software developer
requirements. It is easy to get into the project-pushing mode when one works for a
software developer. However, the risk in this approach is that loss of a client would
tremendously impact the software developer. Indian software developers should try and
adopt this model, given the financial resources that are at their disposal currently and
the long-term benefits of the model.
Training Partners
The low-cost quality training option has not been well framed and sold to the prospective
customers in the West. Most training shops in India merely churn out
programmers/operators, and though there are tall claims about running the world''s largest
training infrastructure, their capability in training quality analysts and functional and
technology specialists is by far suspect. We still hear a lot of horror stories about how
the training shops churn out ERP specialists in a few months. Indian software trainers
have a better reputation in developer training than end-user training.
The task before the training managers of
the software industry is to establish that they can provide enterprise-level training.
This would mean framing an enterprise-level training strategy for the client organization,
and providing training to corporate developers for the complete software
development/implementation/maintenance life-cycle. This requires a consulting mindset in
the trainer, which is not easy to find. Like the earlier recommendation, the benefits of
such a strategy are multifold increased business and continuous training projects (the IT
industry ensures that the tools change every six months or so, and most large
organizations have to deploy new technology in some area or the other). In the absence of
such a strategy, the Indian trainer runs into the problem of getting typecasted. He is
merely treated as a specialist-training provider for one particular area of software
design or development. However, providing such a broad array of training options to the
client organization requires investment on latest technologies/methods, with a potential
threat of not finding returns in some areas.
Indian software training companies should
also try to provide full-fledged residential courses for their overseas client on the
outskirts of Indian software cities. The West, by now, knows that the Indian metros are
terribly congested and crowded. This would be an attractive option for most software
developers in the West, as it would provide a low-cost quality option with an opportunity
to explore a country they have never visited. However, the challenge would be to provide
an acceptable environment in terms of facilities such as telecom, Internet, computing, and
recreational facilities.
Product Development
This is by far the toughest option. The product development option from India has always
sent mixed signals. Indian software developers have not still produced software products
that are worth remembering. While some software developers have attempted, they have had
little success. However, there are many software developers silently cooperating and
developing products for their overseas clients (mostly software developers). The
architecting, definition, and management of this product development process is still not
in Indian hands. They are also quite happy, because the inherent high risks of the process
are also not with them. One of the main reasons for Indian developers shying away from
product development is the lack of customer reach, a large domestic market, and the
prohibitively high cost of software marketing. Though the returns are the highest for the
software developers, who build product software, the present state of the product software
scene in the West is also not very encouraging. There are very few software companies,
which have made it big in recent times. Going by the fate of companies such as Lotus,
Netscape, or Borland, this is a very high-risk area. Most software entrepreneurs will have
to build companies and great products only to reach a threshold level where they are ready
for a takeover by a larger software house.
However, the Internet has changed all that.
It has created a level playing field for small developers, regardless of where they are
located. It has proved to be a great medium for disseminating information at a low cost,
not to mention the benefits of electronic software distribution. The largest software
companies are product software companies. The single largest benefit of product software
development is that a large customer base shares the costs of software development, and
the potential to make a big profit is enormous. While most of the cost elements in the IT
industry have fallen steadily, the cost of software development has constantly been on the
increase. While time-to-market pressures are mounting, building software products is
getting increasingly complex.
The biggest problem in this area is,
however, not the economics. It is the absence of a product development mindset in most
Indian developers. This process requires creation of product champions and architects
rather than mere programmers. The product development process of a successful product goes
beyond the first-few versions. It is not a trivial task to maintain a highly-motivated
software development team, to work on a same product line in the fast-changing world of
software. For example, Alan Cooper, the creator of VisualBasic, or David Litwack, the
creator of PowerBuilder, are gurus in their own right. This would require building not
merely a sense of ownership in the product development team, but true ownership in the
enterprise''s profit. Testing quality product software is getting increasingly complex. The
additional overheads of extensive beta testing, which is today an accepted practice, add
to the product development timescales and costs. Despite all these issues, the Indian
software developer is capable of producing a world-class product. It is just the fact that
he simply does not want to swim against the stream. There are many options in front of an
Indian software developer-and with varying degrees of difficulty. And with the dollars
under their belt, he never would have a better time to do it.
RAVI NATARAJAN
is Group Systems Manager,
AI-Tayer Group Dubai, UAE.