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 seeking a highly skilled and driven Senior Software Engineer specializing in Java and Azure who is ready to contribute to our cutting-edge projects.
The ideal candidate will take ownership of delivering robust, scalable, and reliable backend solutions while collaborating across teams to meet business objectives in a fast-paced, dynamic environment.
Responsibilities
-
Analyze user requirements to shape application design
-
Define application objectives and ensure alignment with business goals
-
Troubleshoot production issues and perform root cause analysis
-
Develop and test high-quality software, adhering to industry standards
-
Regularly update JIRA on project progress and task status
-
Debug and resolve complex technical challenges effectively
-
Design and execute scalable Java-based applications and microservices
-
Produce thorough design documentation to support team and stakeholders
-
Recommend application improvements and best practices
-
Continuously seek new technologies and trends to enhance skills and solutions
-
Navigate and manage end-to-end release processes efficiently
Requirements
-
5-8 years of hands-on experience with Java, open-source frameworks like Spring, and multithreaded application development, with added experience in Go Lang
-
Competency in creating and integrating APIs using REST/SOAP and exposure to binary payloads with frameworks such as Thrift or gRPC
-
Working knowledge of object-oriented programming and design patterns (core and enterprise)
-
At least 3 years of experience building and managing microservices and distributed systems at high scale
-
Expertise in resiliency patterns such as throttling, circuit breaker, and bulk heading, including CPU/memory profiling and error handling
-
Skills in monitoring/alerting tools such as Grafana, Kibana, Prometheus, Splunk, or Graphite with the ability to utilize dashboards and logs for debugging
-
Experience with version control systems like GIT and knowledge of monorepos is an advantage
-
Strong communication skills and proven ability to collaborate with cross-functional teams; excellent English communication is essential
Nice to have
-
Deep understanding of Java resource optimization, memory management, and caching frameworks
-
Proficient troubleshooting skills for production issues, including root cause analysis
-
Advanced knowledge of Java Multithreading and Microservices architecture
-
Expertise in Java design patterns and best practices
-
Familiarity with tools and processes like Maven, Jenkins, GITLab/GitHub
-
Understanding of security concepts (authentication, authorization, SSL), web service proxies, and secured token exchanges
We offer
-
Opportunity to work on technical challenges that may impact across geographies
-
Vast opportunities for self-development: online university, knowledge sharing opportunities globally, learning opportunities through external certifications
-
Opportunity to share your ideas on international platforms
-
Sponsored Tech Talks & Hackathons
-
Unlimited access to LinkedIn learning solutions
-
Possibility to relocate to any EPAM office for short and long-term projects
-
Focused individual development
-
Benefit package:
-
Health benefits
-
Retirement benefits
-
Paid time off
-
Flexible benefits
-
Forums to explore beyond work passion (CSR, photography, painting, sports, etc.)