MAIN PURPOSE OF ROLE
Analyse business requirements, design, develop, implement, monitor, support, troubleshoot and maintain a portfolio of new and existing software applications and services, from high-level business requirements and designs, through the SDLC.
Participate in the full development life cycle of business software including analysis, design, development, unit / load testing, deployment and maintenance of a software system, and implementation of business software for the enterprise, ensuring technical integrity and alignment with coding standards and principles.
Work with end-users to collect and analyse business requirements and then design, develop and implement solutions. Help research and evaluate potential technical solutions to business problems.
Modify existing software to correct errors, adapt it to new hardware or upgrade interfaces, and improve performance.
Develop business requirements specifications, technical specifications / program specifications, and systems documentation.
Design and code new software functionality using code that is readable, maintainable, and re-usable.
Conduct Unit Testing of own code, and System Integration Testing (SIT) of solution. Resolve all issues / queries timeously.
Collaborate with the testing team to co-create test cases.
Contribute to user acceptance testing (UAT) and training material.
Once the solution has been successfully tested, deliver the code into the applicable production environment.
Provide stakeholders with regular feedback on the technical design and timelines for solutions.
Help diagnose root causes of systems issues using problem-solving skills. Monitor performance of solutions and make recommendations to improve the performance and functionality of the solution.
Log issues found in existing systems as internal change controls and ensure successful resolution of issues.
Provide authoritative expertise and advice to clients and stakeholders.
Build and maintain collaborative, professional relationships with clients and stakeholders.
Deliver on service level agreements made with clients and stakeholders in order to ensure that expectations are managed.
Participate and contribute to a culture that builds rewarding relationships, facilitates feedback, and provides exceptional client service.
Develop and maintain productive and collaborative working relationships with peers and team members.
Continuously develop own expertise in terms of industry and subject matter development and application thereof in an area of specialisation.
Participate and contribute to a culture of work-centric thinking, productivity, service delivery, and quality management.
Contribute to continuous innovation through the development, sharing, and implementation of new ideas and involvement of peers.
Take ownership of driving career development.
Identify solutions to enhance cost-effectiveness and increase operational efficiency.
Manage financial and other company resources under your control with due respect.
Provide input into the risk identification processes and communicate recommendations in the appropriate forum.
Relevant B-degree in Information Technology, Computer Science, Mathematics, or related discipline Knowledge
Knowledge of Software Development Lifecycle (SDLC)
Programming language C Essential
Relevant programming languages C, C++, C#
Some background using IBM mainframe
Confident working in the environments we use, viz Windows, Microsoft Visual Studio
Must have a strong understanding of architectural principles
Sound understanding of relational databases and SQL language
Working knowledge of insurance products
Sound knowledge of business analysis and systems analysis
Software testing and writing Test Cases
Report writing skills
Conceptual thinking skills
3-5 years’ development experience within a financial services environment
2-3 years of experience analysing and documenting business requirements