YCM Jason

# Curriculum Vitae

# 🤴 About Me

Name
Jason Yu
Email
me@ycmjason.com
Homepage
https://www.ycmjason.com
Github
https://github.com/ycmjason
NPM
https://www.npmjs.com/~ycm.jason

# 👔 Work Experience

# Attest Technologies Limited, UK

Years
Mar 2019 - Present
Job Title
Frontend Engineer
Responsibilities
  • Develop frontend solutions using Vue.js and Typescript
  • Design and implement solutions with the squad
  • Develop fully-tested frontend components
  • Frequent deployment of the products
  • Biweekly agile sprint planning and retrospective
Achievements
  • 🖍 Implementeted a module using Dikjstra algorithm (with a small custom tweak) which can draw svg lines connecting two elements avoiding obstacles.
  • 🚝 Migrate vanilla Typescript app to Vue.js + Typescript.

# The Hut Group, UK

Years
Dec 2017 - Feb 2019
Job Title
Graduate Software Engineer
Responsibilities
  • Support and maintain >30 websites owned by The Hut Group
  • Collaborate with teammates to design and implement solutions
  • Develop fully-tested frontend/backend components
  • Deploy and release new versions of the websites
Achievements
  • Hold a weekly session of "JS Club", covering different topics of Javascript, to advocate the goodness of JS
  • Simplify developers' daily development workflow by creating a watcher which watches for file changes and triggers build correspondingly
  • Enable mobile devices to access to the website hosted on their local machine by developing a proxy server
  • Make internal tools more accessible by creating a centeralised command-line interface

# Imperial College London

Years
2016 - 2017
Job Title
Undergraduate Teaching Assistant
Responsibilities
  • Taught a weekly tutorial for 8 freshers to discuss logic/maths problems from the course
  • Marked freshers' logic/maths weekly assignments with appropriate feedback

# Baylor University, Waco, TX, US

Years
2016 July - 2016 Augest
Job Title
Research Assistant under Dr. David Lin
Responsibilities
  • Experimented on Latent Dirichlet Allocation (LDA), as a topic model, to explore the effects of preprocessing, e.g. stemming/lemmatization, common words removal, to the resulting topics
  • Examined the significance of the effects by comparing the topics of the original/generated documents
Achievements
  • Developed a webapp which visualize the topics with heat map and charts
  • Shared with a group of MSc Computer Science students about the experience

# CityU Apps Lab, Hong Kong

Years
2015 December
Job Title
Winter Internship
Responsibilities
  • Research about mobile app development and relevant technologies
Achievements

# 📚 Education

# Imperial College London

Years
2014 - 2017
Qualification
BEng. Computing (Second Upper)
Courses
Computer Vision | Type Systems for Programming Languages | Information and Coding Theory | Networks | Compilers | Operating system | Databases | A.I. | Hardware | Maths Methods | Reasoning about programming | Logic | Programming in Haskell, Java, C, C++, Prolog, Python...

# Bellerbys College, Brighton

Years
2013 - 2014
Qualification
GCE A-Level (Mathematics A*, Further Mathematics A*, Physics A)
Awards
Best A2 Student in Decision Maths

# St. Paul's College, Hong Kong

Years
2007 - 2013
Qualification
N/A
Awards
  • Outstanding performance in Physics and Computing
  • Outstanding contribution to extra-curricular activities (2 years in a row)

# 💡 Hobby Projects

✨: actively maintaining

# Perfect Colour ✨

A game that test your ability to mix RGB given a colour.

Publish Date
Aug 2019
Homepage
https://ycmjason.github.io/perfect-colour/
Github
https://github.com/ycmjason/perfect-colour
Technology Used
Vue.js, @vue/composition-api, Typescript

# Secret Santa Allocation System 2018 ✨

A website for secret santa allocation.

Publish Date
Nov 2018
Homepage
https://ssas.ycmjason.com/
Github
https://github.com/ycmjason/ssas-2018
Features
  • Allocate secret santa to each person fairly and randomly.
  • Sign in with Google/Facebook
Technology Used
Vue.js, Firebase Auth, Firestore

# svg-to-img ✨

Publish Date
Jul 2018
Github
https://github.com/ycmjason/svg-to-img
Features
  • An svg to png/jpeg converter library that works on both browser and Node.js
  • Use techniques like HiDPI Canvas and prefetching SVG (see here)
Technology Used
Javascript

# Faviator ✨

Publish Date
Jan 2018
Homepage
https://www.faviator.xyz/
Github
https://github.com/faviator
Features
  • Generation of svg icons with a simple config
  • Exports the icons to png/jpg
  • An online playground which allow real-time tweaking of the config
Technology Used
Node.js, Vue.js

# Mahjong Score Calculator

Publish Date
Nov 2015
Homepage
http://mahjongcalculator.ycmjason.com/
Github
https://github.com/ycmjason/mahjongCalculator
Features
  • Score tracker for mahjong games
  • Line chart plotting
  • Multiplayer real-time update
Technology Used
Angular.js, Socket.io, Node.js, Express

# Secret Santa Allocation System (2015 and 2016 versions)

Publish Date
Nov 2015, Nov 2016
Homepage
They are replaced by their successor ssas-2018.
Github
Features
  • Allocate secret santa to each person fairly and randomly.
  • Sign in with Facebook
Technology Used
Angular.js, Angular, Express, MongoDB, Mongoose

# 🌈 Open Source Contributions

# VuePress ✨

Github
https://github.com/vuejs/vuepress
Homepage
https://vuepress.vuejs.org/
Contributions
  • #206 Fix emoji not showing on sidebar
  • #212 Improved mobile UX on sidebar
  • #168 Allow custom repo label or inferred from the repo
  • #148, #173, #213 Improved instructions on documentation

# parcel-plugin-markdown

Github
https://github.com/gongpeione/parcel-plugin-markdown
Contributions
  • #4 Improved building process of HTML by using a method of the super class
  • #3 Removed unused dependencies and imports

# console-png

Github
https://github.com/aantthony/console-png
Contributions
#2 Added bin for terminal usage

# ⚔️ Skills and Interests

Techinical

My favorite stuff:

  • Typescript 💕 💕 💕
  • Javscript 💕
  • React
  • Haskell
  • Vim
  • Vue.js
  • Node.js
  • Parcel
  • Markdown
  • tmux
  • Jest
  • Mocha

Other: Angular, Bash, C++, C, JQuery, Java, Linux, MongoDB, PHP, Prolog, PyQuery, Python, SQL, SocketIO, Vite, VuePress... Webpack,

Musical

Singing, A capella, Guitar, Piano, Beatboxing, Song Writting / Arraging / Recording

Other

Swimming, Wine Tasting, Cooking, Sketching

# 💬 Languages

English
Fluent 👍 👍 👍
Cantonese
Native 👍 👍 👍
Mandarin
Proficient 👍 👍