- Designing and implementing new features both on your own and as a member of a feature-driven team.
- Design and implementation of new features to agreed timelines.
- Following sound software design, process and quality practices proactively participate in design and code reviews.
- Following sound security-engineering practices.
- Any other related tasks as required by the line manager.
- Honors Degree or Diploma in Computer Science.
- 5+ years proven experience in Java programming.
- Strong object-oriented design & programming skills.
- Excellent written and verbal communication skills using the English-language.
- Experience of software testing methodologies.
- Experience working with the following technologies – Spring Framework, Spring MVC, Spring Boot, Tomcat, Maven.
- Experience building RESTful web services.
- Experience of Agile Software Development (Scrum, Kanban, etc.)
- Knowledge and/or experience in relational databases specifically programming in SQL for Oracle
- Experience in another programming language on Windows and/or Linux environments.
- Experience in writing multi-threaded applications.
- Experience with software systems in the banking sector.
- Experience of software testing and methodologies.
Personal Attributes of the Candidates
- Excellent team player, cooperative and flexible.
- Enthusiastic, proactive, and can-do attitude, keen to be involved at all levels of a product.
- Articulate communicator, ability to present ideas clearly and precisely, both written and verbally, with concise attention to detail to peers, colleagues and management alike.
- Good listener, the ability to listen effectively and to consider input from peers, colleagues and management alike.
- Self-reliant, the ability to work without close supervision and address problems in a collaborative environment.
- Good problem-solving abilities with the ability to identify and contribute to solutions for the company in a collaborative environment.
- Strong customer orientation.