Software Engineer - Java with Data Structures & Algorithms
EPAM Systems · State of Karnataka, India
Free to search · AI fit score against your CV · tailor your résumé in one click
EPAM Systems · State of Karnataka, India
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 Software Engineer with strong expertise in Java, Data Structures & Algorithms to join our software engineering team and contribute to the design, development, and delivery of scalable, high-performance applications. Responsibilities • Function as a member of a software engineering team by contributing to software builds through consistent development practices • Debug basic software components and identify code defects for remediation • Enable the development, support, and monitoring of software across test, integration, and production environments • Automate deployments in test or production environments • Adhere to security and regulatory requirements • Design and contribute to API implementations • Follow best practices for automated unit, integration and regression testing • Participate in pull request reviews to ensure quality code delivery • Build software as part of a nimble Agile team, with the opportunity to impact team goals and contribute to the overall architecture • Ensure infrastructure is safely extensible, scalable, reliable and meets SLAs for both external and internal users • Ensure software solutions are testable, intuitive, and easy to maintain Requirements • 4 to 6 years of software development, testing and implementation experience • Bachelor's or master's degree in Computer Science, Engineering, Information Systems, or a related STEM field • Proficiency in Java 8, Data Structures & Algorithms, and Microservices • Expertise in REST APIs, JSON, and Kafka • Knowledge of RDBMS & NoSQL database technologies such as MongoDB, Redis, and PostgreSQL • Skills in Spring Boot, Maven, and GIT • Familiarity with Jenkins, GitHub Actions, and Agile development methodologies • Understanding of Linux/Unix and Gradle/Maven • Hands-on experience implementing highly scalable, low latency software applications using multi-threaded, asynchronous & reactive programming • Practical experience deploying containerized software applications to cloud computing environments using Kubernetes and Docker • Background in high availability techniques, profiling, and performance analysis of applications • Competency in Design Patterns, System Design, and Problem Solving 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.)