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
-
Update JIRA regularly 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
-
Explore new technologies and trends to enhance skills and solutions
-
Manage end-to-end release processes efficiently
Requirements
-
5-8 years of hands-on experience with Java, Spring and Golang for multithreaded application development
-
Competency in creating and integrating APIs using REST/SOAP, Thrift and gRPC for binary payloads
-
Knowledge of object-oriented programming and design patterns across core and enterprise levels
-
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 and Prometheus with additional exposure to Splunk and Graphite for dashboard and log-based debugging
-
Experience with version control systems like GIT and knowledge of monorepos
-
Strong communication skills and proven ability to collaborate with cross-functional teams with excellent English communication
Nice to have
-
Understanding of Java resource optimization, memory management and caching frameworks
-
Proficiency in troubleshooting production issues including root cause analysis
-
Knowledge of Java Multithreading, Microservices architecture and design patterns
-
Familiarity with tools and processes like Maven, Jenkins and GITLab/GitHub
-
Understanding of security concepts such as authentication, authorization and SSL along with 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.)