Job Openings Programmer Analyst

About the job Programmer Analyst

The Programmer Analyst is responsible for designing, building and implementing programs. He/she ensures that programs satisfy the specifications and function as effectively and efficiently as possible. The programmer analyst researches problems and adjusts programs to address issues.

Solution Delivery

  • Software Development - Designs, codes, verifies, tests, documents, amends and refactors complex programs/scripts and integration software services. Contributes to selection of the software development approach for projects, selecting appropriately from predictive (plan-driven) approaches or adaptive (iterative/agile) approaches. Applies agreed standards and tools, to achieve well-engineered outcomes. Participates in reviews of own work and leads reviews of colleagues' work.
  • Database Design - Develops appropriate physical database or data warehouse design elements, within set policies, to meet business change or development project data requirements. Interprets installation standards to meet project needs and produces database or data warehouse component specifications.
  • Testing - Defines test conditions for given requirements. Designs test cases and creates test scripts and supporting data, working to the specifications provided. Interprets, executes and records test cases in accordance with project test plans. Analyses and reports test activities and results. Identifies and reports issues and risks.
  • Integration and Build - Defines the software modules needed for an integration build and produces a build definition for each generation of the software. Accepts completed software modules, ensuring that they meet defined criteria. Produces software builds from software source code for loading onto target hardware. Configures the hardware and software environment as required by the system being integrated.
  • Produces integration test specifications, conducts tests and records and reports on outcomes. Diagnoses faults and records and reports on the results of tests. Produces system integration reports.
  • Installation and Decommissioning - Installs or removes hardware and/or software, and associated connections, using supplied installation instructions and tools. Conducts tests and corrects malfunctions.
  • Documents results in accordance with agreed procedures. Assists with the evaluation of change requests. Contributes, as required, to investigations of problems and faults concerning the installation of hardware and/or software and confirms the correct working of installations.
  • Release and Deployment - Uses the tools and techniques for specific areas of release and deployment activities. Administers the recording of activities, logging of results and documents technical activity undertaken. May carry out early life support activities such as providing support advice to initial users.

Service Delivery

  • Availability Management - Analyses service and component availability, reliability, maintainability and serviceability. Ensures that services and components meet and continue to meet all of their agreed performance targets and service levels. Implements arrangements for disaster recovery and documents recovery procedures. Conducts testing of recovery procedures.
  • Change Management - Develops, documents and implements changes based on requests for change. Applies change control procedures.
  • Problem Management - Investigates problems in systems, processes and services. Assists with the implementation of agreed remedies and preventative measures.
  • Incident Management - Following agreed procedures, identifies, registers and categorizes incidents. Gathers information to enable incident resolution and promptly allocates incidents as appropriate. Maintains records and advises relevant persons of actions taken.

Educational Requirement

  • Bachelors Degree in Computer Science, Computer Engineering, Electrical Engineering or IT-related course

Relevant Work Experience

  • 3+ years of experience in application development (VB.NET, HTML, CSS, JavaScript)
  • 2+ years of experience in Microsoft SQL Server
  • Hands-on experience in SDLC
  • Hands-on experience in web-based application design, development, integration for Windows and related technologies
  • Experience in Agile software development lifecycle is a definite plus

Knowledge/Skills

  • Familiarity with the following technologies: relational databases, Active Directory, Web Services
  • Understanding of Agile software development lifecycle is a definite plus
  • Understanding of databases and distributed systems architecture
  • Knowledge of web services, microservices/APIs to integrate to the banks assets
  • Excellent analytical and execution skills
  • Excellent verbal and written communication skills