Financial Daily from THE HINDU group of publications
Monday, Jan 03, 2005

eWorld
Features
Stocks
Port Info
Archives

Group Sites

eWorld - Software
Info-Tech - Human Resources


Step out of the line

Paromita Pain

Okay, you're doing a great job developing software applications. But five years from now, will you still top recruiters' list? They could be looking for someone with that something more...

THIS is a job opening just readymade for you. It offers the keen edge of challenge, the creative satisfaction — and a pay packet that feels real heavy in your pocket. Are you ready for it? Will you make it to the `wanted' list?'

All this may sound like some dream advertisement, but it's made of the stuff of reality. The opening we are talking of is the post of `software product developer' — for the home market.

And the timing couldn't be any better, say industry watchers.

In the next few years, there's going to be an exploding need for Indian software engineers willing to graduate — from software applications development to product development.

Whoa, hold it right there! What is the difference between developing a software product and an application, you might ask. Don't software guys all come in one package — bleary-eyed blokes who can talk of nothing but code?

To put things in perspective, let's start at the very beginning — what makes software product development different from application development, and what skills software guys need for these tasks.

Different strokes

Gowri Subramanian, CEO of the Chennai-based Aspire Systems, says, "An application is `custom-built' for a single company. But a product is `generic.' It caters to the demands of a wide variety of users. However, each user needs to be able to use the product in a way that suits him . If the number of users in a company increases manifold in time, the product needs to be able to handle that - scalability is the issue here. If newer features are to be incorporated at a later stage, the framework at the beginning needs to be solid." After all, if you need to add another floor to your house, it needs to have had strong foundations at the time of construction.

As opposed to this, an application just needs to work, he says.

Sharad Sharma, General Manager, India, Vice-President, Product Operations, Veritas Software India Pvt Ltd, highlights the types of product development activities.

"They range from developing add-on and enhancements, an addition to a product family, a next generation product, or a new core product. The level of challenge is the highest when developing a new core product."

Unlike applications, product development requires abstracting broader market trends from interactions with a few sophisticated customers. Usually, product development is also more technology-intensive, he says.

"Of late, it has had to focus a lot on usability, basically hiding all the complexity under an `easy to use' interface," he says.

"All this makes the front-end part of product development — such as product management, architecting and design — extremely critical. The core challenges here are not very different from those in application development."

The bottom line is that the cost of failure in product development is much higher than in application development. By its very nature, most of the investment in product development happens upfront. So, if one gets the product concept and architecture wrong, it's a washout of investment.

Even where one is extending existing products, the risks are high. Poor product development can easily put large revenue streams at risk as it gives competitors an opening. Praveen Kankariya, CEO, Impetus Technologies, believes that, "in developing a product, one has to envision and design the product from ground up, taking into consideration the `look-and-feel' and usability of the product, as well as its functionality."

Hence the development team has to be much more creative, foresighted and experimentative, he says. The design and architecture must be able to handle long-term and future requirement possibilities.

Jobs up for grabs

Prophecies for India's need for engineers by 2008 are at an optimistic high as industry leaders predict unprecedented growth.

So far, most of product development in India has been for the global market. Some of it is project outsourcing; some is contracted product development — such as the VLSI design, purchase of technology components like network protocol stacks or a `lab-on-hire' model like Wipro's Global R&D.

It could also be owned or captive development centres, for instance Veritas, which has 28 per cent of its R&D in India and has 32 per cent of patent applications coming from this team.

All these segments are growing. Sharma says, "One new trend is that a lot of venture companies are leveraging India for their product development. In 2004, there is likely to be about $4-billion venture investment in software companies." Typically, on the balance, about 50 per cent of this new capital is spent on product engineering activities. Although India gets a very low share of this engineering investment today, "my personal prediction is that India will get about 50 per cent of this engineering budget by 2008," he says. Hence, "this will mean that about $1 billion of new product engineering will be happening here in the venture start-up segment. In terms of headcounts this will translate into 20,000 new product development engineers."

Add to that mix, the burgeoning domestic product development market, and product development already going on for established companies, and "we are looking at 40,000-50,000 new product development engineers by 2008 ," he says.

Rajul Garg, COO and Vice-President, Engineering, Induslogic, says, "The overall market for product development engineers will continue to grow at more than 100 per cent, year on year, from now."

Have you got what it takes?

That there is so much demand for software product developers is great news, but what are the skill-sets our engineers would need to acquire so they can make the most of the opportunity?

Building a `well-engineered' product requires a much higher level of skills than just building an application that needs to work.

