|
Significant Points
|
• |
Computer software engineers are
projected to be one of the fastest growing occupations.
|
|
• |
Highly favorable opportunities
are expected for Engineering graduates in computer engineering or computer
science and with practical work experience.
|
|
• |
Computer software engineers must
continually strive to acquire new skills in conjunction with
the rapid changes in computer technology. |
Nature of the Work
The explosive impact of computers and information
technology on our everyday lives has generated a need to design
and develop new computer software systems and to incorporate new
technologies in a rapidly growing range of applications. The tasks
performed by workers known as computer software engineers evolve
quickly, reflecting new areas of specialization or changes in
technology, as well as the preferences and practices of employers.
Computer software engineers apply the principles and techniques of
computer science, engineering, and mathematical analysis to the
design, development, testing, and evaluation of the software and
systems that enable computers to perform their many applications.
Software engineers working in applications or systems development
analyze users needs and design, construct, test, and maintain
computer applications software or systems. Software engineers can
be involved in the design and development of many types of
software, including software for operating systems and network
distribution, and compilers, which convert programs for execution
on a computer. In programming, or coding, software engineers
instruct a computer, line by line, how to perform a function. They
also solve technical problems that arise.
Software engineers must possess strong programming skills, but are
more concerned with developing algorithms and analyzing and
solving programming problems than with actually writing code.
Computer applications software engineers analyze users needs and
design, construct, and maintain general computer applications
software or specialized utility programs. They use different
programming languages, depending on the purpose of the program.
The programming languages most often used are C, C++, and Java
with Fortran and COBOL used less commonly. Some software engineers
develop both packaged systems and systems software or create
customized applications.
Computer systems software engineers coordinate the construction
and maintenance of a company’s computer systems and plan their
future growth. Working with a company, they coordinate each
department’s computer needs—ordering, inventory, billing, and
payroll recordkeeping, for example—and make suggestions about its
technical direction. They also might set up the company’s
intranets—networks that link computers within the organization and
ease communication among the various departments.
Systems software engineers work for companies that configure,
implement, and install complete computer systems. They may be
members of the marketing or sales staff, serving as the primary
technical resource for sales workers and customers. They also may
be involved in product sales and in providing their customers with
continuing technical support.
Computer software engineers often work as part of a team that
designs new hardware, software, and systems. A core team may
comprise engineering, marketing, manufacturing, and design people
who work together until the product is released.
Working Conditions
Computer software engineers normally work in well-lighted
and comfortable offices or computer laboratories in which computer
equipment is located. Most software engineers work at least 8
to 10 hours a day; however, due to the project-oriented nature of the
work, they also may have to work evenings or weekends to meet
deadlines or solve unexpected technical problems. Like other
workers who sit for hours at a computer, typing on a keyboard,
software engineers are susceptible to eyestrain, back discomfort,
and hand and wrist problems.
As they strive to improve software for users, many computer
software engineers interact with customers and coworkers. Computer
software engineers who are employed by software vendors and
consulting firms, for example, spend much of their time away from
their offices, frequently traveling overnight to meet with
customers. They call on customers in businesses ranging from
manufacturing plants to financial institutions.
As networks expand, software engineers may be able to use modems,
laptops, e-mail, and the Internet to provide more technical
support and other services from their main office, connecting to a
customer’s computer remotely to identify and correct developing
problems.
Employment
Computer software engineers held jobs as computer
applications software engineers and computer systems software
engineers. Although they are employed in most industries, the
largest concentration of computer software engineers, is in
computer systems design and related services. Many computer
software engineers also work for establishments in other
industries, such as government agencies, manufacturers of
computers and related electronic equipment.
Employers of computer software engineers range from startup
companies to established industry leaders. The proliferation of
Internet, e-mail, and other communications systems expands
electronics to engineering firms traditionally associated with
unrelated disciplines. Engineering firms specializing in building
bridges and power plants, for example, hire computer software
engineers to design and develop new geographic data systems and
automated drafting systems. Communications firms need computer
software engineers to tap into growth in the personal
communications market. Major communications companies have many
job openings for both computer software applications and computer
systems engineers.
An increasing number of computer software engineers are employed
on a temporary or contract basis, with many being self-employed,
working independently as consultants. Some consultants work for
firms that specialize in developing and maintaining client
companies Web sites and intranets. Consulting opportunities for
software engineers should grow as businesses need help managing,
upgrading, and customizing increasingly complex computer systems.
Training, Other Qualifications, and Advancement
Most employers prefer to hire persons who have at least a
bachelor’s degree in Engineering and broad knowledge of and experience with a
variety of computer systems and technologies. Usual degree
concentrations for applications software engineers are computer
science or software engineering; for systems software engineers,
usual concentrations are computer science or computer information
systems. Master degrees are preferred for some of the more complex
jobs.
Academic programs in software engineering emphasize software and
may be offered as a degree option or in conjunction with computer
science degrees. Increasing emphasis on computer security suggests
that software engineers with advanced degrees that include
mathematics and systems design will be sought after by software
developers, government agencies, and consulting firms specializing
in information assurance and security. Students seeking software
engineering jobs enhance their employment opportunities by
participating in projects during college education. These
experiences provide the students with broad knowledge and
experience, making them more attractive candidates to employers.
Inexperienced college graduates may be hired by large computer and
consulting firms that train new hires in intensive, company-based
programs. In many firms, new employees are mentored, and their
mentors have an input into the new hires evaluations.
For systems software engineering jobs degree in computer science
or computer information systems is typical. For systems
engineering jobs that place less emphasis on workers having a
computer-related degree, computer training programs leading to
certification are offered by systems software vendors, including
Microsoft, Novell, and Oracle. These programs usually last from 1
to 4 weeks, but the worker is not required to attend classes in
order to sit for a certification exam; several study guides also
are available to help prepare for the exams. Nonetheless, many
training authorities feel that program certification alone is not
sufficient for most software engineering jobs.
To be classified as a Certified Software Development Professional,
individuals need a bachelor’s degree in Engineering and work experience that
demonstrates that they have mastered a relevant body of knowledge.
Persons interested in jobs as computer software engineers must
have strong problem-solving and analytical skills. They also must
be able to communicate effectively with team members, other staff,
and the customers they meet. Because they often deal with a number
of tasks simultaneously, they must be able to concentrate and pay
close attention to detail.
As is the case with most occupations, advancement opportunities
for computer software engineers increase with experience.
Entry-level computer software engineers are likely to test and
verify ongoing designs. As they become more experienced, computer
software engineers may be involved in designing and developing
software. Eventually, they may advance to become a project
manager, manager of information systems, or chief information
officer. Some computer software engineers with several years of
experience or expertise find lucrative opportunities working as
systems designers or independent consultants or starting their own
computer consulting firms.
As technological advances in the computer field continue,
employers demand new skills. Computer software engineers must
continually strive to acquire such skills if they wish to remain
in this extremely dynamic field. To help them keep up with the
changing technology, continuing education and professional
development seminars are offered by employers and software
vendors, colleges and universities, private training institutions,
and professional computing societies.
Job Outlook
Computer
software engineers are projected to be one of the fastest growing
occupations. Rapid employment growth in the computer systems
design and related services industry, which employs the greatest
number of computer software engineers, should result in highly
favorable opportunities for those Engineering graduates with degree in computer engineering or computer science
and practical experience working with computers. Employers will
continue to seek computer professionals with strong programming,
systems analysis, interpersonal, and business skills.
Employment
of computer software engineers is expected to increase much faster
than the average for all occupations, as businesses and other
organizations adopt and integrate new technologies and seek to
maximize the efficiency of their computer systems. Competition
among businesses will continue to create an incentive for
increasingly sophisticated technological innovations, and
organizations will need more computer software engineers to
implement these changes. In addition to jobs created through
employment growth, many job openings will result annually from the
need to replace workers who move into managerial positions,
transfer to other occupations, or leave the field.
Demand for computer software engineers will increase as computer
networking continues to grow. For example, the expanding
integration of Internet technologies and the explosive growth in
electronic commerce—doing business on the Internet—have resulted
in rising demand for computer software engineers who can develop
Internet, intranet, and World Wide Web applications. Likewise,
expanding electronic data-processing systems in business,
telecommunications, government, and other settings continue to
become more sophisticated and complex. Growing numbers of systems
software engineers will be needed to implement, safeguard, and
update systems and resolve problems. Consulting opportunities for
computer software engineers also should continue to grow as
businesses seek help to manage, upgrade, and customize their
increasingly complex computer systems.
New growth areas will continue to arise from rapidly evolving
technologies. The increasing uses of the Internet, the
proliferation of Web sites, and “mobile” technology such as the
wireless Internet have created a demand for a wide variety of new
products. As individuals and businesses rely more on hand-held
computers and wireless networks, it will be necessary to integrate
current computer systems with this new, more mobile technology.
Also, information security concerns have given rise to new
software needs. Concerns over “cyber security” should result in
businesses and government continuing to invest heavily in security
software that protects their networks and vital electronic
infrastructure from attack. The expansion of this technology in
the next 10 years will lead to an increased need for computer
engineers to design and develop the software and systems to run
these new applications and that will allow them to be integrated
into older systems.
|
Engg. Courses Aeronautical
Agricultural
Architecture
Biomedical
Ceramic
Chemical
Civil
Com Software
Com Programmer
Com Hardware
Electrical &
Electronics
Environmental
Industrial
IT
Leather Tech.
Marine
Mechanical
Mining
Nuclear
Petroleum
Printing
Telecommunication
Textile
|