KEY RESPONSIBILITIES: MUST NOT BE MORE THAN 10
Develop systems and systems integrations on the bank's integrations middleware stack using JAVA and Red Hat Integration technologies and tools to drive business.
Work closely with product owners and business analysts and solution architects during requirements engineering phase to understand and document functional and nonfunctional requirements.
Work together with Group Enterprise Architecture teams to analyze product requirements and design best-fit architectures and solutions guided by KCB policies and industry best practices and standards.
Identify, champion, and implement innovative solutions that exploit existing business opportunities and mitigate existing risks.
Accountable for development and timely delivery of quality applications and software solutions from requirements definition, review of solution design (SDD) and interface specification documents (ISD), user test planning and review, defect tracking, and ensuring closure project.
Specify and ensure application controls are incorporated during design of the software in order to check on risk exposure.
Analyze and fix software applications bugs and defects and contributes towards ensuring high availability, scalability, fault tolerance and resilience of production solutions and applications.
Design, develop unit test plans and perform unit and scenario testing for application code bases.
Work with technology operations and support teams to handover system support skills and documentation and formulate OLA agreements with level 3 support.
DAILY RESPONSIBILITIES: NOT MORE THAN 5 OF THE MOST TYPICAL
Support Continuous Integration (CI) / Continuous Deployment (CD) and DevOps transformation initiatives under the guidance of Architect and Technical delivery manager.
Contribute in developing best practices for infrastructure as code (e.g: Puppet, Shell scripting), software build tools (Maven, Gradle, etc.) and continuous integration tools (Jenkins, TeamCity, etc.)
Work with development and infrastructure team in developing building/packaging/deployment processes for new and existing projects.
Work with various IT teams to automate manual release/build related activities utilizing DevOps principles.
Setup/Configuration/Administration of code Repositories like Git, SVN etc.
Working with development and test engineers to generate automate testing plans and configurations using Selenium, SonarQube, JUNIT etc.
CHALLENGES
The bank intends to develop & enhance a myriad of large scale & complex software solutions at an enterprise level.
These applications are often high-volume and mission critical.
The senior software engineer is expected to design, document and implement robust and scalable software that shall be able to handle current and projected capacity requirements.
MINIMUM POSITION QUALIFICATION REQUIREMENTS
Academic & Professional
Education: Bachelor's Degree — Bachelor's Degree (RQ)
Professional Qualifications:
DevOps tools e.g. Jenkins/Ansible etc.
Certification in Cloud technologies e.g AWS, Azure
Azure DevOps (Azure Container Registry, Pipelines, Azure Defender, Azure Boards)
GitOps (Argo CD/Flux CD)
DevSecOps - SAST, DAST - CheckMarx, AKS - Azure Kubernetes Services, EKS - Elastic Kubernetes Services (AWS)
Service Mesh (Istio, Linkerd, Openshift Service Mesh)
Masters: MBA/MSc (AA)
Experience
Total Minimum No of Years' Experience Required: 5
Detail:
Experience working with Software Build and Deployments in a busy environment - 3 years (ES)
Hands-on knowledge of Configuration Management and Deployment tools like Puppet, Ansible, Chef, Terraform - 3 years (ES)
Experience in developing Continuous Integration/Continuous Delivery pipelines (CI/CD) using various tools like TeamCity, Jenkins/Bamboo, and Artifactory/Nexus as binary repository - 3 years (ES)
Experience with the Source Code Management tools like GIT, Bitbucket, and TFS - 3 years (DE)
Experience in Banking Operations - 1 year (AA)
Proficient in scripting - 2 years (AA)
Experience working in a fast-paced agile environment - 2 years (AA)