Kai Wa Chan, Developer in Hong Kong, Hong Kong
Kai is available for hire
Hire Kai

Kai Wa Chan

Verified Expert  in Engineering

Software Developer

Location
Hong Kong, Hong Kong
Toptal Member Since
December 29, 2021

Kai is a product-focused Java back-end engineer and test enthusiast with experience in the payments and banking industry, working on mission-critical systems. At Goldman Sachs, he designed and built Kafka-based event-driven microservices to decouple lengthy business workflows, reducing onboarding time from months to ten minutes. Kai produces production-ready solutions that are functional, testable, observable, maintainable, extendable, and scalable.

Portfolio

Ygrene Energy Fund, Inc.
Spring Boot, Camunda BPM, Java, Angular, Amazon Web Services (AWS), Docker...
Latch
Java, Amazon Web Services (AWS), PostgreSQL, Spring Boot, Angular...
Goldman Sachs
Spring Boot, Amazon Web Services (AWS), JUnit, Microservices, Java...

Experience

Availability

Full-time

Preferred Environment

MacOS, Windows, Git, IntelliJ IDEA

The most amazing...

...tool I've worked on is an eCommerce payment system that runs 24/7 and transacted half a million GBP sales during Black Friday in 2018.

Work Experience

Senior Team Lead Developer (Springboot and Camunda)

2022 - 2022
Ygrene Energy Fund, Inc.
  • Transferred proprietary domain knowledge from the offshore Ruby on Rails development team to the product owner via Camunda BPMN.
  • Coached the architect and Ruby on Rails developers on the Camunda 8 workflow development, such as Java, BPMN, and other Camunda 8 cloud services.
  • Coached a DevOps engineer on Java development pipelines such as the Maven build and deploy pipeline and Dockerizing and parameterizing a Spring Boot application.
  • Established the Camunda 8 Spring-Zeebe integration project base, including testing utility, capability, and workflow deployment.
  • Designed and built the project funding slotting workflow and loan cost calculation workflow via Java and Camunda 8.
  • Inspected and discovered major correctness and maintainability issues in Spring Boot web API for the unsecured loans product line.
Technologies: Spring Boot, Camunda BPM, Java, Angular, Amazon Web Services (AWS), Docker, GitHub, Kubernetes, Java 11

Java Developer

2021 - 2022
Latch
  • Implemented Dwolla integration to support standard ACH deposit and rent payments. This includes funding source imbalance handling (ACH returns), destination account management, and asynchronous notifications.
  • Designed and implemented third-party lease and ledger data pipeline integration to support externalizing the rent payment service.
  • Designed and implemented Stripe Checkout and multiparty payments integration to support property facility booking service.
  • Implemented small front-end updates on the management and resident portal to provide rent payment user experience with Angular and React.
  • Oversaw the requirement refinement, design, implementation, and testing during SDLC, working closely with corresponding parties, including the product manager, development team, security team, and QA.
Technologies: Java, Amazon Web Services (AWS), PostgreSQL, Spring Boot, Angular, Message Queues, Play Framework, Spring Data JPA, gRPC, Amazon Simple Queue Service (SQS), Non-blocking I/O, Hibernate

Associate Software Engineer

2019 - 2021
Goldman Sachs
  • Built a solution to support API and UI-driven onboarding processes to Stripe Treasury banking as a service (BaaS).
  • Designed and built Kafka-based event-driven microservices to decouple lengthy business workflows, which reduced onboarding time from months to ten minutes.
  • Designed and built the Camunda maker-checker workflow library and standardized the process.
  • Designed and built the Camunda workflow library, handling and monitoring asynchronous acknowledgments.
  • Established a behavioral testing practice and regression tool to reduce manual testing efforts.
  • Researched the feasibility of a MongoDB client-side field-level encryption with Spring-data-MongoDB integration.
