Few years ago, the main focus of the information technology industry is reducing costs by outsourcing works to lower labor cost countries but today the main focus shifts from costs to skills acquisition. As the software systems became larger and more complex, higher skills are needed regardless of the costs. Software is a unique and critical component in all businesses and it extends globally with the application of internet technologies. There were several studies findings that larger and complex softwares require certain knowledge and skills that a majority software developers today do not have. There are NOT ENOUGH supply of experienced project managers, Information Systems Managers, and system architects with certain domain expertise. There is a shortage of adequately educated and trained software engineers in the both U.S, Europe AND China and India. Currently, there are no established software education standards for large and complex systems so it is up to each university and training company to come up with their own training programs.
A key challenge is to identify certain aspects of software engineering that are unique to large and complex software systems. For example, courses that can address requirements engineering, system architect, software design, development methodology, software modeling and simulation, interface management, software project management, system integration, software security, system sustainment, and configuration management. Unfortunately, these areas require a lot of experiences in the industry and typical academic professors may NOT have experience to teach and most industry professionals are too busy to spend time teaching.
As the technology industry is changing rapidly, software developers who do not pay attention to these rapid changes in the next few years could see themselves left behind. With the expansion of information technologies in every business, software developers have to be diligent in assessing how these trends and technologies impact their jobs. If they don’t, they could be out of work. A software department that operates in the traditional way of managing infrastructure and information will typically ignore the trends that changing the industry until it is too late. As they are trying to catch up, they will make mistake, probably a lot of mistakes and it will be very costly.
The average Information Technology environment is now more complex than few years ago and the average skills of software developer are changing fast. Today the trends are Enterprise 2.0, Social software, Virtualization, Software as a Service (SaaS), Cloud Computing, Mobile applications, Security and outsourcing etc. All theses changes are happening fast but few people are paying attention to it. It used to be that company buys software, developers implement it and it was all done in-house but today, company license Commercial-off-the-Shelves (COTS) then customized it, some applications are being outsourced, many infrastructures are rented from SaaS vendor AND everything must be working correctly and securely. The role of software developers is becoming more of a solution architect, a systems integrators, and an information systems managers than just programmers or testers but most schools are still teaching programming and testing like nothing has changed.
Under current conditions, companies may be forced to take a “Dramatic approach” because of limited budgets and high competitions. One approach could be completely outsource information systems to another countries where they have people with knowledge and skills. Other could be move quickly into “Virtualization” and “Cloud computing” where vendors will take over many key information technology functions. With globalization, these vendors are NOT necessary have to be in the same country as the company. These approach will create new opportunities to some countries but also create significant difficulty to others. For example, last months U.K government began to outsource significant amount of government IT works to India and put a lot of UK software people out of work. Nobody would even think that government would do something that dramatic but when a majority of government software workers are complacent and believe that their jobs are safe, they did not even want to learn something new. According to a report, some people who spent many years working in government systems only know how to program in Fortran and Pascal in Mainframe computers, they did not even know how to use a PC.
—————————————-
Prof. John Vu
—————————————-
Source: SEGVN