Having excellent degrees in Computer Engineering from Hanoi University of Technology, I am a data engineer with 9+ years of experience. I am motivated and enthusiastic by new computing challenges, esp. ones related to Big Data, AI & Blockchain.

I thrive in unfamiliar situations and enjoy opportunities to learn and gain exposure to new ideas and experiences. With an open mind, I'm willing to learn whatever is necessary to accomplish goals.


MSc with distinction, Computer Engineering

2011 - 2013
Hanoi University of Technology

BSc with distinction, Computer Engineering

2005 - 2010
Hanoi University of Technology

Student, Gifted Math

2003 - 2005
Lam Son High School for the Gifted


Bitcoin and Cryptocurrency Technologies

Princeton University (in associated with Coursera)


National Economics University

Business Management

Ministry of Science & Technology


Postech University (Korea)

Best student in “Panasonic-sponsored class for embedded software development”

Panasonic Vietnam

Speaker in “Bellua Cyber Security Asia, the 4th annual conference on information security and hacking”


Knowledge & Proficiency

Application Security

Reverse Engineering

Big Data stack

React/React Native


ScikitLearn, Gensim



Programming & Proficiency




Java, C/C++




Senior Software Engineer

2017 to present
  • Build Internet products to change Vietnamese lives

Senior Data Engineer

2014 to 2017
Viettel Group
  • Led a team to build a massive-scale social media monitoring system using open source components including: crawlers (written in Java & Scala), messaging (using ActiveMQ & Protobuf), analytics (using Spark, Python Scikit-learn) and storage (with HBase, Redis, ElasticSearch, MySQL)

  • Optimized performance for Python microservice using ZeroMQ & Greenlet (Apache Thrift does NOT suit my needs)

  • Researched on Statistics, NLP (Natural language processing). I worked under the mentorship of several PhDs. They helped me efficiently learn & improve my knowledge on AI.

  • Improved the in-house Vietnamese tokenizer

  • Developed algorithms based on Stanford CoreNLP for matching (token level) documents, extracting snippets...

  • Trained predictive models with ScikitLearn, XGBoost & Gensim for various projects like document categorization, sentiment analysis.

Security & Data Engineer

Cyber Security Department, MV Corp
  • Conducted various researches on Big Data technologies (Hadoop stack), Machine Learning & Text Mining algorithms such as SVM, Neural Network, Ensemble method, TF-IDF … for detecting trends, related topics...

  • Led a project of building a large-scale crawler based on Nutch for collecting information from web and social networks

  • Worked directly with international technology partners


Bkav Security Division, Bkav Corp.
  • Used ANTLR to develop a language ,which is scriptable and based on context free grammar, to generate data for fuzzing.

  • Involved in many phases to design a product such as UI/UX, High-performance backends... I've got in-depth knowledge of systems and assisted technologies. Additionally, I'm very interested in designing business model for products.

  • Via forensics and investigation, I helped many people secure their computing systems & identities

  • Designed core content, prepared syllabus for intern students

Teaching assistant

Hanoi University of Technology
  • Gave lectures on Network programming & Security

Intern student

Bkav Security Division, Bkav Corp.
  • Researched extensively on Application Security, Reverse Engineering, Windows kernel system...

  • Discovered several critical vulnerabilities in popular applications. The very first vulnerability of Google Chrome was submitted by me

  • Presented my paper entitled "Unicode shellcode and improvements" at Bellua Cyber Security conference (2008). In the paper I demonstrated a novel idea on optimizing size of Unicode shellcodes.


My public things

Evolas - An IoT platform based on Blockchain (comming soon)
Unicode Shellcode and Improvements (paper) - Buffer overflow bugs are amongst the most prevalent and the most critical bugs today. On exploiting these bugs, we often encounter the problem of Unicode format which prevents our shellcodes from executing properly. This documentation will cover conventional methods to write a Unicode shellcode and the improvements that we have applied.


Here are several things I do in my leisure time

  • Reading books about technologies & entrepreneurship
  • Self-studying several topics I like such as Machine Learning, Blockchain ...
  • Contributing to various open source projects like: MQTT.js, Gensim, HapiJS
  • Managing several technology communities I founded such as "Vietnam Data Scientists" (since 2013), "Vietnam Blockchain Experts" (since 2016)
  • Blogging
  • Cooking
  • Jogging
  • Photographing


My digital traces in the online world

  1. ComputerWorld: Google issues first patches for Chrome
  2. F-Secure: Microchip MPLAB IDE Buffer Overflow Vulnerability
  3. Article: Building a Search Text Box Control with WPF
  4. MQTT.js contributor
  5. Gensim contributor
  6. Introduction to Zookeeper (slideshare)
  7. Admin of Vietnam Data Scientists community
  8. Admin of Vietnam Blockchain Experts community