College Scholarship Search College Search Career Exploration College Admissions Articles Financial Aid and Student Loan Calculators Compare Student Loans
Username Password
Search:

OverviewNature of WorkKnowledge AreasSkills Utilized
Job ActivitiesAbilitiesJob ConditionsWork SatisfactionEducation/Training
Find Student Loans
Loan Amount:
$

Looking for loans to help pay for college?

Our Student Loan Analyzer helps you compare loan options side by side.

Make an informed decision about which student loan is right for you!

Loan is for:
Year in School:


Private Loans | Stafford Loans | PLUS Loans

Nature of the Work

Computer software engineers apply the principles of computer science and mathematical analysis to the design, development, testing, and evaluation of the software and systems that make computers work. The tasks performed by these workers evolve quickly, reflecting new areas of specialization or changes in technology, as well as the preferences and practices of employers.

Software engineers can be involved in the design and development of many types of software, including computer games, word processing and business applications, operating systems and network distribution, and compilers, which convert programs to machine language for execution on a computer.

Computer software engineers begin by analyzing users' needs, and then design, test, and develop software to meet those needs. During this process they create the detailed sets of instructions, called algorithms, that tell the computer what to do. They also may be responsible for converting these instructions into a computer language, a process called programming or coding, but this usually is the responsibility of computer programmers. Computer software engineers must be experts in operating systems and middleware to ensure that the underlying systems will work properly.

Computer applications software engineers analyze users' needs and design, construct, and maintain general computer applications software or specialized utility programs. These workers use different programming languages, depending on the purpose of the program. The programming languages most often used are C, C++, and Java, with Fortran and COBOL used less commonly. Some software engineers develop both packaged systems and systems software or create customized applications.

Computer systems software engineers coordinate the construction, maintenance, and expansion of an organization's computer systems. Working with the organization, they coordinate each department's computer needs—ordering, inventory, billing, and payroll recordkeeping, for example—and make suggestions about its technical direction. They also might set up the organization's intranets—networks that link computers within the organization and ease communication among various departments.

Systems software engineers also work for companies that configure, implement, and install the computer systems of other organizations. These workers may be members of the marketing or sales staff, serving as the primary technical resource for sales workers. They also may help with sales and provide customers with technical support. Since the selling of complex computer systems often requires substantial customization to meet the needs of the purchaser, software engineers help to identify and explain needed changes. In addition, systems software engineers are responsible for ensuring security across the systems they are configuring.

Computer software engineers often work as part of a team that designs new hardware, software, and systems. A core team may comprise engineering, marketing, manufacturing, and design people, who work together to release a product.

Work environment. Computer software engineers normally work in clean, comfortable offices or in laboratories in which computer equipment is located. Software engineers who work for software vendors and consulting firms frequently travel overnight to meet with customers. Telecommuting is also becoming more common, allowing workers to do their jobs from remote locations.

Most software engineers work at least 40 hours a week, but about 17 percent work more than 50 hours a week. Software engineers also may have to work evenings or weekends to meet deadlines or solve unexpected technical problems.

Like other workers who spend long hours typing at a computer, software engineers are susceptible to eyestrain, back discomfort, and hand and wrist problems such as carpal tunnel syndrome.


Common Tasks

1.Confer with systems analysts, engineers, programmers and others to design system and to obtain information on project limitations and capabilities, performance requirements and interfaces.
2.Modify existing software to correct errors, allow it to adapt to new hardware, or to improve its performance.
3.Analyze user needs and software requirements to determine feasibility of design within time and cost constraints.
4.Consult with customers about software system design and maintenance.
5.Coordinate software system installation and monitor equipment functioning to ensure specifications are met.
6.Design, develop and modify software systems, using scientific analysis and mathematical models to predict and measure outcome and consequences of design.
7.Develop and direct software system testing and validation procedures, programming, and documentation.
8.Analyze information to determine, recommend, and plan computer specifications and layouts, and peripheral equipment modifications.
9.Supervise the work of programmers, technologists and technicians and other engineering and scientific personnel.
10.Obtain and evaluate information on factors such as reporting formats required, costs, and security needs to determine hardware configuration.
11.Determine system performance standards.
12.Train users to use new or modified equipment.
13.Store, retrieve, and manipulate data for analysis of system capabilities and requirements.
14.Specify power supply requirements and configuration.
15.Recommend purchase of equipment to control dust, temperature, and humidity in area of system installation.

[Back to Top]