Overview
I am a back-end developer in the regional Platform Engineering team of Manulife Enterprise Technology & Services (ETS) (a.k.a. Asia Technology Office) who is responsible for (1) completing the PCF-to-AKS migration for hundreds of microservices with an offshore team, and (2) developing and maintaining Manulife Asia's in-house Spring Boot/Cloud-based application framework and configuration management architecture for the whole Manulife Asia.Position: Senior Associate - Projects
Contract period: 2021-10-18 ~ now
Work location: Manulife Tower
Team size: 3 ~ 30
Project 1: PCF-to-AKS cloud migration of Spring Cloud microservices
Period: 2021-10-18 ~ 2022-8-31
Team size: 30
Responsibilities:
• Responsible for the technical part of migration, including troubleshooting, root cause analysis and providing resolutions to migration failures related to Spring Boot, Jenkins, PaaS services, etc.
• Co-lead an offshore team of 15~30 developers with another team lead on client site to finish the project.
➣ Guide the offshore team to complete all necessary code changes and do code reviews.
➣ Standardize and document migration procedures and onboard new team members.
• Hold meetings with application teams from different APAC regions to obtain information, troubleshoot issues and report migration progress.
• Leverage DevOps team's Jenkins shared library for CI/CD and create freestyle pipelines when necessary.
• Report weekly progress to Cognizant and client's project managers.
Project 2: Client's custom application framework for platform standardization (current project)
Period: 2022-9-1 ~ now
Team size: 3 ~ 10
Responsibilities:
• Develop and maintain numerous Maven Java shared libraries that thousands of client's Spring Boot/Cloud microservices are based on while following client's engineering standards (e.g. 12-factor apps).
➣ Responsible for the integration with Alibaba Cloud as per client’s multi-cloud strategy.
• Work with solution designer to finalize new architecture design and database schema for innovative projects.
• Implement and productionize new features that make use of cloud PaaS services.
➣ e.g. Multi-tenant and multi-cloud Spring Cloud Config solution, Azure Workload Identity, Spring Boot with OpenTelemetry.
• Periodically upgrade Spring Boot version in the framework product, fix CVEs, and provide adequate documentation to client’s internal developers from different market teams.
➣ e.g. Spring-based libraries, shared microservices, shared Docker base images, New Relic Java agent.
• Write and execute REST API tests with JMeter and QMetry (BDD) on microservices.
• Provide L3 technical support to handle reported issues, including troubleshooting and resolution.
• Practice agile and engage in different sprint activities.
• Guide several offshore team members with less development experience to complete their assigned tasks.
Technologies
• Tech stack: OpenJDK 11, 17 and 21, Spring Boot, Spring Cloud, JDBC/JPA/Hibernate, Docker, Azure K8s (AKS), Azure Service Bus, Azure Key Vault, Azure SQL, MongoDB, New Relic APM, Azure APIM
• Tools: Kubectl, Helm, Docker Desktop, JMeter, QMetry, Postman, cURL, Jenkins, Git, Maven
Photos