Indian software companies

Software companies in India understand that quality is the key discriminator for their success oversea. They also know that the quality software is depending on the quality of the process that creates the software so they pay a lot of attention to their processes. That is probably the reason why many select the Capability Maturity Model Integration (CMMI) as their quality standard. My friend Chandra told me that since CMMI Level 5 is the highest achievement possible, most companies did not want to have an appraisal until they are sure that they will achieve at least a CMMI Level 3 or better. The issue here is the “Scope inflation” that many companies advertised to get attention of customers. For example, if a small group in the company achieves CMMI level 5 then they claim the whole company achieves CMMI level 5. Because of this “Hype”, I am NOT surprised to find that so many companies have achieved CMMI level 5, ISO 9000, Six Sigma, and whatever standards that they can claimed. When I visited these companies, they proudly showed me collection of impressive documents as required by the CMMI, many look “Brand new”. When I asked software developers about this, many laughed and confirmed that those documents were for show, but NOT used. When I told them that there is no requirement for such standard for doing business globally, they were surprised. They told me that they were under the impression that they need at least CMMI Level 3 to do business in the U.S. I told them that quality means meeting customers' requirements, within costs and schedule with fewer defects. No company that I know requires suppliers to have CMMI level 5 or Six sigma as condition to do business. I also told them that “false advertising” may hurt not help as customers may have higher expectation and if they underperform, it would be bad for their businesses.

Despite this issue, I found that most companies do follow strict quality standards of their own as they use a variety of software development models such as waterfall, spiral, agile, and rapid application development. Many companies have in-house documents and manuals stored on their intranets so their people can access and learn things quickly. I was also impressed with the way they collect data and use metrics to manage projects. My friend Chandra told me that the software industry's approach to managing projects has improved significantly based on their experiences with global customers. Today many are using quantitative process management because metrics drive all development activities. Project managers involve with project teams early and manage their projects according to project plans, quality plans, and configuration management plans. Many define their project's process using the ETVX model with entry criteria, task identification, verification methods, and exit criteria for each process element. Senior managers monitor projects status with in-house development tools on a monthly basis and actions are taken immediately if problem happens. Comparing the engineering disciplines between India companies and other places that I have visited, I have to note that I was very impressed with both the managers and developers.

Even there is a critical shortage of skilled developers, Indian software companies are still having strict criteria for hiring. Only the top of the class students are selected and they have to pass several technical tests before they get hired. After that, they still have to undergo several months of training before they can work in projects. Chandra explained: “There is a big gap between academic training at state universities and what the industry needs. To graduate, students must pass state exams so many “cram” for exams and memorize things rather than learning how to apply their knowledge. The result is many graduates, almost 60% of them do NOT have the skills to work in the industry. That is why even our universities graduate almost half million engineers per year, there is still a critical shortage of qualified workers. This is why most graduates must spend several months in additional trainings which is very expensive to company and that is why many companies are open their own universities to ensure that their students have the right skills. In the past, most companies hired computer science graduates but recently many prefer software engineers as they are moving more into higher value works of system management, requirements analysis, architect and design and outsource code and test. With our tremendous success in outsourcing, we can move to better positions and eventually will get into total systems development and management. There is not much profit in coding or testing so we outsource them to other countries, our people should be working on higher profits works”.

However, there is another issue with well-trained skilled developers as the demand is so high, many frequently change jobs for better salaries. The attrition rate in India varied between 15 percent to 30 percent. Today, many skilled developers also want to emigrate to the United States or Europe for better positions as many companies there are willing to make arrangements for work visa. Indian software companies are countering this problem by expanding more oversea to create opportunities for their developers to work abroad. Chandra told me: “With our success, many Indian companies are acquiring companies in the U.S and Europe to have a firm hold to the local market and sending their developers to work there. Whether their people want to work for Indian companies oversea or change jobs to local U.S or European companies is still the question”.

As the shortage of skilled developers continues and as companies have to raise salaries to get workers to meet high demands, the “Indian price advantage” will probably change within the next few years. There are countries hoping to replace India as “The next cheaper destination” but Chandra told me: “There will always be company who look for cheaper labors but the rule has changed as more companies are now looking for knowledge and skills and no longer care about cheap labors anymore. There is a critical shortage of “knowledge workers” all over the world and our top software companies who take pride in their works hope to compete strictly on the basis of skills, quality and values. Someday, people will NOT consider Indian engineers as “Cheap Labors” but “Highly Skilled Workers”.

Despite the financial crisis, India's software export continue to increase over the past several years. I found that most Indian software companies placed great value in meeting their customers' needs and providing the highest quality services possible. Of course, language is not a problem since English is the language of business in India. I also noticed a very confident and optimistic attitude about their future in every places and people that I met. Chandra told me: “We know that we are on the right course, we know that software is the right direction, and we know that sooner or later we will be an IT superpower”.

Sources

  • Blogs of Prof. John Vu, Carnegie Mellon University

You may like