Most of the electronic devices around us contain a processor with some embedded software. Unlike desktop computers, which can be programmed to do any general-purpose task, these embedded systems do highly focused and specific jobs.
The market for embedded systems is quite big. Increasing sales of consumer electronics goods, telecom/ networking market and growth in the use of portable/wireless products globally are driving the growth of the semiconductor design industry.
If you have a creative and innovative bent of mind, a career in embedded systems can be extremely rewarding. The industry offers a variety of jobs in the areas of chip design, applications engineering, product and test engineering, systems design and embedded software development. The positions in these job families range from the role of a technical individual contributor to technical lead position to an engineering management role.
Lots of embedded systems work— in particular, embedded software development—is being done in India. The embedded software industry is expanding as third-party service providers are moving up the value chain. Captives largely work on the hardware abstraction layer and the device driver layer. While many captives outsource application-related work to third-party service providers and Indian design companies to shorten their time-to-market, others prefer to grow their domain-specific embedded application expertise in-house.
Embedded system fundamentals
An embedded system consists of hardware and software. When chips are built into systems and software is loaded on that for a particular functionality, it becomes an embedded system. VLSI is used to design integrated circuits by combining millions and billions of transistors into a single chip, and involves various design activities ranging from specification to tape-out of the chip. VLSI results in reduced sizes and costs for embedded systems. Instead of using separate chips for the processor, memory and associate digital circuitry, one can build a single integrated circuit that contains the complete functionality of the embedded system.
While the embedded system sits on top of everything, VLSI is the core part of an embedded system as the whole system depends on VLSI design.
Embedded engineers write the software that controls the VLSI chips. Embedded software can be any code which interacts with the hardware layer, ranging from the hardware abstraction layer, device drivers, kernel programming to application programming.
To take up embedded software development as career, you need to have a working knowledge of C, C++ and Java, with some exposure to application software development. If you have already done some programming for an embedded system, you can expand your horizons by broadening your skill sets. Embedded software is being developed using a variety of embedded and real-time operating systems, such as embedded NT, Windows CE and RTLinux. In addition, a variety of development tools and IDEs for C, C++ and Java are available. You need to learn application development in these various environments.
To be a successful programmer, you need a good understanding of design alternatives—how to choose a processor, an operating system, a programming language so that you can develop cost-effective, reliable embedded software with minimal development time. As many of the systems become network enabled, a working knowledge of network programming is also important. Also, you need to be aware of the diversity of application areas and the specific requirements of each.
As a hardware/board designer, you could work on reference board design, new board design, and board design derivatives and modifications on existing boards. Reference boards are used to validate the capabilities of designed silicon chips.
The embedded hardware designer is responsible for hardware design schematic , PCB layout, BOM creation, hardware board debugging and testing, and system integration testing. Desired skills are hardware design using 8-/16-/32-bit microcontrollers, microprocessor-based systems, design of medium-frequency boards, hardware design of analogue , mixed signal and digital, and understanding/ implementation of the EMI and EMC concepts to hardware design.
3.5 million jobs by 2015, but talent missing
The Indian semiconductor design industry, comprising very large-scale integrated (VLSI) design, board design and embedded software companies, has set its footprints across the country.
According to an ISA-Ernst & Young report of 2011, this industry was about $6.5 billion in 2009 and is expected to log a compound annual growth rate of 17.3 per cent to reach $10.6 billion in 2012.
The report also suggests that the industry promises 3.5 million jobs by 2015. But unfortunately, the industry is grappling with the problem of talent shortage.
Embedded software segment now offers more high-value activities relating to middleware, driver design and associated applications. The main reason for increased adoption of embedded software is its use by electronics companies for increased device functionality, reduced time-to-market and reduction in costs.
Raw talent: key challenge for companies
One of the basic reasons behind the shortage of talent in the country is the significant industry academia divide.
Several engineering universities in the country are far from understanding the requirements of the industry and train the students accordingly. This has resulted into two extremes, where on one hand the industry needs talent and on the other hand there is an abundance of engineers who have not been trained in necessary skills. Industry veterans term these engineers as ‘raw talent’ and training to make them productive is a key challenge for them.
Companies face a tough time trying to recruit the right set of people. There are certain portions in the entire embedded ecosystem where generic electronics knowledge will help. Hardware design is one example. But then there are certain other segments, which require a good experience in device driver, software amplification, etc. The industry is missing this talent big time.
Desired qualifications and skillset
The minimum requirement is a bachelor’s/ master’s degree in engineering with specialisation in electronics and electrical or computer science. But it is preferable for a candidate to have some hardware integration experience, good software coding skills and the ability to deal with and develop algorithms to solve problems.
Today, universities are offering special streams like software design and engineering, microelectronics and automotive embedded system. It is a great idea to undergo such a course as it will provide the requisite industry knowledge in the field you want to pursue a career.
Various certificate courses too are available to hone your skills. By participating in short-term courses, candidates can better handle projects independently, thus enabling companies to induct new staff in a project with minimal domain-specific training.
In general, familiarisation with the following subjects is beneficial: VLSI technology, embedded systems, design, testing and verification of VLSI circuits, digital system design using VHDL, design of analogue and mixed mode VLSI circuits, real-time embedded systems, low-power VLSI design, computer-aided design tools for VLSI design, algorithms for VLSI design automation, design of VLSI systems, advanced embedded system design and VLSI sub-system design.
One important thing to remember though, is that you should not think about yourself as only a software guy or a hardware guy. Rather, see yourself as more of a systems person. You should be versatile enough to be able to take risks and challenges when troubleshooting a problem at the board moving between hardware and software areas.
Career growth over time
As you gain experience and knowledge, you will be required to work more independently making decisions, developing designs and solving problems. With further experience, you may become a technical specialist or supervisor in a team of engineers or technicians. Eventually, you may become an engineering manager or move into other managerial or completely technical domain.
The market is very dynamic with competition looming in at every stage. Thus as an engineer, you need to ensure that the learning matrix never falls and you are up-to-date with new technologies that are being introduced.
As a fresher you might typecast yourself into a certain role. Later on, this boundary has to blur totally. You have to start understanding both hardware and software, device drivers, register mapping and application software development.
Also, as embedded system is part of many applications, you have to figure out the domain knowledge. For example, if you are working on embedded systems for telecom applications, you should be able to find out the user experience and with better creativity decide which layout or colour will look better. You start becoming a system architect finally.
Automotive, telecom and security are the industries where a lot of embedded work is going on. Industrial and medical applications, which were lagging behind, are also making significant improvements. As a professional, you can switch from one vertical to another as you gain knowledge of how an embedded system works. One added advantage here will be knowing the particular vertical requirements and applying the related skillset.
Salaries are based on individual skillset and qualifications. An engineer starting his career with a bachelor’s degree can expect anything between Rs. 400,000 and Rs. 700,000 per annum. Many companies give higher salaries to engineers with M.Tech or Ph.D based on continual performance, knowledge and competence. Unlike many other industries, the embedded industry has seen quite a steep salary growth across levels and it still continues.
Some good institutions to study
IITs, NITs, BITs, Punjab Engineering College, IT BHU, Thapar and Delhi Technical University are some of the names to reckon with for studying embedded systems. Several engineering colleges now offer M.Tech as well as certificate courses in embedded systems design. Especially in Bengaluru, private institutions are offering short term courses, which are more focused.
Much of the growth in embedded computer systems will be propelled by more sophisticated, cloud connected embedded systems, which will have faster chips, better connectivity and more advanced operating systems and analytical software.
An ever-increasing number of appliances will be monitored or controlled remotely. Further developments in microelectronics will lead to an era of invisible computing, wherein the computer does the job we need but without an ubiquitous presence.
As electronics becomes more and more pervasive in our lives with the mobile phones, intelligent home appliances and vehicles, and more recently the insulin pumps that reside inside the body, a career in embedded systems seems only to be getting better with time, for these are no longer talking of ‘cutting edge’ but technology at the ‘bleeding edge!’
The author is an executive editor at EFY