Typically, customers for application development look at and test the screens of the application to know whether it works.

But product customers look into the code base to see how it meets the attributes of scalability, robustness, customisability and architecture adherence. Hence, the engineers working on product development need to have a much higher order of skills.

"That's why," Subramanium elaborates, "product development engineers have a higher challenge in front of them. They cannot just slap together some screens and somehow make them work through brute force".

"A product is a vast endeavour and hundreds of engineers could be building further on the same code base, many years from now. A product that is not well-engineered will fail, even if it works today. Hence, the prime requirement for product engineers is an `engineering mindset' — not just wanting to get things done, but doing them in the right manner."

He stresses that "engineers at the junior level must be able to develop codes following highly-advanced architectural guidelines and those at the senior level must be able to develop a technical architecture that will allow products to scale well into the future and meet needs that arise over time."

Kankariya believes that product development is a scientific art, so besides technical skills, the nature of the work expects an individual to be able to handle the rather nebulous product development environment.

A product development engineer must have a very strong hold over technology fundamentals, and also must continuously upgrade his technical know-how.

It is imperative to understand and appreciate the product life cycle and its various elements — given that product-development projects differ from custom-application development projects in their conception, design and implementation, he says.

Rajul Garg feels application development is more centred around risk management and getting user acceptance at the end, whereas in product development, the end of one phase feeds the next. Therefore hard technical skills in a domain, combined with understanding of mass-market requirements, are essential for product development.

Training gives the edge

Subramanium feels, "Product development is more of a `technical endeavour' as opposed to an application, which is essentially a business endeavour where technology plays a supporting role for applications."

Specifically, this means progressively advanced levels of training that allow engineers to become technical architects over time and operate at the state-of-the-art level in their chosen technology area.

He elaborates: "Our in-house training mostly involves training on-the-job. Unless someone practically goes through the rigour of product development, they are unlikely to get the nuances of a particular architecture."

"We associate most of our fresh hires directly with a product team for an initial duration of three months where they sit and work along with other engineers. This exposes them to the day-to-day challenges of developing a product. After three months, they are typically attached as junior engineers to the same product team or a different team, based on needs," he says.

Different companies offer different training facilities. Software product development maturity model is an initiative to provide a standard for software development to all members in the organisation. Drawn from the company's contributions to hundreds of releases of over 30 different products, it identifies and creates a continuously evolving suite of best practices that address all horizontal and infrastructure design issues.

Significant training is necessary to handle product development situations and the kind of pressures they entail.

Kankariya asserts this is what differentiates a mature product development engineer from a normal software development professional. And it is a critical element of the product development team. Garg says, "We have in-house training and an engineer does about 15 days of training a year."

Recruitment pastures

The IITs, Chennai, Mumbai, Kanpur and Kharagpur, IT-BHU, BITS Pilani, PEC Chandigarh are the greenest on the recruiter list in this area.

Aspire Systems says it targets colleges such as Satyabama College of Engineering, St. Joseph's, Pondicherry Engineering College, and SRM College of Engineering. Future plans include tapping the IITs and Anna University as well.

Impetus Technologies prefers premier engineering colleges to recruit frehers. Kankariya assumes that in another four-five years' time, about 10-15 per cent of India's software engineers would be involved in product development. Slowly, but surely, product development is making its mark in the Indian software scene.

paromita@thehindu.co.in

Article E-Mail :: Comment :: Syndication :: Printer Friendly Page

Stories in this Section
Step out of the line


Small today, big tomorrow
Teaming up, for different ends
After the boot
Catch me if...
`Know what I am saying?'
Age defying
Same difference?
Changing CD Writer software
Removing quick launches
Installing Flash 5
Quiz
Training at the wrong time and place


The Hindu Group: Home | About Us | Copyright | Archives | Contacts | Subscription
Group Sites: The Hindu | Business Line | The Sportstar | Frontline | The Hindu eBooks | The Hindu Images | Home |

Copyright © 2005, The Hindu Business Line. Republication or redissemination of the contents of this screen are expressly prohibited without the written consent of The Hindu Business Line