CV
Summary
- For 10 years working as a full-stack engineer, with extensive experience in Java ecosystem, familiar with technologies ranging from front-end to back-end, knowledgeable and experienced in activities throughout whole SDLC as well as state-of-the-art software engineering tooling and practices.
- Strength in tools across full software delivery lifecycle, e.g. IDE, source control, CI/CD, testing, code quality, defect management
- Polyglot, fluent in multiple development languages, such as Java, JavaScript, TypeScript, Groovy
- Proficient in full stack development (e.g. database, services and user interface) or mastery in one layer of the stack with sound understanding of other layers
- Follow a design first approach while focusing on good practice for testable and readable code.
- Continuous learning, passionate about technology and aware of latest industry trend.
Career Objective
Employment
Bendigo and Adelaide Bank (Agribusiness)
-
Delegated Lending Authority (2021)
A sophisticated tiered design of lending authorities for credit approval decisions
All lending authorities are held jointly and therefore credit decisions approved are jointly the responsibility of the holders. All applications sourced from subordinate staff must carry the recommendation of that officer for the application to proceed.
-
Highlights
- Work throughout all SDLC stages from design to delivery
- BDD with Groovy & Spock Framework for specification development and testing
-
Tech Stack
The changes are implemented on the major lending system, which is a monolithic Spring Boot application.
- Java 8
- Spring Boot
- Groovy
- Spock Framework
- SQL Server (AWS RDS)
-
-
Regional Investment Corporation (2021)
The new module communicates with major loan processing system via REST web service, and interact with RIC customers via new UI.
-
Highlights
- Implement new admin UI for RIC configurability
- Analysis and design of system functions
- REST API design
- Cloud Native approach
-
Tech Stack
The RIC web application is a newly written Spring Boot application. It talks to ABS for underlying loan processing.
- Java 8
- Spring Boot
- REST web service, OpenAPI
- React, TypeScript
- Kubernetes (AWS EKS)
-
-
Return on Equity Pricing (2020)
Implement calculation of return on equity in loan processing system
-
Highlights
Implement the functionality with an event-driven design
-
Tech Stack
- Java 8
- Spring Boot
- AWS Lambda, S3, CloudFormation
- JMS / ActiveMQ
- Apache Camel
-
-
Banking Code of Practice - Guarantor Workflow (2019)
A new process introduced in the system for better collaboration between sales and operations teams to ensure compliance with Banking Code of Practice on interactions with guarantors.
-
Highlights
- Heavily involved in requirements analysis with business stakeholders and developed system specifications
- Work throughout all SDLC stages from design to delivery, successful delivery despite strict time constraints
- BDD with Groovy & Spock Framework for specification development and testing
-
Tech Stack
- Java 8
- Spring Boot
- SQL Server
- Groovy, Spock Framework
-
-
Document Management Overhaul (2018)
A redesign of the document search and management functionality
-
Highlights
- Information retrieval from different document formats
- Tokenisation of document text for automatic indexing
- New UI for better user experience
-
Tech Stack
- Java 8
- Spring Boot
- Vaadin
- SQL Server
- Apache OpenNLP
- Apache PDFBox, POI
-
SACE Board
-
SACE modernisation - Online Investigations Marking
A project intended to digitise all marking related activities, such as enabling exam markers to assess scripts of written examinations online under the guidance of marking scheme.
-
Highlights
- Sophisticated OO design of important components, work spanning across frontend and backend
- Automated acceptance testing with Geb
-
Tech Stack
- Java 8
- Spring Boot
- SQL Server
- jQuery
- Geb / Selenium
-
SONY China Software Center, Shanghai
-
Web Review Analysis System
The system periodically crawls popular e-commerce websites in China, such as JD.com and Amazon for user review text and transforms the information into structured data. User is able to get a variety of data visualisations regarding product sales, reviews, and user sentiment in the system.
-
Highlights
- Frontend SPA (Single Page Application) with AngularJS
- REST API with Hypermedia
-
Tech Stack
jQuery AngularJS Java 8 Spring Boot JPA (Hibernate) MySQL Apache POI
-
-
CatApple SONY VAIO Customer Response Data Analysis System
A data driven analysis system processing customer feedback with machine learning algorithms, presenting a variety of data visualisations for business insight.
-
Highlights
- Convert machine learning algorithms Python implementation to Java for performance
- Batch processing data via ETL pipelines
- Data visualisations
- NLP techniques for information retrieval and text processing
- Work throughout design to delivery
-
Tech Stack
Vaadin D3.js MySQL Spring Framework JPA (Hibernate) Jython (Python on JVM) Groovy Apache POI Apache OpenNLP
-
-
Android Application Dogfooding Service
A suite of web application, Android mobile app and Windows GUI to collect user behaviours, feedback and metrics for developers, providing a platform to publish Android apps like a miniature app store.
-
Highlights
- Develop all three apps: web app, Android mobile app and Windows GUI client
- REST API
-
Tech Stack
Android SDK Bootstrap jQuery Netbeans RCP Spring Framework Spring Security REST API Spring Data JPA JPA / Hibernate MySQL
-
Dragonsoft, Shanghai
-
Daliu Coal Mine Information Management System
A bespoke ERP system built for a mining corporation
-
Highlights
- Leader of the team of 4, spearheading design and development
- Scala
- AspectJ for AOP
-
Tech Stack
Vaadin Liferay JPA (Hibernate) MySQL AspectJ Scala Apache Maven Spring Framework
-
-
Currensee (currensee.com)
A social foreign exchange platform based in US, on which traders collaborate on trading strategies, and techniques, and allow them to make trading decisions based on actions of traders whom they follow.
-
Highlights
- Working as a full-time frontend developer
- High standard frontend project work
-
Tech Stack
Spring MVC Spring Framework YUI JPA/Hibernate Google Analytics Google Website Optimizer (A/B testing)
-
-
Xiaodai (microfinance)
A social lending platform built on the notion of microfinance, for lenders and borrowers to communicate with each other and perform relevant financial transactions.
-
Highlights
- Infrastructure setup for the project, including CI/CD, source repo, artifact repo, issue tracker
- Work throughout all SDLC stages from design to delivery
-
Tech Stack
Spring Framework Spring Security Eclipse BIRT AspectJ JPA MySQL Apache Maven
-
Education
Certificates
- AWS Certified Developer Associate (opens in a new tab)
- Oracle Certified Professional: Java SE 11 Developer (OCP) (opens in a new tab)
- Sun Certified Web Component Developer for the Java Platform, Enterprise Edition 5 (SCWCD)
- Sun Certified Programmer for the Java Platform, Standard Edition 5.0 (SCJP)
Skills
Self-introduction
- I started working as an intern software engineer in 2009. It was at Dragonsoft, Shanghai.
- My first project was microfinance, which is a social lending platform on which lenders and borrowers can make transactions.