Software Engineer - Java with Data Structures & Algorithms
EPAM · Bangalore
Collected role description
We're seeking a Software Engineer with expertise in Java and Data Structures & Algorithms to join our engineering team and support the creation and delivery of scalable, high-performance applications. Responsibilities Work as part of a software engineering team, contributing to builds through consistent development practices Identify and debug basic software components to resolve code defects Support the development, monitoring, and maintenance of software across test, integration, and production environments Automate deployment processes in test or production environments Comply with security and regulatory requirements Design and help implement APIs Apply best practices for automated unit, integration, and regression testing Take part in pull request reviews to maintain code quality Contribute to software development within an Agile team, influencing team goals and overall architecture Keep infrastructure safely extensible, scalable, and reliable while meeting SLAs for internal and external users Deliver software solutions that are testable, intuitive, and easy to maintain Requirements 4-6 years of experience in software development, testing, and implementation Bachelor's or Master's degree in Computer Science, Engineering, Information Systems, or a related STEM discipline Strong understanding of Java 8, Data Structures & Algorithms, and Microservices Solid experience with REST APIs, JSON, and Kafka Working knowledge of RDBMS and NoSQL technologies such as MongoDB, Redis, and PostgreSQL Proficiency with Spring Boot, Maven, and GIT Familiarity with Jenkins, GitHub Actions, and Agile development practices Strong understanding of Linux/Unix and Gradle/Maven Proven ability to build scalable, low-latency applications using multi-threaded, asynchronous, and reactive programming Hands-on experience deploying containerized applications to cloud environments using Kubernetes and Docker Solid knowledge of high availability techniques, profiling, and performance analysis Strong capabilities in Design Patterns, System Design, and Problem Solving
Collected experience requirement
4-6 years