METIS sets Information Intelligence at the disposal of the Global Maritime Industry. METIS has been designed and implemented to address the requirements of Technical & Operations Departments of Maritime Companies. The solution incorporates fully automated, accurate and reliable Data Acquisition combined with the novel idea of virtual cloud-based agents, which analyse operational or engineering processes and provide useful feedback in the form of analysis, conclusions and event detection reported to multiple users.

Job Description
As a Senior Software Developer, you will contribute to the software design and development of server-side code for the METIS cloud platform. The role includes the following responsibilities
• Design, implement, test, and deliver scalable, containerized services for cloud-based applications
• Contribute to the software architecture and propose tools and technologies
• Maintain, improve and monitor existing services
• Perform Code Reviewing and apply Software Design principles
• Work with other team members to define project requirements in an agile environment
• Mentor junior engineers and highlight best practices

The minimum technical requirements for the Java Software Developer position are:
• Bachelor’s Degree in Electrical/Computer Engineering, Computer Science or equivalent
• 5+ years working experience in software development
• Strong programming skills in Java and object-oriented design concepts
• Understanding of modern API design and RESTful principles
• Hands-on experience with Spring Framework and Maven
• Prior hands-on experience with Docker and Kubernetes
• Familiarity with Git or similar version control systems
The following qualifications will be considered an asset:
• Familiarity with CI/CD tools such as Jenkins
• Experience with Data Management Systems, such as Postgres, ElasticSearch etc.
• Hands-on experience with Scala, Apache Spark and/or Kafka
• Familiarity with Agile methodology

Key Competencies
The successful candidate should:
• possess excellent interpersonal and teamwork skills
• contribute to a positive team environment
• fully understand software engineering concepts and procedures
• be fluent in English
• demonstrate strong technical writing skills
• be organized and methodical
• enjoy learning new things