National
| Median wages (2008) |
$41.07 hourly, $85,430 annual |
| Employment (2006) |
507,000 employees |
| Projected growth (2006-2016) |
Much faster than average (21% or higher)
|
| Projected need (2006-2016) |
300,000 additional employees |
15-1031.00 - Computer Software Engineers, Applications
Develop, create, and modify general computer applications software or specialized utility programs. Analyze user needs and develop software solutions. Design software or customize software for client use with the aim of optimizing operational efficiency. May analyze and design databases within an application area, working individually or coordinating database development as part of a team.
Sample of reported job titles:
Software Engineer, Application Integration Engineer, Programmer Analyst, Software Development Engineer, Computer Consultant, Software Architect, Software Developer, Technical Consultant, Applications Developer, Business Systems Analyst
Tasks
- Modify existing software to correct errors, allow it to adapt to new hardware, or to improve its performance.
- Develop and direct software system testing and validation procedures, programming, and documentation.
- Confer with systems analysts, engineers, programmers and others to design system and to obtain information on project limitations and capabilities, performance requirements and interfaces.
- Analyze user needs and software requirements to determine feasibility of design within time and cost constraints.
- Design, develop and modify software systems, using scientific analysis and mathematical models to predict and measure outcome and consequences of design.
- Store, retrieve, and manipulate data for analysis of system capabilities and requirements.
- Consult with customers about software system design and maintenance.
- Supervise the work of programmers, technologists and technicians and other engineering and scientific personnel.
- Coordinate software system installation and monitor equipment functioning to ensure specifications are met.
- Obtain and evaluate information on factors such as reporting formats required, costs, and security needs to determine hardware configuration.
back to top
Tools & Technology
Tools used in this occupation:
| Computer servers — Application servers |
| Flash memory storage devices — Flash disks |
| Integrated circuit testers — In circuit emulators ICE; Logic analyzers |
| Notebook computers |
| Personal digital assistant PDAs or organizers — Personal digital assistants PDA |
Technology used in this occupation:
| Data base management system software — Computer Associates integrated data management system CA-IDMS; Data manipulation language DML; Microsoft SQL Server; MySQL software |
| Development environment software — C; IBM Rational Rose XDE Developer; Microsoft Visual Basic; XML Path Language XPATH |
| Object or component oriented development software — C++; Component-based Scalable Logical Architecture CSLA; Self; Sun Microsystems Java |
| Program testing software — Defect tracking software; Mercury Interactive LoadRunner; Source code editor software; Usability testing software |
| Web platform development software — Extensible stylesheet language transformations XSLT; Hypertext markup language HTML; JavaScript; Microsoft ASP.NET |