EPAM is a leading global provider of digital platform engineering and development services. We are committed to having a positive impact on our customers, our employees, and our communities. We embrace a dynamic and inclusive culture. Here you will collaborate with multi-national teams, contribute to a myriad of innovative projects that deliver the most creative and cutting-edge solutions, and have an opportunity to continuously learn and grow. No matter where you are located, you will join a dedicated, creative, and diverse community that will help you discover your fullest potential.
We are looking for a highly skilled and experienced Senior Software Engineer to join our innovative team.
In this role, you will contribute to the design, development, and maintenance of scalable and efficient Java-based web applications in a fast-paced Agile environment. You will play a critical role in creating cutting-edge software solutions that support business goals and improve user experiences.
Responsibilities
- Design, develop, and maintain high-performance Java-based applications
- Collaborate with cross-functional teams to gather and analyze requirements
- Build and optimize RESTful APIs and microservices to ensure system scalability and reliability
- Implement and maintain robust software architectures following best practices
- Write clean, efficient, and maintainable code while adhering to coding standards
- Perform unit testing and integration testing to ensure system quality and performance
- Participate in code reviews to enhance code quality and ensure consistency
- Troubleshoot and resolve software issues reported by users or QA teams
- Contribute to sprint planning, stand-ups, and Agile ceremonies to drive team progress
- Stay updated with emerging technologies and tools to continuously improve development processes
Requirements
- A Bachelor’s or Master’s degree in Computer Science, Information Technology, or a related field
- At least 3 years of professional experience in software engineering
- Strong expertise in Java 17+ and proficiency with the Spring Framework, including Spring Boot
- Hands-on experience with build tools such as Maven or Gradle
- Familiarity with basic Unix commands and scripting
- Knowledge of SQL and experience with relational database platforms like Db2 and SQL Server
- Experience with ORM frameworks such as Hibernate, JPA, or Spring Data
- Familiarity with NoSQL databases like MongoDB or Redis
- Proven experience in designing and working with RESTful APIs and microservices architecture
- Understanding of Spring MVC or WebFlux for building modern web applications
- Experience documenting APIs using tools such as Swagger or OpenAPI
- Proficiency with Git version control systems, including platforms like GitHub
- Experience working with Azure or similar cloud-based platforms
- Familiarity with Agile collaboration tools such as JIRA and Confluence
- A strong understanding of Agile methodologies and an Agile mindset
- Fluency in English, both written and spoken, at a B2+ proficiency level or higher
Nice to have
- Knowledge of older Java versions, such as Java 7 and 8
- Experience with containerization tools like Docker and orchestration platforms such as Kubernetes
- Hands-on experience with CI/CD tools like Jenkins
- Familiarity with Helm for Kubernetes deployments
- Proficiency with testing frameworks and tools, including JUnit 4/5, Mockito, and WireMock
- Experience with API testing tools such as Postman or REST Assured
We offer
- International projects with top brands
- Work with global teams of highly skilled, diverse peers
- Healthcare benefits
- Employee financial programs
- Paid time off and sick leave
- Upskilling, reskilling and certification courses
- Unlimited access to the LinkedIn Learning library and 22,000+ courses
- Global career opportunities
- Volunteer and community involvement opportunities
- EPAM Employee Groups
- Award-winning culture recognized by Glassdoor, Newsweek and LinkedIn