Description

About the Role:

We are looking for a Java Architect with deep expertise in AWS, GCP, and containerization to lead and architect the migration of Java applications from AWS to Google Cloud Platform (GCP). In this role, you will evaluate existing infrastructure, design cloud migration strategies, and oversee the transition of Java-based applications to GCP, optimizing for performance, scalability, and cost-efficiency. You will also ensure the implementation of best practices for containerization, microservices, and DevOps automation during the migration process.

Key Responsibilities:

  • Assessment of Existing Infrastructure: Perform a thorough evaluation of the current AWS infrastructure, focusing on Java applications running on EC2 instances, their configurations, dependencies, and integrations.
  • Cloud Migration Strategy: Develop a detailed migration strategy to transition Java applications from AWS to GCP with minimal downtime, leveraging best practices for cloud migration and optimizing the architecture for the new environment.
  • GCP Service Mapping: Work closely with DevOps and cloud teams to select and map equivalent GCP services to replace AWS components like EC2, S3, RDS, and others.
  • Re-architecture and Refactoring: Re-architect or refactor Java applications, if necessary, to optimize performance, scalability, and cost-effectiveness in the GCP environment, leveraging services like GKE (Google Kubernetes Engine), Cloud Run, and Compute Engine.
  • Containerization & Orchestration: Lead the migration of Java applications to containerized environments using Docker and Kubernetes (GKE), ensuring containers are optimized for performance and security in GCP.
  • CI/CD Pipelines: Set up and automate CI/CD pipelines using tools like Jenkins and Terraform to ensure seamless deployment, scaling, and monitoring of Java applications in the GCP environment.
  • Performance Tuning: Analyze and optimize the performance of containerized Java applications, focusing on load balancing, auto-scaling, and fault tolerance in GCP.
  • Cloud-Native Architecture: Implement and guide the team on cloud-native architectures, ensuring Java applications are optimized to leverage GCP’s managed services, including Cloud SQL, Pub/Sub, and Google Cloud networking features.
  • Security and Compliance: Ensure that all Java applications follow security best practices, including IAM roles, encryption, VPC configurations, and other security measures in GCP.
  • Monitoring & Logging: Set up comprehensive monitoring, logging, and alerting systems using Cloud Monitoring and Cloud Logging to track the health and performance of migrated applications.
  • Troubleshooting & Support: Provide solutions for application reliability, troubleshoot performance issues during and post-migration, and ensure operational continuity.
  • Cross-Functional Collaboration: Work closely with development, DevOps, and cloud engineering teams to ensure the migration process is seamless and effective.
  • Technical Leadership: Act as a technical leader, providing guidance on best practices for running Java applications in GCP, and overseeing architectural decisions throughout the migration.
  • Documentation & Knowledge Sharing: Create and maintain documentation for the migration process, including architecture diagrams, migration steps, and post-migration best practices. Share knowledge with team members on GCP and containerization best practices.

Required Skills & Experience:

  • 10+ years of experience in Java development and architecture, including extensive experience with Java SE/EE, Spring, Hibernate, and legacy Java applications.
  • 5+ years of relevant experience with cloud infrastructure, focusing on AWS and GCP services such as EC2, S3, RDS, Compute Engine, GKE, Cloud SQL, and Cloud Storage.
  • Hands-on experience with Docker and Kubernetes (GKE), including deploying and managing containerized Java applications in production environments.
  • Expertise in using CI/CD tools like Jenkins and Terraform to automate deployment pipelines and infrastructure provisioning.
  • Experience with AWS RDS or DynamoDB and migrating databases to GCP services like Cloud SQL or Datastore.
  • Strong understanding of microservices architecture, RESTful APIs, and transitioning monolithic Java applications to microservices-based architectures.
  • Proven experience in large-scale cloud migration projects, particularly from AWS to GCP or other cloud providers.
  • In-depth knowledge of cloud security practices, including IAM roles, VPC configurations, encryption, and securing Java applications in the cloud.
  • Familiarity with GCP networking tools like VPC, Cloud Armor, and Identity-Aware Proxy for managing secure connections.
  • Ability to optimize Java applications for the cloud, including JVM tuning and performance scaling.
  • Strong leadership and collaboration skills to work across teams, communicate technical concepts effectively, and lead the migration project.
  • Excellent troubleshooting skills for diagnosing and resolving performance or operational issues in cloud environments.

Preferred Skills:

  • Familiarity with cloud-native architectures and microservices running in GCP.
  • Experience with Cloud Functions, Cloud Pub/Sub, and other serverless options in GCP.
  • Familiarity with GCP’s managed services such as BigQuery and Dataflow.

Education

Any Graduate