Frankly, I am a visionary guy. Exploring new things is in my blood especially new technologies.
I love playing instrumental equipments, it makes me feel better when I am in a difficult situation. When I have freetime, I often read books, listen instrumental musics, travel and play games.
Work at RingMD, a Singapore-based startup company, an online medical platform which helps patient and doctor easily connect with each others.
At RingMD, I am responsible for:
Develop the bot named Cardea which uses elasticsearch and natural language processing to answer patient's questions based on our dataset.
Implement the core features for RingMD, RingWell and CSC India like phone, video call and chat.
Apply MJML Framework to improve development process for email.
Integrate our platform with 3rd party metric services like Kissmetric, Hubspot and Salesforce.
Take responsibility to refactor our legacy source code by using DDD and functional programming concepts.
Work at EmploymentHero, Australia’s fully integrated cloud HR system with a free jobs board, integrated payroll and live HR support, making managing employment easy.
My role was mostly applied DDD concepts to restructure our sourcecode. Besides, I implemented features including scheduling and assignning jobs and synced data across HR platforms.
Work at RingMD, I was in charge of creating boilterplate for frontend (Angularjs) and implemented phone call and video call for RingMD.
Worked at Deekau, is an outsourcing company, as a Junior Ruby on Rails Developer. My boss assigned me to research new technologies to apply in the company. At that time, I had a chance to learn new techologies like WebRTC and OpenID.
I researched in embeded system. My role was to compile the linux kernel for Embedded OS and port it into boards like LPC2378, Mini2440... in order to make it work and program on those devices.
I was one of 50 students that were chosen to participate in the Honor Information Technology Program which is much more advanced. It focuses on algorithm, machine learning, graph theory, data mining, natural language processing and logic. I graduated with a GPA of 8.5/10.
My team got the third price for our app which simulates equipments in our house.
My team got funded 2000 USD by Nokia for our game whose mission puts objects into screen and lets ball bounce to destination.
Twins Blitz is free-to-play multiplayer online video game. Its logic is based on finding all matching pairs, pairs is matched if they meet two conditions below:
Game engine: Cocos2d-x
Game server: Node.js, Pomelo
Backend: Ruby on Rails, Postgresql
Our Stack
Frontend: Angularjs, React/Redux, Babel, Webpack
Backend: Ruby on Rails, Postgresql, Elasticsearch, Redis, RabbitMQ, Elixir, GraphQL
I am a core member of Ruby Vietnam Group. Having a presentation about topic which introduces and goes deep into Rails Caching.
In 2016, when I created the mjml gem to support MJML - The Responsive Email Framework for Rails, I found out that Rails didn't support mime-type customization for email when using email-body. So, I submitted the PR and got accepted.
In 2017, I wrote several articles about javascipt on Medium and became Hackernoon writer.
I am a core member of the Elixir VietNam Commnunity, and participate in translating Elixir School website , and Ecto 2.0.
Contributor for Rails, Sprockets Rails, Cocos2d HTML5, Cocos2d JS, Faker.js, FFaker, Rack Rewrite.
Creator of those libraries
Factory Girl: sets up objects as relational data used with jasmine, mocha or qunit.
Client Variable: exports rails variables to client side.
Phoenix MJML: Phoenix template engine for MJML.
Elixir Lodash: Lodash implementation in Elixir.
Plagiarism: Search for plagiarism and check the duplication of your content from Bing, Google, Yahoo and DuckDuckGo.
Redux Boilerplate: Boilterplate for React/Redux project which is using Node.js, Express, React, Redux, React-Router, Babel 6, PostCSS, Webpack to take advantage of new technology.
Skype Bot: Ruby wrappers for the Skype Bot API.
HTML Webpack Condition Assets: an experiment to custom html webpack building process.
Rails MJML: Rails template engine for MJML.
Munna: Simple wrapper cache for ActiveRecord, Ruby Object.
Hubspot: Ruby wrappers for the HubSpot REST API.
Exd: Command line for downloading written in Elixir.
Messenger: A Ruby interface to the Facebook Messenger Platform API.
Angular Clamp: Clamp an element by adding ellipsis if content exceeds parent's width.