4,443 open roles
Java Software Engineer
Job description
We are seeking a Java Software Engineer to design, build, and operate scalable backend services and integrations, while providing occasional support to a modern web front end (Angular/TypeScript). You will champion engineering best practices, support delivery planning, and apply AI-assisted engineering using Microsoft Copilot to improve speed and quality, bringing fundamental AI architecture knowledge to collaborate on AI-enabled features and system design decisions.
Responsibilities
Design, develop, and maintain backend services in Java (8+) using Spring Boot/Spring ecosystem and/or Quarkus Design and evolve RESTful APIs, including contracts, versioning, documentation, performance, and backward compatibility Implement persistence and data access using JPA/Hibernate (or Panache) with Microsoft SQL Server Build and support integration flows using Apache Camel, including routing, transformation, retries, error handling, and monitoring Apply microservices best practices including service boundaries, resiliency patterns, and operational readiness Contribute to CI/CD pipelines and release processes using Git and Azure DevOps Use Microsoft Copilot as part of daily development for implementation support, refactoring, test generation, and documentation, while validating results via reviews and automated tests Participate in solution design discussions involving AI-enabled capabilities, bringing a practical understanding of LLM integration basics, grounding concepts, and risk considerations Provide rare UI support in Angular/TypeScript, including small fixes, minor enhancements, and debugging API/UI interactions Support application operation in AWS-based environments, with basic awareness of IAM, logging, and monitoring Troubleshoot production and non-production issues, perform root-cause analysis, and implement sustainable fixes Collaborate with the team on delivery planning, estimation, and progress tracking, and actively contribute in Agile ceremonies Mentor team members through code reviews, pairing, and knowledge sharing to help improve engineering practices and consistency Requirements 3+ years of professional Java development experience, with previous experience in a similar senior engineer role in the Banking sector Proficiency in Java 8+, including strong OOP, design patterns, and clean code Expertise in Spring Boot, Spring MVC, Spring Data and/or Quarkus Skills in RESTful APIs, JPA/Hibernate (or Panache), and Maven Knowledge of SQL and Microsoft SQL Server Background in Apache Camel Familiarity with Git, Azure DevOps, and microservices architecture Understanding of CI/CD pipelines and DevOps practices Capability to work with Angular and TypeScript fundamentals, including reading, debugging, and implementing small changes Competency in unit testing using JUnit and Mockito Strong problem-solving, analytical, and communication skills, with a proactive attitude and ability to work independently Good command of written and spoken Greek and English Nice to have Familiarity with Docker/Kubernetes Knowledge of cloud platforms such as Azure, AWS, or GCP Background in Elastic stack (ELK)
Description copied from EPAM Systems's careers page. Read the full posting before you apply.
More jobs at EPAM Systems
AI Practice Lead - Insurance
EPAM Systems· Remote, United StatesAI Practice Lead - Insurance
EPAM Systems· Remote, United StatesAI Practice Lead - Insurance
EPAM Systems· Remote, CanadaConversational AI Architect - Google Cloud Gemini CX
EPAM Systems· Gurgaon, Haryana, IndiaData Science Platform Architect
EPAM Systems· Remote, Belarus