What is this job like?
Computers are essential to our modern society. Nearly everything is controlled by a computer: farm equipment, medical equipment, the stock market, gasoline pumps, web pages, the internet, etc. Computers, in turn, are controlled by software programs, which are instructions written by software engineers and programmers. There is a constant need to develop new programs; hence, there is a constant need for more software engineers.
Software engineers can work for either the government or businesses, in the service sector or in the manufacturing sector. Therefore, software engineers can find themselves in a variety of diverse job settings. Software engineering projects might involve data management for a financial institution, such as data tracked by a bank, or it may involve solving complex mathematical equations for an aircraft company. Work as a software engineer can involve working alone on a project or in a team setting. A software project from initiation through completion would involve software engineering for planning the project, writing the specifications and algorithms, coding the tasks to meet the objectives of the project, and finally debugging and testing the product.
Detailed knowledge of the electrical aspects of computers (the hardware) is also useful to write efficient code. Popular languages include Java, C#, C++, and Visual Basic, although many others are in use as well.
Software engineers typically work at a desk in offices or labs. Most work at least 40 hours a week. There will be times when more hours would be required if a deadline is to be met or an emergency occurs.
How do you get ready?
The degree includes classes in several major areas. Of course, a software engineer must know how to write code, thus must take programming classes to learn computer languages. Courses in databases are also required. Databases serve as an organized repository of data. They are programmed using specialized languages like SQL. Website design and Internet networking classes are also required. Other courses involve classes in mathematics, physics, and project management. Math and physics courses help develop critical thinking and logic skills necessary to write efficient code. Since software engineers typically working on projects in collaboration with end-users (both technical and non-technical), courses are required that develop communication skills, for example writing and speech.
Since the computer field is still evolving rapidly, software engineers must continue to keep their skills current after their formal education by taking additional short-courses or otherwise learning the newest technologies.
What do jobs in Software Engineering pay?
Average yearly wages for computer software engineers were $87,900 in May 2008. Average yearly wages for computer systems software engineers were $94,5201.
What are the job prospects?
Computer applications software engineers held about 514,800 jobs in 2008. Employers range from startups to well-known industry leaders1.
Both computer applications software engineers and computer systems software engineers are projected to be among the fastest growing occupations from 2008 to 2018. Employers will look for software engineers with a strong background in programming and systems analysis, along with business and people skills1.
- Bureau of Labor Statistics, 2011
