Backend Engineer
Full-time
AI Summary
Role Overview MDOTM is seeking a Java Software Engineer to join our Engineering team. You will be actively contributing to the development and optimization of our high-performance Spring Boot backend, ensuring scalability, reliability, and security.
About this role
Role Overview
MDOTM is seeking a Java Software Engineer to join our Engineering team. You will be actively contributing to the development and optimization of our high-performance Spring Boot backend, ensuring scalability, reliability, and security.
Your responsibilities
- Develop, maintain, and optimize scalable Spring Boot application
- Implement clean, modular, and testable Java code
- Contribute to design and implement features following relational (MySQL) and NoSQL (MongoDB) databases
- Implement and follow best practices in software architecture, leveraging Layered Architecture, DDD, or Event-Driven design
- Troubleshoot and optimize backend performance and security
- Work with DevOps teams to improve CI/CD automation and deployment processes
Requirements
- Experience in Java & Spring Boot (microservices, REST APIs)
- Proficiency with SQL & NoSQL databases
- Experience with software architecture patterns (Layered Architecture, DDD, Event-Driven Design)
- Experience with TDD and testing best practices in Spring Boot (JUnit, Mockito, Testcontainers)
- Experience with messaging systems (ActiveMQ, Kafka)
- Good knowledge of English (both written and spoken)
- Excellent communication skills, with the ability to explain complex problems and solutions to different stakeholders.
Bonus Points
- Experience with modern API communication (GRPC, GraphQL, REST)
- Hands-on experience with CI/CD tools (GitLab Pipelines, GitHub Actions, Jenkins)
- Experience with AWS, especially EC2, S3
- Hands-on experience with Docker & Kubernetes for containerized application deployment and management
- Security best practices for backend applications (knowledge of ISO 27001:2022 Annex A 8.28 is a plus)