Main Responsibilities
In close interaction with the projects stakeholders, you will be accountable for :
- Research, design, and develop software.
- Analyse user needs and develop software solutions
- The design and implementation a greenfield solution according the functional specifications in a latest Java technologies framework
- Update software, enhances existing software capabilities, and develops and direct software testing and validation procedures.
- The preparation, planning and execution of the roll-out from support to production services. The goal is to obtain a smooth roll-out of the application to different sites.
- Work with other engineers to integrate hardware and/or software systems
- Close collaboration with the technical lead/Architect in order to elaborate technical specifications.
- Develop specifications and performance requirements.
- Drafting specifications, technical design, unit tests, code reviews and detailed system integration documents, additionally to any other documents required during the project lifecycle.
- Contributions to help maintaining a high standard of delivery quality
- Enable and support functional and user acceptance testing
- Perform non-functional testing
- Active participation in the analysis and resolving of issues when application will in production, and to provide technical support in case of need.
Qualifications and Profile
At least a Bachelor’s degree in any of these faculties:
Computer Science / Information Technology / Programming & Systems Analysis / Science (Computer Studies)
This position requires 1 to 3 years of experiences in Java-J2EE software engineering, preferably in a banking environment
Functional
- Financial/banking industry knowledge is a plus.
- Knowledge of Cash Management systems is a strong plus
Technical
- Minimum 4 years’ experience in web and stand-alone application design & development with Java/JEE technologies in Unix environment.
- Must have knowledge on Spark, Hadoop to analyze and transform large amount of data.
- Must have knowledge on HBase, Janus graph, gremlin, elastic search to perform CRUD operations on big data.
- Should have knowledge on maven, gradle, Jenkins, UML build tools to manage and build project.
- Should have knowledge on GIT, GIT Lab, Junit, Cucumber, Jira, Sonar to manage/test source code effectively.
- Should have good knowledge on Spring, Spring REST, Web services, gRPC, Micro services, ORM framework to implement robust API’s.
- Must have knowledge on Kibana, spark UI, ELK to debug and identify the root cause of the issues.
- Very good understanding of application system design, development, testing, deployment and maintenance
- Good knowledge of different design patterns
- Working experience with Agile Methodology in at least on project
- Good to have experience with:
- Containers (Docker)
- Kubernetes
- Messaging Systems (Kafka, RabbitMQ, WebsphereMQ)
- Relational Database
- NoSQL Database
Other Professional Skills and Mindset
- Strong organizational and communication skills
- Strong analytical and problem solving skills
- Team spirit - Like explaining and sharing knowledge
- Awareness of various software development procedures
- Willing to work on new topics and to collectively propose innovative solutions
- Proactive
- Ability to follow defined procedures
- Understanding and respect of cultural diversity