PROGRAMMING & SOFTWARE DEVELOPMENT

Programming and software development includes occupations involve the design, development, implementation and maintenance of computer systems and software, requiring knowledge of computer operating systems, programming languages and software development.

CAREER DETAILS

Description:
Analyze science, engineering, business, and other data processing problems to develop and implement solutions to complex applications problems, system administration issues, or network concerns. Perform systems management and integration functions, improve existing computer systems, and review computer system capabilities, workflow, and schedule limitations. May analyze or recommend commercially available software.

Tasks:

  • Test, maintain, and monitor computer programs and systems, including coordinating the installation of computer programs and systems.
  • Troubleshoot program and system malfunctions to restore normal functioning.
  • Expand or modify system to serve new purposes or improve work flow.
  • Use the computer in the analysis and solution of business problems, such as development of integrated production and inventory control and cost analysis systems.
  • Consult with management to ensure agreement on system principles.

*Additional tasks may be needed for this career.

Average Salary:
$52,770 – $154,930

Description:
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.

Tasks:

  • Analyze information to determine, recommend, and plan installation of a new system or modification of an existing system.
  • Analyze user needs and software requirements to determine feasibility of design within time and cost constraints.
  • Confer with data processing or project managers to obtain information on limitations or capabilities for data processing projects.
  • Confer with systems analysts, engineers, programmers and others to design systems and to obtain information on project limitations and capabilities, performance requirements and interfaces.
  • Consult with customers or other departments on project status, proposals, or technical issues, such as software system design or maintenance.

*Additional tasks may be needed for this career.

Average Salary:
$59,090 – $164,350

Description:
Research, design, develop, and test operating systems-level software, compilers, and network distribution software for medical, industrial, military, communications, aerospace, business, scientific, and general computing applications. Set operational specifications and formulate and analyze software requirements. May design embedded systems software. Apply principles and techniques of computer science, engineering, and mathematical analysis.

Tasks:

  • Analyze information to determine, recommend, and plan installation of a new system or modification of an existing system.
  • Analyze user needs and software requirements to determine feasibility of design within time and cost constraints.
  • Confer with data processing or project managers to obtain information on limitations or capabilities for data processing projects.
  • Confer with systems analysts, engineers, programmers and others to design systems and to obtain information on project limitations and capabilities, performance requirements and interfaces.
  • Consult with customers or other departments on project status, proposals, or technical issues, such as software system design or maintenance.

*Additional tasks may be needed for this career.

Average Salary:
$71,730 – $165,740

VIRGINIA WIZARD

Learn more about the careers above and others in this sector by visiting the Virginia Education Wizard.

LEARN MORE ABOUT CAREERS