Download PDF



Bachelor of Science (BSc), Computing and Software System

University of Melbourne

International Baccalaureate Diploma

Auckland International College


Community Education News Online Paper Management System

Built using Python CGI, web sessions and Bootstrap.


ZhaoHe Board Game Go AI

A Java project for Artificial Intelligence subject. Given a judge program and an opponent AI, play the board game of Go by generating the next move via ZhaoHe AI. The AI uses the minimax algorithm and a linear evaluation function for calculating the feature sum. Features and their weights are designed by me and my team member Peter He. Main features include own captured count (number of opponent pieces that have been captured by own loops) with a positive weight, opponent captured count with a negative weight, angle pieces count (number of own pieces on the 4 angles of the board) with a negative weight.

For more explanation and source codes, please visit:

Colosseo API

Implemented using Ruby on Rails, it provides a RESTful API interface for BaaS functionality that allows the data exchanging between game application and cloud storage.

Technology used: API versioning, HTTP token authentication, serializer

source code:
API website:

Kexchange K-pop album card exchange platform

A project developing in my own time. It is common inside k-pop albums to randomly include a card that is a photo of one of the members with her/his autograph on it. There are demands for exchanging the card one currently got with the card one favors. The website will auto-match two or even three users' requests for exchanging.

Technology used so far: rails, i18n, globalize, simple form, javascript, CSS, English-Chinese city list processing


Work experience

Mar 2015Jul 2015

IT Manager

Community Education News Press

Maintain the website and upgrade features whenever necessary. Provide technical supports to the editor team.

Mar 2015Jun 2015

University Subjects Private Tutor

Private Tutor

Tutoring Python to an Australian girl. Works involve helping the student with the understandings of exercises, explaining the logic behind codes and answering questions related to lecture contents

Feb 2015Mar 2015

Electronic Paper Management System Project Manager

Community Education News Press

Works: Design and make the whole website.

Jan 2015Feb 2015

Network Communication Engineer Intern

China Unicom Network Technology Research

An intro to the company:

Works: OTN device testing. Learned knowledge in the area of network and optical communications

Dec 2013Jan 2014

Primary School Subjects Tutor

Guangwai Education

Works: Tutoring Math, English and Chinese to primary school students

Oct 2012Nov 2012

System Integration Engineer Intern

Beijing EastSide Technology Co.Ltd

Works: Renewal and upgrade of the internet system for a middle school


Java, C

Python, Ruby
HTML, CSS, Bootstrap
Ruby on Rails

Major Subjects

Web Information Technology

  • Projects: 1. Make an website (site for my team: Coledger, online collaborative accounting) 
  • Skills for projects: 1.AngularJS, MongoDB, Ruby on Rails, Requirement Analysis, Usability Analysis, Waterfall development process

Knowledge Technologies

  • Projects (in Python and Weka): 1. Approximate String Search for Geolocation of Tweets, 2. Geolocation of Twitter Users with Machine Learning
  • Skills for projects: 1.Machine learning and classification algorithms, 2. Approximate string search

IT Project

  • Projects: 1. Develop a mobile action game (my team's project: Colosseo, a stage fight game)
  • Skills for projects: 1.Unity, Graphics and interactions, RESTful API design, Software testing, Waterfall development process

Design of Algorithms

  • Projects (in C language): 1.Modified Binary Search Program 2.Sonar Robot moving and data compressing algorithms design
  • Skills for projects: 1.Binary search tree, 2. Huffman coding, DFS search


Artificial Intelligence

  • Projects (in Java): 1. Design an AI for playing the board game Go
  • Skills for projects: 1. Minimax Algorithm, Linear evaluation, Java object oriented programming

Software Modelling and Design

  • Projects (in Ruby): 1. RSS & JSON news feeds importers and formatters. 2. A news digest rails app.
  • Skills for projects: 1.Ruby object oriented programming. 2. Rails, Software design, UML diagrams


Computer Systems

  • Projects (in C language): 1. Memory management program. 2. socket programming for a game
  • Skills for projects: 1.memory management 2. TCP/IP, socket


Database System

  • Projects (MySQL & python): 1. Make a website that supports CRUD for the business management of a game video company
  • Skills for projects: 1.Database design, SQL, Python programming, HTML, CSS

Object Oriented Software Development

  • Projects (in Java): 1. Make a RPG game
  • Skills for projects: 1.Programming in JavaUsing frameworks

Foundations of Algorithms

  • Projects (in C language): 1. Big Integer Calculator, 2. Voting Managing Software
  • Skills for projects: 1.Array and list data structures, 2. Binary tree

Foundations of Computing

  • Projects (in Python): 1. content-based video search system, 2. AI program for playing heart
  • Skills for projects: 1. Programming in python environment, 2. Algorithm design