Quality testing is very important. “Earlier, there were just a few hundred lines of code and now there are millions of lines of code. As embedded systems become more and more complex, it increases the code size, which is a big challenge. When you start controlling safety-critical applications, the quality of code becomes very important,” says Oshana.
Oshana adds, “One of the problems with software engineering is that the quality of the embedded software really has not improved over the years. We have not solved this problem even when the code size has become millions of lines.”
Experience at least three generations of the same product
“In India, it is very common to see the engineers change their jobs and companies every two years, the reason mainly being greener pastures on the other side. But if they keep on changing jobs, how are they going to learn about the organisation or its technology and gain expertise in that? They are not there long enough to learn something completely,” says Stringham.
Stringham shares an interesting experience, “When at HP, we were trying to move some of the code to an outsourcing company in India. The engineer in the US said that he had trained four engineers, but they left after the training was complete. So the US engineer in that project is still doing the same job as he can’t find someone here to stay in the job. It a mobile society, it may be difficult. But to really know the embedded systems, to really know safety-critical systems like pacemaker, you need to be in the job for several years to gain expertise.”
There is a weird belief in India and many other countries that if you are not a manager or a senior member in the organisation in five years of your job, you are not a good performer. But this may not be the correct way to gain experience and expertise. Newer technologies are shortening the life-cycle of embedded products.
Stringham believes, “The life-cycle of a technology or product could be up to three years. Take the example of Apple’s iPhone. You will not see anyone buying iPhone of the first generation or even second when the fourth-generation is already in the market. The engineer should see and experience designs of at least three generations of the same product in order to become fairly knowledgeable in that domain.” “In fields like defence, the number of years are longer, the projects run longer. So it really is consumer-driven,” Oshana adds.
Summing it all…
India has become an expert in software and now is the time to tap another upcoming and interesting field— embedded. Considering the multi-faceted structure of the embedded world, an engineer definitely needs to be an all-rounder. But apart from being ‘jack of all,’ he needs to be ‘master of some’ (an expert in some domain)!
The author is a senior technology journalist at EFY