Vacancy catalog
EPAM
Open role

Lead Software Engineer - Java with Data Structures & Algorithms

EPAMIndia, Hyderabad
Work model
Office
Experience
5+ years
Employment
Not specified
Compensation
Not disclosed
Technology signal
19 tags

Technology context

19

Parsed from the vacancy text; ordered by relevance to this role.

JavaKubernetesCloudKafkaDockerMicroservicesRedisAPIPostgreSQLSpringJenkinsLinuxRESTCI/CDMongoDBAutomationNoSQLGitMicroservice Architecture Style

Full listing

Role description

We are seeking an experienced Lead Software Engineer to join our team and drive the development of highly scalable software applications using Java, Data Structures & Algorithms, and modern engineering practices. This role involves building server-side applications, mentoring team members, and contributing to the overall architecture while ensuring our software solutions meet high standards of quality, performance, and reliability.

Responsibilities

  • Function as 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 where there is every 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

  • 8 to 12 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
  • Expertise in Java 8, Data Structures & Algorithms, and Spring Boot
  • Proficiency in REST APIs, JSON, and Kafka
  • Knowledge of RDBMS and NoSQL database technologies such as MongoDB, Redis, and PostgreSQL
  • Familiarity with GIT, Maven, and Jenkins
  • Understanding of Linux/Unix, Gradle/Maven, and Agile development methodologies
  • Hands-on experience in 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 and implementation knowledge
  • Experience in profiling / performance analysis of applications
  • Commitment to modern software practices of continuous integration, automated/repeatable testing and collaborative work environments
  • Ability to think abstractly and deal with ambiguous/under-defined problems, enabling business capabilities through innovation
  • Demonstrated willingness to learn innovative technologies and takes pride in fast development of working software
  • Excellent written and verbal communications skills
  • Familiarity with CI/CD automation tools such as Jenkins and GitHub Actions