Develops, creates, and modifies general computer applications software or specialized utility programs. Analyzes user needs and develops software solutions. Designs software or customizes 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.
This career is part of the Information Technology cluster Programming and Software Development pathway.
A person in this career:
- Modifies existing software to correct errors, allow it to adapt to new hardware, or to improve its performance.
- Analyzes user needs and software requirements to determine feasibility of design within time and cost constraints.
- Confers with systems analysts, engineers, programmers and others to design system and to obtain information on project limitations and capabilities, performance requirements and interfaces.
- Stores, retrieves, and manipulates data for analysis of system capabilities and requirements.
- Designs, develops and modifies software systems, using scientific analysis and mathematical models to predict and measure outcome and consequences of design.
- Develops and directs software system testing and validation procedures, programming, and documentation.
- Supervises the work of programmers, technologists and technicians and other engineering and scientific personnel.
- Determines system performance standards.
- Coordinates software system installation and monitors equipment functioning to ensure specifications are met.
- Consults with customers about software system design and maintenance.