Job Description
This is a remote position.
EXPERIENCE AND EDUCATION:
Essential Qualifications/Experience:
· Level 3 – Expert: either (i) a level of education which corresponds to completed university studies of at least 4 years attested by a diploma and relevant professional experience of at least 9 years gained after the award of the diploma OR (ii) a level of education which corresponds to completed university studies of at least 3 years attested by a diploma and relevant professional experience of at least 10 years gained after the award of the diploma
· 6+ years of professional experience of OOP paradigms and SOLID principles using Java 11 (or higher) and experience with most common Java frameworks:
ü Spring
ü SpringBoot
· 2+ years of professional experience with at least one of the JavaScript front-end frameworks:
ü Vue.js
ü jQuery
ü React/ Angular2
· Good knowledge of application development environments like:
ü Java 11+
ü Eclipse or Intellij
ü Maven
ü Git
· Good knowledge of the design and development of components like REST APIs, integrations, micro-services)
ü proficiency in using REST based frameworks like Spring MVC as well accessories tools like Postman
ü building SOAP and GRPC web servers and clients in the Java/Spring context
· Good knowledge of relational databases Microsoft SQL server
ü ability to use Spring Data and Hibernate
· Good knowledge of Agile software development methodologies:
ü Scrum
ü Kanban
· Good knowledge of OOP paradigms and SOLID principles using Java 11 (or higher) and experience with most common Java frameworks:
ü Spring
ü SpringBoot
· Good knowledge of container technology
ü Docker
ü Kubernetes
· Good knowledge of messaging systems like
ü ActiveMQ
· Good Knowledge of CD/CI systems
ü TFS/Azure DevOps
· Good knowledge of front-end web application development:
ü Javascript
ü jQuery
ü JSP
· Good knowledge javascript front-end framework:
ü Vue.js
ü React/Angular2
· Good knowledge of a Java EIP framework like
ü Apache Camel
ü Spring Integration
· Good knowledge in Enterprise Integration methodologies and patterns
ü Proficiency in modelling an EIP system using classical EIP patterns and diagrams
· Good knowledge of no-sql and graph databases and ElasticSearch
· Good knowledge of software development methodologies (e.g. AGILE)
· Good knowledge and display of prerequisites of working in an Agile Team implementing Scrum (e.g. team work, clear communication)
Desirable Qualifications/Experience:
· Ability to participate in multi-lingual meetings, ease of communication
· Capability of integration in an international/multi-cultural environment
· Ability to cope with fast changing technologies used in application developments
DUTIES/ROLE:
· Contribute to the improvement of the development and build process
· Design and develop production grade, enterprise level systems that make extensive use of messaging and microservices
· Participate in the Java implementation of applications and micro-services involving integration with search engines, being able to write backend code in a reliable, fast, scalable, and secure way, satisfying requirements and service level agreements
· Write OAUTH authentication mechanisms. Implement validation mechanisms as unit and integration tests
· Assist with deployment and configuration of the system. Setup CI/CD pipelines. Familiarity with Kubernetes/Docker is assumed
· Follow Scrum procedures and disciplines. Estimate the work to be done upon request
· Write technical documentation. Account for secure coding practices, as well as logging and auditing features
· Work with Git following pull request procedure
· Write clean, secure and high-quality code