Application Development

Knowledge and ability to design, define, construct, enhance, support, and maintain application software on one or more platforms.

Proficiency Level

Level 1 (Follow)

  • Demonstrate a basic level of understanding of software specifications or design techniques.
  • Demonstrate a basic understanding of programming concepts.
  • Demonstrate a general familiarity with one or more programming languages and/or methodologies.
  • Understand the importance of testing, documentation, and production assurance.
  • Know where to look for standards.

Level 2 (Assist)

  • Demonstrate a working knowledge of one or more programming languages.
  • Write or adapt software modules for testing and integration.
  • Understand and employ basic development methods and standards.
  • Test/debug programme modules.
  • Use a testing tool and prepare basic test cases.
  • Understand the migration cycle and prepares programme for migration.
  • Prepare operational documentation.

Level 3 (Apply)

  • Demonstrate a detailed knowledge of several programming environments and a good working knowledge of hardware and software interfaces.
  • Write original multi-module/complex programmes or apply reusable modules.
  • Design, test and integrate software modules, and resolve programming errors using various debugging tools and techniques.
  • Provide support, guidance and production assurance for common problems.
  • Conduct impact analysis for proposed changes to the system.
  • Prepare technical documentation (e.g., user guides, technical specifications).
  • Undertake routine analysis and work with designers and analysts to clarify and improve specifications or to identify alternative programming solutions.
  • Enforce standards (e.g., at walkthroughs).

Level 4 (Ensure)

  • Demonstrate in-depth knowledge and capability in software construction, testing, infrastructure, configuration, a wide range of system development methodologies and operating standards.
  • Demonstrate knowledge in multiple applications, data management systems and technologies or in a single area of expertise.
  • Demonstrate application and corporate knowledge and understand how a change would affect multiple applications.
  • Make recommendations/decisions in application and programme design, standards, and programme enhancements.
  • Debug very complex or urgent problems.
  • Analyse and model business functions, processes, and information flow within or between systems.
  • Provide guidance/mentorship on programming practices and techniques to individuals and cross-functional teams.

Level 5 (Strategise)

  • Demonstrate expert knowledge of software design, construction, programming trends, programming, and scripting languages across organisations/agencies in multiple applications and data management systems or in a single area of expertise.
  • Provide effective strategic direction to enterprise-wide application design.
  • Guide and oversee multiple-concurrent software construction projects.
  • Work with users at all levels to define system requirements and specify appropriate system environments to meet operational needs and system performance objectives.
  • Present software construction disciplines to peers in public forums.
  • Develop policy and standards for software construction.