Overview
We are seeking a Senior Java Developer with a strong passion for software development to join our team. In this role, you will collaborate with team members to deliver innovative solutions, mentor junior developers, and influence the technical direction of projects. This position is focused on driving best practices in software delivery and applying your knowledge to enhance the team's development processes.
Responsibilities
- Define and deliver software solutions iteratively and collaboratively.
- Mentor and inspire the development team to improve continuously.
- Challenge business requirements to ensure optimal outcomes.
- Drive the adoption of new technologies and innovative solutions.
- Design and implement event-driven and asynchronous systems.
- Ensure code quality through testing techniques such as TDD and BDD.
- Deploy and manage cloud-based technologies and infrastructure as code.
- Work within agile frameworks and promote a DevOps culture.
Requirements
- Expert understanding of Java; knowledge of Kotlin is a plus.
- Experience with modern build tools like Gradle and Maven.
- Proficiency in designing event-driven systems using technologies like RabbitMQ and Kafka.
- Familiarity with modern web frameworks such as Spring or JavaEE.
- Experience with version control systems like GIT.
- Strong knowledge of testing and quality assurance methodologies.
- Experience deploying cloud technologies (AWS, Azure, GCP) using tools like Terraform or Ansible.
- Understanding of relational and non-relational databases, working with formats like JSON and XML.