Programming/software development PROG

(modified)

Developing software components to deliver value to stakeholders.

Guidance notes

(new)

Activities may include - but are not limited to...

  • identifying, creating and applying software development and security standards and processes
  • planning and designing software components
  • estimating time and effort required for software development
  • constructing, amending, verifying  software components
  • applying test driven development and ensuring appropriate test coverage
  • using peer review techniques - such as pair programming
  • documenting software components
  • understanding and obtaining agreement to the value of the software components to be developed
  • selecting appropriate development methods and life cycles.
  • applying recovery techniques to ensure the software being developed is not lost 
  • implementing appropriate change control to software development practices
  • resolving operational problems with software and fixing bugs

Depending on requirements and project or work assigned characteristics - appropriate development methods and life cycles can be predictive (plan-driven) approaches or adaptive (iterative/agile) approaches.

Programming/software development: Level 6

(modified)

Develops organisational policies, standards, and guidelines for software construction and refactoring. Plans and leads software construction activities for strategic, large and complex development projects. Adapts or develops new methods and organisational capabilities and drives adoption of, and adherence to policies and standards

Programming/software development: Level 5

(unchanged)

Takes technical responsibility across all stages and iterations of software development. Plans and drives software construction activities. Adopts and adapts appropriate software development methods, tools and techniques selecting appropriately from predictive (plan-driven) approaches or adaptive (iterative/agile) approaches. Measures and monitors applications of project/team standards for software construction including software security. Contributes to the development of organisational policies, standards, and guidelines for software development.

Programming/software development: Level 4

(unchanged)

Designs, codes, verifies, tests, documents, amends and refactors complex programs/scripts and integration software services. Contributes to selection of the software development approach for projects, selecting appropriately from predictive (plan-driven) approaches or adaptive (iterative/agile) approaches. Applies agreed standards and tools, to achieve well-engineered outcomes. Participates in reviews of own work and leads reviews of colleagues' work.

Programming/software development: Level 3

(modified)

Designs, codes, verifies, tests, documents, amends and refactors moderately complex programs/scripts. Applies agreed standards and tools, to achieve a well-engineered result.

Monitors and reports on progress. Identifies issues related to software development activities. Proposes practical solutions to resolve issues.

Collaborates in reviews of work with others as appropriate.

Programming/software development: Level 2

(unchanged)

Designs, codes, verifies, tests, documents, amends and refactors simple programs/scripts. Applies agreed standards and tools, to achieve a well-engineered result. Reviews own work.