Computer Software Engineer
What is this job like?
The impact of computers on our lives means there is a need to develop new software. Computer software engineers apply computer science, engineering, and math to design, develop, and test software. (Computer hardware engineers design computer chips, boards, systems, modems, and printers.)
Software engineers first analyze users' needs. Then they design, construct, test, and maintain the needed software or systems. In programming, or coding, they tell a computer, line by line, how to function. They also solve any problems that arise. They must possess strong coding skills, but are more likely to develop algorithms and solve problems than write code.
Software engineers often work as part of a team that designs new hardware, software, and systems. A core team may have engineering, marketing, factory, and design people who work together until the product is done.
Computer applications software engineers design, construct, and maintain computer programs based on what people need. They can develop a program for just one person or for many people to use separately.
Computer systems software engineers construct and maintain computer programs for companies. For example, they might develop programs that do recordkeeping and payroll. They might also set up an "intranet"—an internal and secure computer network—for a company. Many software engineers work for companies that make or install new and more advanced computer systems.
Software engineers normally work in well-lighted offices or labs. Most work at least 40 hours a week. If a big project is due, they may have to work nights or weekends to meet deadlines. Like other workers who sit for hours at a computer, they are susceptible to eyestrain, back ache, and hand and wrist syndromes.
Software engineers who are employed by vendors and consulting firms spend time away from their offices to meet with customers. As networks expand, they may be able to use modems, laptops, e-mail, and the Internet to identify and fix problems from their own office.
How do you get ready?
Most employers prefer to hire people who have at least a bachelor's degree and experience with a variety of computer systems. The most common degrees are computer science, software engineering, or computer systems. Some of the more complex jobs require graduate degrees.
Students seeking software engineering jobs enhance their opportunities by signing up as interns to get some experience. Large firms that can train new hires may take new grads with no experience.
Persons looking at jobs in this field must have strong problem-solving and analytical skills. They also must be able to work effectively with team members, other staff, and customers. Because they often deal with many tasks at the same time, they must be able to focus and pay close attention to detail.
As technology advances in the computer field, employers want workers to keep up. Software engineers must learn new skills if they wish to remain in this very dynamic field. To help them keep up, employers, vendors, private training schools, and others offer a large number of courses.
Source: The Bureau of Labor Statistics (BLS)