About the role:
We are seeking a highly skilled and experienced Java Engineer to join our dynamic team. In this role, you will be responsible for designing, developing, and maintaining scalable, high-performance applications using Java and related technologies.
Responsibilities:
- Design, develop, and maintain robust, scalable, and efficient Java-based applications
- Ensure code quality through rigorous testing, reviews, and adherence to best practices
- Analyze business requirements and translate them into technical specifications
- Provide technical leadership during project planning, development, and delivery
- Identify and resolve performance bottlenecks in applications and databases
- Ensure applications meet high availability and fault tolerance requirements
- Work closely with stakeholders, product managers, and other engineers to deliver impactful solutions
- Contribute to refining development processes and promoting engineering excellence
What are we looking for:
- University degree in IT, Computer Science, Engineering, or a related technical field
- Advanced level of English, both written and spoken
- Extensive experience in developing enterprise-level applications using Java
- Strong knowledge of frameworks such as Spring, Spring Boot, and Hibernate
- Experience with RESTful APIs, microservices architecture, and cloud platforms (e.g., AWS, Azure, Google Cloud)
- Proficiency in relational databases (e.g., MySQL, PostgreSQL) and ORMs
- Solid understanding of design patterns, algorithms, and data structures
- Experience with CI/CD pipelines, containerization (Docker), and orchestration tools (Kubernetes)
- Proficiency in version control systems, particularly Git
- Strong debugging, troubleshooting, and performance optimization skills
Tech stack mandatory:
- Java 17/21
- Spring Boot
- Maven
- Relational Databases (SQL Server, PostgreSQL, MySQL, Oracle etc.)
- JUnit, Mockito
Nice to have:
- Async processing (Kafka / ActiveMQ / RabbitMQ / Redis)
- Docker, Kubernetes
- Github Actions