Curriculum Vitae
🤴 About Me
- Name
- Jason Yu
- Email
- [email protected]
- 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 👍 👍