Publicis Sapient - Senior Java Developer - Microservices Architecture
Sapient (publicissapient) Publicis Sapient - Senior Java Developer - Microservices Architecture
Description
Job Description :
We are looking for a Java Microservices Developer to join our team of bright thinkers and doers. You'll use your problem-solving creativity to design, architect, and develop high-end technology solutions that solve our clients' most complex and challenging problems across different industries.
Your Impact :
- Drive the design, planning, and implementation of multifaceted applications, giving you breadth and depth of knowledge across the entire project lifecycle.
- Combine your technical expertise and problem-solving passion to work closely with clients, turning complex ideas into end-to-end solutions that transform our clients' business.
- Constantly innovate and evaluate emerging technologies and methods to provide scalable and elegant solutions that help clients achieve their business goals.
Mandatory Qualifications :
- 5+ years of software development experience
- Strong development skills in Java JDK 1.8 or above
- Java fundamentals like Exceptional handling, Serialization/Deserialization and Immutability concepts
- Good fundamental knowledge in Enums, Collections, Annotations, Generics, Auto boxing and Data Structure
- Database RDBMS/No SQL (SQL, Joins, Indexing)
- Multithreading (Re-entrant Lock, Fork & Join, Sync, Executor Framework)
- Spring Core & Spring Boot, security, transactions
- Hands-on experience with JMS (Kafka, ActiveMQ, RabbitMQ etc)
- Hands-on experience with event driven design pattern, producer/consumer development, partitioning, consumer group management, retry handling, and troubleshooting production issues.
- Memory Mgmt (JVM configuration, Profiling, GC), profiling, Perf tunning, Testing, Jmeter/similar tool)
- Devops (CI/CD: Maven/Gradle, Jenkins, Quality plugins, Docker and containersization)
- Logical/Analytical skills. Thorough understanding of OOPS concepts, Design principles and implementation of different type of Design patterns.
- Hands-on experience with any of the logging frameworks (SLF4J/LogBack/Log4j)
- Experience of writing Junit test cases using Mockito / Powermock frameworks. Should have practical experience with Maven/Gradle and knowledge of version control systems like Git/SVN etc.
- Good communication skills and ability to work with global teams to define and deliver on projects. Sound understanding/experience in software development process, test-driven development.
- Depth of experience on current/recent projects - should be able to clearly articulate the end-to-end architecture of at least one project they have worked on in the last 2 years.
- Cloud - AWS is mandatory
- Deep working knowledge of EKS, ECS / Fargate, MSK, VPC, IAM, RDS / Aurora, S3, Secrets Manager, Parameter Store, CloudWatch, KMS, Route 53, ALB/NLB, CloudFront, Api Gateway
- Strong Experience in Microservices. This would include familiarity with microservice design patterns, building fault tolerant and scalable applications.
Highly Desirable :
- Infrastructure as code with Terraform AWS CDK
- Comfortable reading and writing IAC code using AWS CDK.
- Exposure to migrating on prem applications to AWS is a bonus
Skills
- ActiveMQ
- API
- API Gateway
- Aurora
- AWS
- CDK
- CI/CD
- Cloud
- CloudFront
- CloudWatch
- Design Patterns
- DevOps
- Docker
- ECS
- EKS
- Event Driven Architecture
- Fargate
- Git
- Gradle
- IAM
- Infrastructure as Code
- Java
- Jenkins
- JMeter
- Jms
- JUnit
- JVM
- Kafka
- Maven
- Microservices
- Mockito
- Multithreading
- RabbitMQ
- RDBMS
- RDS
- S3
- Spring
- SQL
- SVN
- TDD
- Terraform
- Version Control
- VPC