General
We are looking for a highly skilled Backend Java Developer to join our client dynamic development team, responsible for designing, developing, and maintaining scalable and efficient backend solutions. This role requires a strong focus on microservices architecture, cloud platforms, and DevOps practices.
Responsibilities/Activities
- Design, develop, and maintain high-performance backend applications
- Build and optimize microservices leveraging the Spring framework
- Work with SQL and NoSQL databases, utilizing JOOQ for database interactions
- Implement unit testing using JUnit and follow TDD best practices.
- Deploy and manage applications in cloud environments (GCP, AWS, or Azure).
- Work in a DevOps-oriented environment with CI/CD pipelines
- Use Git for version control and collaborate efficiently in a team environment
- Maintain and improve code quality, ensuring adherence to best practices and coding standards
- Work within an Agile development environment, collaborating with cross-functional teams
Requirements
Technical
- At least 5 years of experience as a Backend Java Developer
- Proficiency in Java 17/21 and Spring framework (Spring Boot, Spring Cloud, Spring Data)
- Cloud platform experience – GCP preferred (or AWS or Azure)
- Experience in Docker and Kubernetes for containerization and orchestration
- Experience with Git and version control best practices
- Experience with SQL and NoSQL databases
- Experience in unit testing (JUnit) and TDD approach
- Good understanding of microservices architecture and distributed systems
- Good understanding of CI/CD pipelines, DevOps methodologies, and Jenkins
- Knowledge of Web Services and Services Oriented Architecture
- Knowledge of Maven for dependency management and build automation
- Familiar with tools like JIRA and Confluence
- Familiar with Agile/Scrum methodologies
Education
- University degree in Computer Science, Mathematics or another related field
Others
- Proficiency in English (oral and written)
- Excellent problem solving/analytical skills
- Positive attitude and team-oriented
- Ability to quickly learn and adapt to new technologies
Nice to have requirements
- Experience with Kotlin
- Experience with JOOQ (Java Object Oriented Querying)
- Exposure to message brokers (e.g. Kafka, RabbitMQ)
- Knowledge of security best practices in backend development