Sunnyvale, California, United States
• Designed and built chaining asynchronous task system with high fault tolerant and scalability. Developed task coordinator using Java Concurrency and Spring AOP to manage task pools, dispatch tasks via SQS or Kafka and monitor workers’ results with 100 - 200 QPS.
• Designed and built workers as micro services using Spring Boot to pull and process clients’ metadata from multiple cloud services. Store user data and context in Postgres and Elastic Search.
• Lead projects, communicated with stakeholders, designed architecture, code reviews, and coordinated tasks by following Scrum methodology. Responsible for team member onboarding and interviews.
• Setup test framework using JUnit and Mockito for automated unit and integration testing.
• Implemented OAuth2 Service to integrated with company single sign on service. Published existing APIs using Swagger.
• Developed Rest APIs. Setup Jenkins, Kubernetes to deploy dockers on to AWS ECS for CI/CD. Solved performance issues by analyzing jmap and jstack.