Curriculum Vitae

Experience

Morningstar Inc.

Type: Full-time

Title: Software engineer

Location: Shenzhen, China

Duration: 2016.07-2018.08

Worked at Presentation Studio, the core team of a cash cow product contributes over 50\% revenue of Morningstar

Backend calculation service

Built a RESTful service transferring the calculation services into server to fit the Agile Development and AWS migration.

  • Built up a bottom layer Asynchronous Programming Model to support 20k+ users with heavy workload of calculation
  • Designed the interface to support asynchronism and polling mechanism from client side, improving the QPS by 10%
  • implemented the cache layer to work with the polling mechanism, improving the performance by 20%
  • transferred the business logic of calculation part in 2 components, making sure no performance losses and it was unawaked by customers

Portfolio/Office Workflow

Built up two new workflows besides existing 4 workflows to support the new strategic plan of company.

  • Designed the new processes and implemented the UI part as well as business logic to match current framework
  • Added 5 new components under the new workflows and moved their calculation part into our backend services
  • Optimized the preprocess logic to reduce the time cost per web request by 80% from minute-level to second-level
  • Used the NOSQL to store the information of reports
  • Worked with our batch services to produce the PDF reports using the XML files

Education

2019-2021 (expected)
Master, Computer Science; North Carolina State University (Raleigh, NC)
2012-2016
BEng, Information Security; Hunan University (Changsha, China)

Projects

Research Projects

Holding Intersection

Location: Shenzhen, China

Duration: 2016.11-2017.02

Keyword: C#, Cache, Page-Rank, Pruning

Description: This project is to find a way to calculate the shares of different stocks in a fund which may contains other funds like recursion.

  • Used Cache, Pruning, Classification to reduce time cost of calculation by 30%
  • Found most common stocks/bonds using Page-Rank Algorithms
  • Ran a scheduled calculation for the most-commons to reduce time cost by 40%

Information Checking System Based on OCR

Location: Changsha, China

Duration: 2014.06-2016.04

Keyword: C#, C++, Qt, Python, basic NLP

Description: This project is to find specific messages in texts or images of websites. It contains three parts: the spider part, the OCR part, and the checking part.

  • Used Text Segmentation and 7 different Text Similarity Algorithms to find messages in pictures
  • The accuracy of this system is above 90%
  • Built up a new set of UI to make it more beautiful

Course Projects

CSC501 Operating System Principles - Reader/Writer Lock and Priority Inheritance

Keyword: C, Reader/Writer Lock, Priority Inheritance, Linux, XINU

Description: Implemented an reader/writer lock as well as the Priority Inheritance mechinism in a simple Operating System called XINU based on QEMU emulator.

CSC501 Operating System Principles - On-Demand Paging

Keyword: C, Paging Replacement, Memory Virtualization, Linux, XINU

Description: Implemented the virtual address translation and multilevel page table in a simple Operating System called XINU based on QEMU emulator.

CSC501 Operating System Principles - Process Scheduler

Keyword: C, Process Scheduler, CPU Virtualization, Linux

Description: Implemented two different process scheduler algorithms in Linux, which are Exponential Distribution Scheduler and Linux-like Scheduler.

CSC750 Service-Oriented Computing - Transaction risk assessment

Keyword: Android Play Framework, Scala, Java, RDF/OWL, Jena, Drools

Description: Implemented a system to assess the risk of transactions, which enables non-technical people to manage rules. Used RDF/OWL to analyse the system, and used Apache Jena as well as Openllet reasoner to load the RDF/OWL file. Used Drools to write business rules to do the risk assessment.

CSC750 Service-Oriented Computing - Runner Distance Tracker

Keyword: Android App, Play Framework, Scala, Java

Description: Implemented an App to track a user’s routes and calculate the distance when moving.

Bachelor Final Project - Single-Signed-On System

Keyword: PHP, Web, Javascript, CSS, Ajax

Description: Implemented a web based Single-Signed-On system using PHP.

Activities

Internal Coach Organization at Morningstar

Description: Taught about 100 employees in Morningstar the basic concept of OOP and VBA