Alternate Job Titles
Application Engineer, Software Programmer, Programmer, Software Architect
Job Level
Entrant
Specialist
Functional Group
Software and Systems – Application Development & Deployment
Job Family
Development and Deployment
Job Description
- Create and test the software/applications in accordance with the detailed technical design to ensure that the business requirements are met.
- Work to resolve software/applications issues.
- Participate and contribute to the review, analysis and verification of business and software requirements.
- Create and maintain software/applications in accordance with the detailed technical design.
- Code from component specifications and test scripts.
- Develop test plan and run unit testing to determine functionality of software/applications.
- Participate and contribute to the review and verification of test requirements and test cases.
- Prepare technical documentation and reports on software/applications development.
- Develop, create and modify general computer applications software or specialised utility programmes.
- Analyse user needs and develop software solutions.
- Design software or customise software for client use with the aim of optimising operational
efficiency. - Analyse and design databases within an application area.
- Coordinate database development.
- Design, develop, test, debug and implement software applications or specialised utility programmes.
- Work with applications support lead in resolving software/applications issues.
Critical Work Function
Identification of Requirements
- Support stakeholder discussions to understand business needs and user requirements.
- Support proposal writing for development of applications.
- Support the formulation of specifications and the definition of application delivery platforms.
- Support analysis of requirements.
- Participate in discussions with stakeholders to understand user requirements.
- Conduct requirements analysis based on user requirements.
- Prepare requirements documentation, descriptions of interfaces, and functional and non-functional requirements.
Application Development
- Integrate applications with databases from the back end.
- Support the creation of programme logic for new applications and functionality.
- Support the creation of the concept of apps, interface design and architecture.
- Analyse and resolve issues using prescribed guidelines or policies.
- Plan and coordinate regular updates and recommend improvements to existing applications.
- Identify and resolve issues which have organisation-wide and long-term impact.
- Identify security risks, create requirements to capture security issues, and perform initial threat modelling to ensure coding standards meet security requirements.
- Develop and maintain the software configuration management plan.
Application Implementation
- Apply bug-fixes.
- Deploy applications as per specifications.
- Create procedures for document implementation.
- Investigate problems and perform root cause analysis.
- Support testing of the applications developed.
- Provide guidance and technical support to the quality testing teams.
- Evaluate changes and updates to source production systems.
- Train end-users on new reports and dashboards.
- Propose new technologies for cutting edge platform development.
Application Optimisation
- Collect user feedback and generate system reports on the performance of the applications.
- Propose recommendations to improve the performance of applications.
- Support initiatives to enhance applications’ functionality and process flow.
- Support the analysis and modification of design logic in existing applications.
- Encourage the integration of new products with existing applications to enhance features.
- Assist in the installation and use of tools for a project’s designated design strategy and methodology.
- Assist in architectural design tasks associated with use of standard notations, diagramming techniques, models, and patterns.
- Apply selected software design pattern to the design of software components or modules.
- Participate in software design reviews.
- Carry out static analysis tasks to evaluate design quality.
- Assist in development and use of simulation and prototypes to evaluate software design quality.
- Perform integration testing as part of the integration process.
- Adhere to project standards in the collection of security assessment metrics.
- Perform code reviews to identify security vulnerabilities.
- Assist in determining impact of constraints on Software Configuration Management (SCM) imposed by policies, contract, and software development life cycle.
- Provide measurement data for SCM measures.
- Assist in identifying software configuration items (SCIs).
- Generate, classify, and manage problem reports.
Application Maintenance
- Analyse usage reports on applications.
- Document the technical architecture of the application, changes to code, issue resolutions and procedures.
- Solve routine issues occurring within applications.
- Promote monitoring of compliance with safety measures.
- Support the updating and maintenance of existing applications.
- Collect standard measures of code quality and size.
- Generate codes and systems from models.
- Create and execute unit tests for delivered codes.
- Achieve test coverage goals set by project and organisation standards.
- Identify unit and integration testing success and failure criteria.
- Adhere to software test plans.
- Assist with the development of test plans and test cases.
- Implement the test environment and unit test cases and integration and system test cases.
- Collect and analyse test execution results.
- Follow recommended coding standards and secure-coding principles to avoid security vulnerabilities.
Entry Requirements
#1
Application Developer
BDQF Level 6 in Information Systems, Computer Science or related field with 3 years experience in related fields or
BDQF Level 5 in Information Systems, Computer Science or related field with 5 years of relevant industry experience or possess relevant portfolio/experience.