Become a Computer Software Engineer: Education and Career
Computer software engineers, or software developers, design and develop software applications or computer systems. They may develop computer applications for clients as well as the major systems that make a computer run. Long work hours are typical, and travel to meet with other members of design teams might be required. Since much of a computer software engineer's work is done on the computer, telecommuting is an option for this job.
Bachelor's degree; some employers may prefer a master's degree
Computer science, software engineering, or related field
Voluntary certification is available
Analytical, problem-solving, teamwork and communication skills as well as creativity and attention to detail; familiarity with database management, development environment, program testing, and other related software
Salary (May 2015)
$78,084 (median for software engineers)
Sources: U.S. Bureau of Labor Statistics, Institute for the Certification of Computing Professionals, O*Net OnLine, PayScale.com
Step 1: Learn About the Career
Since computer software engineering includes a variety of tasks and job descriptions, the first step aspiring software engineers may need to do is to research the field before pursuing education and training that will prepare them for a particular career path. The types of software that computer software engineers create, test, and evaluate include business applications, network control systems, operating systems, databases, middleware, and computer games. Software engineers may use a variety of programming languages.
Those who work primarily with computer systems may design and implement data assurance and system security, as well as customize computer systems to meet the needs of clients. They may also set up intranets, which are networks that allow different computers within an organization to communicate.
Step 2: Earn a Bachelor's Degree
As the minimum education requirement for computer software engineering jobs is usually a bachelor's degree, the next step is to complete your degree program. Those who work with applications typically major in software engineering, computer science, or mathematics. Courses in a computer science undergraduate program may include computer fundamentals, data structures, principles of programming languages, software engineering, and computer architecture.
Participate in an internship! Employers may prefer to hire those who have relevant experience in addition to a bachelor's degree. Students can participate in internships during their undergraduate education to enhance their employment prospects. Internships also enable students to gain hands-on experience and learn new skills from professionals in the industry.
Step 3: Gain Related Experience and Skills
Since computer software engineers design new software programs, they should have a high degree of creativity. They should also have strong problem-solving, mathematical, and analytical skills, as well as the ability to work with abstract concepts. Communication skills are also important since they must interact with hardware engineers, industrial designers, manufacturing operations personnel, and end users to develop software products. An entry-level position, such as a computer support specialist or computer technician, can help prospective engineers develop these skills and obtain hands-on experience in the field.
Before you start on your path to become a computer software engineer, consider 3 more tips for success:
Gain professional certification. Obtaining certification can demonstrate a certain level of competence and make job applicants more competitive. Product vendors, software firms, and professional computing societies, such as the Institute for Certification of Computer Professionals (ICCP), offer certification programs. Those who seek certification from a product vendor or software firm may be required to work with the company's products, while certification from a professional computing society typically requires a series of examinations, maintenance of membership, and periodic recertification.
Continue education and training. Since technology is constantly changing, the job tasks performed by computer software engineers change often as well. Employers, colleges and universities, private training institutions, software vendors, and professional computing societies offer continuing education and professional development seminars to help computer software engineers learn the skills necessary to keep up with changing technology.
Consider a master's degree. Some employers look for prospective software engineers who have a master's degree. Programs like the Master of Science in Computer Science are available on-campus and online.