
Overview
Overview
This position is for a Lead Software Engineer responsible for Java development,
software deployment in AWS, and migration of legacy software to a cloud-native
architecture for a long-term project with a U.S. client. The job location is Trivandrum,
India. The candidate will work closely with the existing project team, handling both
technical and management aspects. Responsibilities include requirement elicitation,
software architecture design, development, code reviews, deployment in AWS, and
modernization of legacy applications. The candidate will be responsible for completing
each assigned task while ensuring high-quality deliverables. Strong self-initiative,
decision-making, and self-direction skills are required to work with minimal supervision,
along with a proactive “go-getter” attitude.
Job Responsibilities
- Perform software requirements analysis and define both functional and
non-functional requirements for the project.
- Analyze requirements to create effective solutions and software architecture
designs.
- Write high-quality production code and perform developer-level verification.
- Understand legacy source code written in older versions of Java and propose
new architecture for modernization using cloud-native principles.
- Participate in software deployment activities in AWS.
- Collaborate with the customer's DevOps team to perform end-to-end software
deployment.
- Clearly communicate requirements and set expectations for deliverables.
- Ensure on-time delivery of high-quality products.
- Work closely with stakeholders, including customers, to ensure successful project
execution.
- Manage priority changes and conflicts gracefully with all stakeholders.
- Address customer escalations and think quickly to identify and resolve product
issues.
- Proactively suggest and utilize tools and systems to improve quality and
productivity.
- Stay updated on relevant technology trends and process advancements.
Qualifications and Requirements
- More than six years of experience in Core Java development.
- Strong experience in Object-Oriented Programming (OOP) concepts.
- Strong expertise in design patterns.
- More than three years of hands-on experience in AWS, mainly in the following
services:
o Compute Services: EC2, Elastic Beanstalk, ECS (with EC2 and Fargate),
EKS (with EC2 and Fargate), Lambda
o Storage Services: S3
o Database Services: RDS
o Networking and Content Delivery: ALB, NLB, Security Groups, CloudFront
o Application Integration: SNS, SQS, IoT Core
o Monitoring and Management: CloudWatch, CloudFormation
o Managed Healthcare Service: AHI
- Strong knowledge in Cloud security.
- Experience in creating CI/CD pipelines using GitLab.
- Experience in Infrastructure as Code (IaC) using CloudFormation and Terraform.
- Experience in containerizing Java services.
- Experience in container lifecycle management.
- Hands-on experience with version control systems like Git.
- Strong expertise in Kubernetes principles.
- Experience developing Web APIs and RESTful services using Spring Boot.
- Experience with JavaScript.
- Experience with relational databases such as SQL Server, PostgreSQL, and
document databases like MongoDB.
- Experience working with ORMs (Object Relational Mappers).
- Experience with code quality tools and unit testing frameworks.
- Good understanding of Software Development Life Cycles (SDLC), version
control, and traceability.
- Experience developing software under Agile methodologies.
- Experience deploying applications using application servers such as Tomcat and
JBoss.
- Experience working with Linux-based systems such as Debian and Ubuntu.
- Experience in writing and understanding shell scripts.
- Experience with healthcare domain standards (such as DICOM, HL7, FHIR) is a
plus.
- Experience with SOAP-based web services is an added advantage.
- Experience with communication protocols like gRPC is an added advantage.
- Experience using Java Native Interface (JNI) is an added advantage.
- Experience with Google Web Toolkit (GWT) is an added advantage.
- Knowledgeable and well-versed with various development tools for designing,
coding, debugging, troubleshooting, testing, bug tracking, collaboration, and
source control