What is a Software Engineer?

internet computers

A software engineer is in charge of assembling extensive amounts of code into working applications, as well as updating and fixing problems in existing software. A software engineer is also referred to as a programmer, because the main duties of a software engineer involve programming computers. Software engineering may be compared with computer science. While a software engineer works on actually developing working software solutions, a computer scientist focuses on the theoretical construct of software and hardware development.

There is some debate over whether a software engineer should rather be referred to as a developer or programmer, because of connotations held by the term engineer. Many charge that software development is not held to the same rigorous and exacting standards as fields such as electrical engineering, and therefore should not be associated with other, more strict forms of engineering. The title of software engineer, as a result of these controversies, is bestowed rather haphazardly. The industry itself has not yet come up with widely agreed upon practices for licensing software engineers —- something other engineering disciplines have —- and so even a person without formal training may be referred to as a software engineer.

There are estimated to be over two-and-a-half million software engineers worldwide, a number less than, but rapidly approaching, that of traditional engineers. The role of software engineers in society is expanding as computers and their applications become more pervasive. Economically, socially and politically, computers are changing the world everywhere they reach, and software engineers are building the tools that drive that change.

Only about one-half of software engineers in the industry hold a degree of some level in computer science, and less than five percent hold a degree specifically in software engineering. These numbers are growing, as the marketplace becomes more competitive and entry-level software engineers struggle to distinguish themselves. A number of graduate programs exist for both computer science and software engineering, as well, though these degrees are often acquired after some years of experience in the field.

Ultimately, what a software engineer is and what their specific jobs are is open to some debate. It is clear that they play an integral part in the development of software applications for computer systems, integrating not just programming skills but also design and conceptual skills as well. Some may build database structures, while others may work on the embedded software necessary to make electronic devices function, and still others may write games and consumer-level applications. Whatever the specific role of an individual software engineer, the fundamental job of generating code to help a computer act or react stays the same.

Related wiseGEEK articles

Category

New: Discuss this Article

Posted by: anon11174
what about the annual salary of software engineers and other issues requirements to enter the field and attributes that a software engineer should have?

FREE: Subscribe to wiseGEEK

 
    learn more

our strict privacy policy ensures that your email address will be safe



Written by Brendan McGuigan

copyright © 2003 - 2008
conjecture corporation