28 May
We are seeking a highly skilled and experienced Freelance Java Developer to join our team. The ideal candidate will be a proactive individual with a strong background in designing, developing, and deploying enterprise-level Java applications, with a specific focus on biometric and identity management solutions. This is a remote, full-time contract for one year with the potential for extension.
- Tasks to be Performed:
The consultant will perform the following tasks/services:
- Contribute to the improvement of development and build processes.
- 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.
- Write reliable, fast, scalable, and secure backend code, satisfying requirements and service level agreements following both a functional and reactive programming approach.
- Implement OAUTH authentication mechanisms.
- Implement validation mechanisms as unit and integration tests.
- Assist with the deployment and configuration of the system.
- Set up CI/CD pipelines.
- Follow Scrum procedures and disciplines; estimate work to be done upon request.
- Write technical documentation, accounting for secure coding practices, as well as logging and auditing features.
- Work with Git following pull request procedures.
- Write clean, secure, and high-quality code.
- Requirements:
2.1 Mandatory Skills and Experience:
To be considered for this role, candidates must demonstrate the following:
- Language Proficiency: Working knowledge of English B2 or higher.
- Education: Level of education corresponding to the requested category.
- Professional Experience:
- Number of years of relevant professional experience corresponding to the area, category, and level requested, taking into account the above level of education.
- A minimum of 6 years of professional experience with OOP paradigms and SOLID principles using Java 21 (or higher).
- Extensive experience with common Java frameworks: Spring and SpringBoot.
- A minimum of 1 year of professional experience in the domain of biometric and identity management solutions, including:
- Fingerprint handling (tenprint and latent print)
- Face identification
- Face matching
- Technical Knowledge & Skills:
- Good knowledge of application development environments: Java 21+, Eclipse or IntelliJ, Maven, Git.
- Good knowledge of the design and development of components like REST APIs, integrations, and micro-services.
- Proficiency in using REST based frameworks like Spring MVC and accessory tools like Postman.
- Proficiency in functional and reactive programming.
- Good knowledge of relational databases (Microsoft SQL Server) and ability to use Spring Data and Hibernate.
- Good knowledge of Agile software development methodologies (Scrum, Kanban).
- Good knowledge of container technology (Docker, Kubernetes).
- Good knowledge of messaging systems (ActiveMQ, Kafka).
- Good knowledge of CD/CI systems (TFS/Azure DevOps).
- Good knowledge of front-end web application development (Javascript, jQuery, JSP).
- Good knowledge of JavaScript front-end frameworks (Vue.js, React/Angular2).
- Good knowledge of a Java EIP framework like Apache Camel or Spring Integration.
- Good knowledge in Enterprise Integration methodologies and patterns, with proficiency in modeling an EIP system using classical EIP patterns and diagrams.
- Good knowledge of NoSQL and graph databases and ElasticSearch.
- Good knowledge of software development methodologies (e.g., AGILE) and principles of working in an Agile Team implementing Scrum (e.g., teamwork, clear communication).
- Good knowledge of biometric data manipulation, procedures, and standards including:
- NIST file handling and generation
- Fingerprint identification
- Face recognition
2.2 Desirable Skills and Attributes:
The following skills and attributes are considered beneficial for this role:
- Ability to participate in multi-lingual meetings and ease of communication.
- Capability of integration in an international/multi-cultural environment.
- Ability to cope with fast-changing technologies used in application developments.