
Senior Software Engineer - Java with Data Structures & Algorithms
Primary stack
Job description
About the Position
We are seeking a Senior 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
- 5 to 8 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.)
© EPAM. This job description was sourced from the employer's public career page. TheJob is not the employer — we index the posting and route candidates to the source. All content rights and hiring decisions belong to the employer.
EPAM helps organizations innovate their business processes and rethink the way they manage their businesses so they can remain competitive in this new digital age.
More at EPAM
All 3139 roles
Solution Architect - HCL Commerce
EPAM · India

Lead Java Automation Test Engineer with AI
EPAM · India

Lead Software Developer - Java with AWS Cloud
EPAM · India

Solution Architect – Java Full Stack
EPAM · India