Career Profile- Computer Software Engineers
Job Summary
Computer software engineers apply the techniques and principles of computer science, engineering, and mathematics to the development, design, testing, and evaluation of software and systems. Software and computer systems enable computers to perform their many applications.
Essentially, computer software engineers tell a computer, line by line, how to perform a specific function. They also solve technical problems that may arise within software and systems. Some engineers are responsible for setting up intranets or networks that link computers within an organization.
These job responsibilities call for someone who has strong problem-solving and analytical skills. And, because the needs of computer users are constantly evolving, the tasks performed by software engineers are constantly changing. Engineers must have the desire to acquire new skills so they can keep up with the rapidly evolving technology.
Technology and Training
Most employers prefer to hire software engineers who have at least a bachelor’s degree and a broad knowledge of a variety of computer systems. Degree concentrations vary depending upon what type of engineer you would like to be. Application software engineers should focus upon computer science or software engineering, while system software engineers should focus upon computer science or computer information systems. Graduate degrees will help you secure and perform the more complex software jobs.
If you do not have the time or the means to secure a degree, you can get a start by pursuing certifications that are offered by software vendors. Microsoft, Novell, and Oracle all offer computer training programs. These programs normally last from one to four weeks and you are often not required to attend classes in order to sit for the certification exam. However, many training authorities feel that program certification alone is not sufficient training for most jobs.
With or without a degree, you can enhance your employment opportunities by participating in an internship or co-op program. These hands-on experiences provide you with training and expertise, making you more attractive to potential employers. You can seek employment with a large computer or consulting firm. Such firms often provide intensive training programs for new hires, thus giving you experience and knowledge.
Achieving Success
In 2004 approximately 700,000 computer software engineers were employed. Although they were spread out through many different industries, 30% of these engineers were involved in computer system design and related services. Out of the 700,000, only 5% were self-employed. However, consulting opportunities will continue to grow as businesses need help managing, upgrading, and securing their increasingly complex systems.
The median annual earnings of application software engineers amounted to $73,000. The average wage by industry is shown below:
Software publishers: $76,450
Navigational, electromedical, and control instrument manufacturers: $75,890
Computer system design and related services: $71,890
Architectural, engineering, and related services: $70,090
Management of companies and enterprises: $67,260
The median annual earnings of systems software engineers amounted to $77,000. The average wage by industry is shown below:
Scientific research and development: $82,270
Software publishers: $77,120
Navigational, electromedical, and control instrument manufacturers: $76,200
Computer system design and related services: $73,460
Wired telecommunications carriers: $68,510
According to the National Association of Colleges and Employers (2003), graduates with a bachelor’s degree in computer engineering were offered a starting salary of $51,343 and those with a master’s degree averaged $64,200. In addition to wages and typical benefits, software engineers may be provided with profit sharing, stock options, a company car with mileage allowance and much more.
Overall, computer software engineering is a challenging career that offers stability and opportunity for anyone who takes the time to learn the craft.