Experience

               
         

AIA Innovation Lab

Senior Specialist • China • Dec, 2017 - Present

         

Financial Information eXchange Platform

         
               
  • Different BUs in AIA that evolve their systems over time can find themselves with a poorly planned architecture that handles short-term tactical needs sub-optimally while holding the company back from scaling efficiently over the long term. it slows down the company's ability to grow. Thus it is essential to have separate applications integrated around a single codebase, database and business process.
  • I joined AIA innovation Lab as an Senior Specialist. One of my major responsibility is to help company to find feasible solutions to integrate all exisisting resources into a distributed system. it allows BUs in different regions to exchange their informations in a secure fasion, meanwhile any personal information can be kept confidential. BUs can only share the mininum information allowed by law.
         
         

HSBC GBM (Global Banking and Marketing)

Development Engineer • China • Apr, 2017 - Dec, 2017

         

Financial Information eXchange (FIX) Engine

         
               
  • FIX Engine is Java based and running on a Linux platform
  • It enables HSBC’s institutional clients to connect and transact through co-located infrastructure within the same datacentre.
  •  
  • FIX Engine will exchange messages, stream prices to clients and receive client deals
         

IBM CIO BT/IT (Chief Information Office Business Transformation and Information Technology)

Development Engineer • China • Oct, 2014 - Apr, 2017

Developing & Deploying CRM system

  • Building PHP back-end server logic
  • creating SOAP/RESTful interfaces for mobile
  • Implementing Data Migration
  • Designing front-end web application

Continuous Integration Auto Testing System

  • In order to tune our Agile process to release iteratively, we decided to spend some time looking at how we could introduce continuous integration into our Projects. Thus I created the system by using Java, Python, Shell, Git and Docker based on 150+ Cloud Servers.

UNSW IT Center (The University of New South Wales)

Software Engineer - part-time • Dec, 2012 — Jun, 2013

Science,Research,Universities

  • Developing campus-wide programs.
  • Support multiple systems users and performing general troubleshooting duties.
  • Implementing Data Migration

Education

University of New South Wales, Faculty of Engineering(QS Ranking: 46 • Sydney, Australia)

Master of Information Technology • Sep, 2011 — Sep, 2013

Professional Recognition: Australian Computer Society

  • 1. E-commerce (E-Enterprise Project/Service-Oriented Architectures)
  • 2. Database Systems Implementation

Harbin Normal University, China

Bachelor of Computer Science • Class Monitor • Sep, 2005 — Sep, 2009

  • 1. Enterprise Web and Software Development
  • 2. Networking
  • 3. Teaching skills (Computer Teacher Certificate)

Projects

Financial Information eXchange (FIX) Platform

Software Engineer • Dec 2015 — Present

The daily life of developers and testers are filled with monotonous and repetitive tasks, so we should build a system to handle boring chores. Many our projects are now automatically tested and deployed. It allows people to focus more on writing/testing code.

  • Responsibilities: (1) design & develop the system (2) building the CI/CD system
  • Structure: (1) Data layer: Database cluster, Redis Cluster,File system cluster (2) Support layer: Authority control,performance monitor, loger (3) basic information:core information,meta dictionary,common information (4) SOA Service: up/down/outer/inner api (5) service:service exchange(netty+Restful),data analyzer(hadoop+storm),message middleware
  • Techniques/Tools:
    Languages :JAVA, Shell, Python
    Frameworks : Spring, SpringMVC, Mybatis, Netty, Storm, Hadoop
    Tools: MySQL, ActiveMQ, redis, Apache, Jenkins, Ansible, Git, Maven, nginx, elasticsearch
    OS: Centos, Solaria

Continuous Integration Testing System

Software Engineer • Dec 2015 — Present

The daily life of developers and testers are filled with monotonous and repetitive tasks, so we should build a system to handle boring chores. Many our projects are now automatically tested and deployed. It allows people to focus more on writing/testing code.

  • I am responsible for building the CI/CD system
  • Development ENV: AIX, Redhat
  • Techniques/Tools:
    • Jenkins(CI)
    • Urbancode deploy(CD)
    • Rational Team Concert(Project Manage System/Code Repository)
    • Github(Code Repository)
    • Zabbix(monitoring)
    • Virtual box, Docker, Load Balancer (Virtualization, BVT, A/B Daily Deployment)
    • vnc,novnc,ansible(system management)
    • shared message queue (Data Integration DI)
    • CastIron(DI)
    • Shell(CI/CD scripts)
    • Python(CI/CD scripts, robot, self services, scrawler)
    • php(CI/CD scripts, api helper)

SalesConnect

Software Engineer • 2014 — Dec 2015

SalesConnect simplifies the way sellers and sales managers work. The application integrated manager roadmapping, seller roadmapping, opportunity management, social, mobile, and analytics capabilities into one modern work environment. Sales teams are now seeing tangible time savings.

  • I joined IBM as a Software and Web Engineer at the beginning of the project SalesConnect.
  • SalesConnect contains over 30 upstream and downstream systems
  • We adopt Scaled Agile Framework, TDD & Continuous Integration to manage the project. (increase in productivity and quality, faster, measurable)
  • I manage my team (5 developers, 1 tester, 1 scrum master, 1 BA)
  • I am responsible for building back-end server logic, designing/implmenting UI/UX, creating SOAP/RESTful interfaces, implementing Data Migration and Creating/Maintaining CI testing environment, training new hires.
  • I am using the Framework SugarCRM, SOAP/RESTful Test Automation Frameworks, PHP, JAVA, HTML5, JS, DB2, Backbone.js, handbars, jQuery, underscore.js, elasticsearch, redis, shell, python, jenkins, urban code deploy and etc.
  • 70% coding and 30% communication

Querying and Maintaining a Compact XML Storage

Software Engineer • 2012 — 2013

Our work is motivated by the mobile software development at National ICT Australia and Green Pea Software, in which managing large amount of XML data on mobile devices is mandatory. We thus turn to the problem of finding a compact storage scheme for XML. The flexibility of XML makes finding a scheme which satisfies all these requirements at the same time extremely challenging.

Naïve BayesText Categorization

Software Engineer • Apr, 2012 — Jul, 2012

Keywords: Java, machine learning, algorithm, naïve Bayes’ theorem. I use 18846 News documents to build the application. The 60% of them are learned and the other 40% are tested. The common word list is built and used in the project. The project used the Naïve Bayes classification VNB to predicate a document is more like a certain category

SCEDoodleservice

Software Engineer • Mar, 2011 — Jun, 2011

Web-based poll service. CSEDoodle offers some popular functions and provides a RESTful application programming interface (API). Users easily create new polls that correspond to the content of the Web page can simply pre-fill the CSE-Doodle wizard through an HTML link or an HTML form.

Skills

Language

Mandarin, English (IELTS L8.5 R8 W6.5 S7)

Professional Skills

  • OS: Linux(CentOS, RedHat, Ubuntu), OS X, Windows
  • Language: C, C++, Java(SCJP Band A 2008), Python, PHP
  • Framework: Spring,SSH, SugarCRM, laravel, etc.
  • DB: Oracle, Mysql, DB2
  • Tool: Docker, git, Jenkins, Elasticsearch, backbone.js. jQuery.js, Handlebars.js, Boost, Boostrap, Shell