What Is a Software Engineer?
Because it is a new discipline, not everybody agrees on the
definition of software engineering. However, according to the
business-improvement organization Practical Process,
www.practicalprocess.com,
software engineering is the application of strong practices
to ensure quality in the creation and maintenance of
computer software. Often, software engineers are
distinguished from computer programmers in that they handle
and direct large-scale projects, while programmers primarily
work with more contained jobs.
Skills Needed for Software Engineering
To effectively develop software, engineers need to know
about computers, applications and programming. Skill and
experience are necessary for writing code in common programming
languages such as C, C++ and Java, and an understanding of how
large-scale computer applications are built and maintained is
also requisite. Additionally, a basic understanding of good
business and management practices, such as budgeting, human
resource management and scheduling, is needed for the
administrative aspects of software development.
Education for Software Engineers
According to the Institute of Electrical and Electronics
Engineers, www.ieee.org, most
software engineers hold a Bachelor's degree in a field such as
computer science or mathematics. Many universities have also
begun directly offering 4-year degrees in software engineering,
allowing students to obtain hands-on experience working with
large-system software architecture and multi-level programming
projects. Other educational options for software developers
include:
Independent Study and Certification
This method of learning about software creation is becoming
less common, as more employers expect common educational
standards from their employees. However, some employers will
still hire workers who lack Bachelor's degrees but have
experience and industry certification from organizations such
as the American Society for Quality or the IEEE's Certified
Software Development Professional program.
Master's and Ph.D. Degrees
Some management-level software development jobs might
require an advanced degree in software engineering or a related
discipline. Additionally, university teaching or research
positions often require a Ph.D. or other terminal degree.
Career Information
Salaries for Software Engineers
According to Salary.com, www.salary.com, entry-level
software engineers can expect to earn between $47,746 and
$59,987 annually, while higher-level management workers average
between $90,069 and $105,862.
Job Outlook
The U.S. Bureau of Labor Statistics, www.bls.gov, expects software
engineering to grow faster than most other occupations through
2014. In particular, increased emphasis on computer network
security will lead to very strong employment for qualified
software developers and engineers.
|