Technologies: Spring Boot, Amazon Web Services (AWS), JUnit, Microservices, Java, Apache Kafka, NoSQL, GitLab, REST APIs, Message Queues, Terraform, MongoDB, Cucumber, REST Assured, Amazon Elastic Container Service (Amazon ECS), Camunda BPM, Apache Maven, Digital Banking, Scrum, Spring, Databases, HashiCorp, CI/CD Pipelines, API Development, Java 11

Software Engineer (Payments Platform)

2017 - 2019
The Hut Group
  • Designed and built an API to convert custom rule expressions to trigger fraud measures (3DS, CV2) for card payments.
  • Assisted a new card provider and payment 3DS 1.0 integration to enable direct card payment for specific sites to reduce transaction costs by around 2% and reduce chargebacks.
  • Migrated ApplePay payment to another provider to align with the provider migration.
  • Broke down and rewrote parts of a monolith toward microservices architecture to support future scaling and SaaS.
  • Maintained an internal payments tool UI (payment method configuration and auditing) with AngularJS and Thymeleaf.
Technologies: Java, Spring Boot, ActiveMQ, Microsoft SQL Server, SQL, Apache Maven, Selenium, WireMock, Payment APIs, Card Payments, Git, Kanban, Kibana, Grafana, Test-driven Development (TDD), JUnit, Mockito, AngularJS, Jenkins, REST APIs, Message Queues, JSON, Spring JDBC, Continuous Integration (CI), Linux

Client Onboarding | Transaction Banking

https://developer.gs.com/discover/txb
A digital-first corporate banking as a service (BaaS) platform built from scratch. I built solutions that revolutionized the traditional onboarding and account opening experience, reducing these processes' time to minutes from the industry standard of months. This was achieved by supporting external clients (partners) and internal operations to perform self-service driven by API and UI.

Payments | eCommerce

https://www.thghosting.com/products/thg-commerce-platform/
As part of the payment team, I was in charge of payment methods and providers' integrations such as card, Apple Pay, Alipay, WeChat Pay, and Google Pay. Apart from an integration perspective, achieving high availability, fault-tolerance, scalability, and providing observability to both the business and team were also my main deliverables.

ACH Payment Integration | Residential Property Leasing

This is a minimum viable product to support one-time residential lease payment on web or mobile platforms. I joined the team in the late waterfall stage. I was in charge of resolving bugs and missing scenarios on Plaid authentication and Dwolla ACH and balance transfer.

Loan Eligibility Checking and Slotting Process via Camunda 8

https://prequalification.ygrene.com/prequal
A loan eligibility checking and slotting process orchestrated by Camunda 8 in the back end. I led the back-end development team in Spring Boot and Camunda and mentored and guided offshore development resources from different vendors to extract core proprietary orchestration logic.
2015 - 2017

Bachelor's Degree in Computer Science

Cardiff University - Cardiff, Wales, UK

Libraries/APIs

PostgREST, REST APIs, API Development

Tools

WireMock, Apache Maven, GitLab, Amazon Simple Queue Service (SQS), Git, IntelliJ IDEA, GitLab CI/CD, ActiveMQ, Kibana, Grafana, Camunda BPM, Jenkins, Terraform, Cucumber, REST Assured, Amazon Elastic Container Service (Amazon ECS), HashiCorp, GitHub

Frameworks

Spring Boot, JUnit, Mockito, Swagger, Spring JDBC, Selenium, AngularJS, Play, gRPC, Angular, Play Framework, Spring, Hibernate

Paradigms

Object-oriented Programming (OOP), REST, Test-driven Development (TDD), Microservices, Kanban, Scrum, Continuous Integration (CI)

Languages

Java, SQL, Java 11

Platforms

Amazon Web Services (AWS), Apache Kafka, MacOS, Windows, Docker, Kubernetes, Linux

Storage

NoSQL, Spring Data JPA, Microsoft SQL Server, PostgreSQL, JSON, MongoDB, Databases

Other

Back-end, Workflow, Payment APIs, Message Queues, Networks, Card Payments, Finance, Digital Banking, CI/CD Pipelines, Non-blocking I/O, Zeebe

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring