Job Purpose Statement
This technical role involves the analysis, design, development, and management (3rd Level technical support) of the bank’s channels and other applications (Mobile APP/USSD, web applications, card, Internet banking, and peripheral applications) with integration points to the Core Banking System, Bank Channels, Partners, and other Third-Party systems. The role aims to deliver business strategy by providing a stable and customer-friendly user interface.
Key Accountabilities (Duties and Responsibilities)
Systems Development (60%)
- Develop and maintain App and Web solutions using C#, Java, Swift, Flutter, NodeJs.
- Debug and maintain written code.
- Report and resolve issues/problems.
- Identify and handle technical risks and issues.
- Work in a project team alongside other developers.
- Provide technical support to stakeholders.
- Report on project statuses and developments.
- Participate in project meetings.
- Lead the design, development, and deployment of software solutions.
- Ensure adherence to coding standards, architectural principles, design patterns, and best practices.
- Implement scalable, maintainable, and high-performance software systems.
- Evaluate new tools and technologies to improve development processes.
- Monitor and improve software performance and security.
Project Management (10%)
- Collaborate with stakeholders to define project scope, technical requirements, and timelines.
- Ensure delivery of software projects within deadlines while maintaining quality standards.
- Conduct regular code reviews.
- Document technical designs, user guides, and operational procedures.
Support and Problem Management (10%)
- Track solutions performance metrics and improve stability, scalability, and availability of APIs.
- Provide 3rd Level support for escalated issues.
- Support, maintain, and audit existing service lifecycle artifacts.
Process and Policies (5%)
- Adhere to internal policies and procedures for the development and management of NCBA Software Platforms and repositories.
Governance (5%)
- Adhere to internal policies and procedures for the management of Software Applications.
- Review and resolve audit issues.
Stakeholder Management (10%)
- Advise internal customers on technology improvements.
- Participate in requirement definition to ensure detailed scoping of changes.
Job Specifications
- Bachelor's degree in computer science, information technology, or related field.
- Minimum of 3 years of experience as a full stack developer.
- Proficiency in C#, Flutter, Swift, Kotlin, NodeJs, and Java.
- Knowledge of database management systems (ORACLE, MSSQL, Postgres).
- Experience with GIT and other DevOps tools.
- Ability to write clean, easy-to-understand code.
- Outstanding analytical and problem-solving skills.
- Excellent written and verbal communication skills.
- Understanding of coding and development processes.
- Experience working in an agile environment.
- Ability to work independently and collaboratively.
- Certification and experience with ITIL, PRINCE2.
- Understanding of software development lifecycle, integration patterns, and best practices.
- Experience in creating technical designs and deployment artifacts.
- Knowledge of industry-standard formats and protocols (JMS, SOAP, XML/XPath/XQuery, REST, JSON).
- Use of continuous integration tools (e.g., Gitlab CI/Jenkins).
- Testing automation experience.