Software Developer, 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. May supervise computer programmers.

Job Outlook through 2024

Employment Current: 18,070
Employment Projected: 20,790
Percentage Change: 15.1%

Education/Training

Software developers usually have a bachelor’s degree, typically in computer science, software engineering, or a related field. A degree in mathematics is also acceptable. Computer science degree programs are the most common, because they tend to cover a broad range of topics. Students should focus on classes related to building software in order to better prepare themselves for work in the occupation. For some positions, employers may prefer a master’s degree.

Sample Job Titles

  • Application Developer
  • Application Integration Engineer
  • Applications Developer
  • Computer Consultant
  • Information Technology Analyst (IT Analyst)
  • Software Architect, Software Developer
  • Software Development Engineer
  • Software Engineer
  • Technical Consultant

Duties

  • Modify existing software to correct errors, allow it to adapt to new hardware, or to improve its performance.
  • Analyze user needs and software requirements to determine feasibility of design within time and cost constraints.
  • Confer with systems analysts, engineers, programmers and others to design system and to obtain information on project limitations and capabilities, performance requirements and interfaces.
  • Store, retrieve, and manipulate data for analysis of system capabilities and requirements.
  • Design, develop and modify software systems, using scientific analysis and mathematical models to predict and measure outcome and consequences of design.

Skills

  • Programming — Writing computer programs for various purposes.
  • Systems Analysis — Determining how a system should work and how changes in conditions, operations, and the environment will affect outcomes.
  • Systems Evaluation — Identifying measures or indicators of system performance and the actions needed to improve or correct performance, relative to the goals of the system.
  • Judgment and Decision Making — Considering the relative costs and benefits of potential actions to choose the most appropriate one.
  • Complex Problem Solving — Identifying complex problems and reviewing related information to develop and evaluate options and implement solutions.

Average Wages in PA

Entry Level: $61,860
Average: $95,200
Experienced: $111,870