Job Description, Responsibilities & Requirements
About the Position
We are seeking a highly skilled and motivated Backend Java Developer with AWS expertise to join our dynamic engineering team. In this role, you will be responsible for designing, developing, and deploying scalable backend services and microservices that power our core applications. You will collaborate closely with cross-functional teams-including front-end developers, DevOps engineers, and product managers-to deliver robust, high-performance, and cloud-native software solutions.
Responsibilities
- Application Development: Design, build, and maintain high-performing, reliable, and secure Java-based applications and microservices using the Spring Boot framework.
- Cloud Architecture: Architect, deploy, and maintain cloud-native applications on AWS, utilizing services such as EC2, S3, Lambda, RDS, DynamoDB, API Gateway, and ECS/EKS.
- API Design: Develop and document robust RESTful APIs and web services for seamless integration with front-end applications and third-party systems.
- Containerization & Orchestration: Package applications using Docker and manage containerized deployments using Kubernetes. Ensure seamless scaling and self-healing of services.
- Database Optimization: Design effective data models and optimize database interactions using SQL (e.g., PostgreSQL, MySQL) and NoSQL databases, alongside ORM tools like Hibernate/JPA.
- Code Quality & Testing: Write clean, modular, and testable code. Implement comprehensive unit, integration, and end-to-end tests using frameworks like JUnit and Mockito.
- DevOps & CI/CD: Collaborate with operations teams to build and maintain automated CI/CD pipelines (e.g., Jenkins, GitHub Actions, AWS CodePipeline) and support containerization efforts using Docker and Kubernetes.
- Troubleshooting & Performance: Monitor system health, identify bottlenecks, debug production issues, and implement performance-tuning strategies in distributed systems.
- Collaboration & Mentorship: Participate actively in Agile/Scrum ceremonies, conduct thorough peer code reviews, and help mentor junior engineering staff.
- Observability & Monitoring: Implement distributed tracing, central logging, and monitoring (using tools like AWS CloudWatch, Datadog, Prometheus, or Grafana) to ensure system reliability and rapid debugging.
Requirements
- Experience: 4-12 years of professional software development experience focusing on backend engineering.
- Core Java: Deep understanding of Java (Version 17 or higher), Object-Oriented Programming (OOP) principles, design patterns, and multithreading.
- Spring Ecosystem: Extensive hands-on experience with Spring Boot, Spring Core, Spring MVC, Spring Data JPA, and Spring Security.
We Offer
- Competitive compensation
- Comprehensive benefits program including retirement plans, financial education, and more
- Opportunities for professional growth and career development
- A supportive and inclusive work environment
About the Company
Cognizant (Nasdaq: CTSH) is an AI Builder and technology services provider, bridging the gap between AI investment and enterprise value by building full-stack AI solutions for our clients. Our deep industry, process, and engineering expertise enables us to build an organization’s unique context into technology systems that amplify human potential, drive tangible outcomes, and keep global enterprises ahead in a fast-changing world. See how at cognizant.ai or follow us on Twitter.
Application Process
- Apply to the right opportunity: Find an open role that matches your skills and career goals and show us why you’re the person for the job. Don’t see the right opportunity? Consider joining our Talent Community.
- Connect with your recruiter: If one of our recruiters sees a fit, they’ll set up a short intro call to learn more about you and how your experiences and skills match the role.
- Show off your skills: If you and our team would like to continue the process, you’ll interview with our hiring team. Some roles may also require technical assessments and/or client interviews.
- Decision time: Our team will then review each candidate’s potential to succeed in the role. This step may take some time because we want to find the right fit for both you and us-but you can count on us to keep you updated.