Personal Summary
Web developer. In love with the open-source community. Spend most of the time on front-end development/design. Passionate about all kinds of new technology, tools and frameworks. HTML5, Nodejs, Reactjs, Meteorjs... Enjoy reading tech related news and articles. A true believer of the web and optimistic about the future. Always striving to be a better person.
Experiences
- Contributor and maintainer of an internal web app to interact with map related data
- Maintainer of a couple of critical geospatial services shared across organization
- Leading and managing an engineering team to collaborate with multiple stake holders
- Core contributor to consumer project igloo
- Core contributor to Zendesk Message and Zendesk Chat agent dashboard
- Maintain and evolve Message user interface with React, webpack, enzyme, babel, eslint etc.
- Work on features in Message user interface, e.g. analytics page with some open source charting library
- Work with internationalisation team to bring i18n support to Message user interface
- Introduce jest, prettier to the team and push for adoption to improve developer experience
- Revamp Chat user interface and contribute to React migration, tooling upgrade etc.
- Work with design team to change color theme of Chat user interface
- Push and work closely with Zendesk design system Zendesk Garden and build a react component library using it
- Helped test and integrate ATM applications for banks
- Helped develop Ticketing system and CMS console web application for branches
- Developed multiple front-end JavaScript modules for client web application
- Introduced and trained the team about new front-end dev tools and frameworks to improve dev workflow
- Independently worked on the project Front office Framework (FoF) and created more than fifty web scrapes to retrieve information from the websites and upload to database
- Maintained information system to ensure data integrity and availability
- Created several server jobs by writing bash scripts to automated certain system process
- Explored a real time database system kdb+ and created more than twenty scripts to query the database to generate data reports for system migration
- Initiated a rule-based engine to automate verification of transaction messages and improve data sanitisation efficiency
Projects
Side projects and open source libraries.
tully
-
An electron desktop mac task bar app to watch self-set tcp ports
and kill the process that occupies them.
nps-autocomplete-prompt
-
A CLI utility to work better with open source tooling
nps
svg-to-url
-
A node utility to convert svg to data url. A demo app is
available on the
GitHub page
open-gh-page
-
A CLI utility written in node to open a github page of a given
user.
CSS Color App
-
A css color function test app.
React Echarts Component
-
A JavaScript charting library
echarts
component for react. It makes it easy to put sophisticated
canvas-based html charts in a react app. A demo is available on
the project
GitHub page.
JS Playground
-
A JavaScript code playground for testing code snippets. It allows
running JavaScript code with globally loaded libraries. It also
store the code script in the browser storage so it is safe to
refresh or even restart the browser without losing the code.
YouTube Together
-
A web application that allows users watching youtube videos
together remotely. It supports searching for youtube videos and
preview. Uses can also create a playlist and play any video in the
playlist.
Hangouts
-
A web application that allows users hanging out through group
video call using WebRTC technology. During the hangout session,
users can access a YouTube app to search and watch YouTube videos
together. (Inspired by the previous project:
YoutTube Together)
Websocket Tester
-
A simple generic websocket tester which supports
connect/disconnect to a specified url address and send any string
content to the connected socket.
React Console
-
A Chrome developer console like component for react which makes
code testing easy. It puts console messages in a DOM element to
make developers easy to debug and play around.
Git Repo
-
A Node web application to provide UI to manage local git
repositories. It supports displaying all git repositories in a
specified folder in the system and showing the `README.md` for a
specific repository. It also supports creating and deleting a git
repository for authenticated users.
GIF Finder
-
A minimum web application to search for and view gifs. Thanks to
the public APIs provided by
giphy.
Meteor Slack
-
A slack clone chat application written using
meteorjs. It allows
registered users to do real-time chat in public channels and with
each other privately. It also provides some console UI to allow
users manage their profile and chat sessions.