Skip to content

Hennessy Ng

Technical Product Manager, Localization

AI-native localization platforms — LLM translation, workflow automation, full-stack delivery

8+ years in localization automation Stanford AI Professional Certificate Full-stack — Django / Vue / Nuxt

Technical Product Manager with 8+ years building localization automation, now owning an AI-native localization platform end to end. I work the full cycle — discovery, PRDs and roadmap through to shipping Django/Vue services, RAG systems and LLM translation workflows myself. Background spans terminology and translation QA, NMT and OCR pipelines, and cloud-native platform engineering on AWS, GCP and Azure.

Experience

Product Manager, Localization

Aug 2024 — Present
Crypto.com · Hong Kong · Remote Current

Product owner and builder for an AI-native localization management platform — owning discovery, roadmap and delivery while writing production code across the stack.

  • Own the roadmap and product definition for an AI-native localization management platform, translating localization operations pain points into shipped capability.
  • Design and build end-to-end Django / Vue.js workflow pipelines, delivered through GitHub Actions CI/CD.
  • Design RAG systems and AI agents that automate the translate–edit–proofread (TEP) workflow, keeping terminology and style consistent across locales.
  • Develop and optimise localization prompts, and build LQA tooling to score machine-translated output for accuracy.
  • Evaluate cloud and open-source LLM options against cost, latency and quality to keep AI localization workflows efficient.
  • Architect cloud infrastructure on AWS, running microservices orchestrated with Kubernetes.
Django Vue.js Python RAG AI agents Prompt engineering LLM evaluation AWS Kubernetes GitHub Actions
More detail

Localization at scale is a product problem before it is a translation problem. My remit spans both: defining what the platform should do, and building a meaningful share of it.

As product owner I run discovery with localization managers and linguists, write the PRDs, shape the roadmap, and define the success metrics the platform is measured against.

As a builder I ship the pipelines myself — Django services and Vue interfaces, RAG retrieval over translation memories and termbases, agentic steps through the TEP workflow, and the LQA scoring that tells us whether machine output is good enough to ship or needs human post-editing.

On infrastructure I design the AWS architecture and Kubernetes orchestration underneath, plus the CI/CD that gets changes out safely.

Language Technology Consultant

Nov 2017 — Aug 2024

Built the NLP, OCR and machine translation automation that moved a traditional language services business onto cloud-native infrastructure.

  • Designed and shipped an OCR + machine translation pipeline processing 500+ scanned PDFs (~5,000 pages) daily from Japanese to English.
  • Built bilingual term extraction using BERT embeddings and semantic similarity, generating termbases that fed both MT training and linguist consistency.
  • Developed multilingual web crawling and language detection pipelines to acquire and clean parallel corpora for MT training.
  • Migrated desktop-bound language tooling to cloud-based RESTful APIs, integrating with CMS platforms and cloud MT vendors.
  • Trained custom MT engines on validated post-edited output, recursively improving quality with roughly 40% of production data validated and reusable.
Python EasyOCR Tesseract spaCy KeyBERT Sentence-BERT Scrapy GCP AutoML Azure Translator RESTful APIs
More detail

Seven years turning a language services operation into an automated one. The recurring pattern: find the manual bottleneck, quantify it, build the pipeline that removes it — then make the output good enough that linguists actually trust it.

Most of the project work shown on this site comes from this period.

Senior Manager of Quality Assurance (Translation)

Oct 2016 — Oct 2017

Owned translation quality assurance, and introduced neural machine translation and OCR into the QA workflow.

  • Led the translation QA function, defining the standards and review process applied across delivery.
  • Introduced neural machine translation and OCR into production workflows, shifting the team toward post-editing rather than translation from scratch.
  • Ran linguist recruitment and training, building post-editing capability across the team.
Neural MT OCR MTPE QA process design
More detail

The turning point from linguist to technologist. Bringing NMT into a quality assurance function meant convincing experienced translators that machine output was a starting point worth editing — a change management problem as much as a technical one.

Language Technologist / Terminologist

Dec 2011 — Sep 2016

Computer-aided translation tooling, terminology management and hands-on linguistic delivery.

  • Administered and supported computer-aided translation tooling across the delivery team.
  • Owned terminology management — termbase creation, curation and maintenance for corporate accounts.
  • Delivered translation and proofreading work directly, grounding later automation in real linguist workflow.
CAT tools Translation memory Terminology management
More detail

Where the domain knowledge came from. Building termbases and running CAT tooling by hand for five years is the reason the automation I built later fits how linguists actually work.

Selected Projects

Otoflow

Personal project

Full-stack piano practice app that turns PDF sheet music into an interactive “falling notes” waterfall.

React TypeScript WebGL Python FastAPI PostgreSQL Docker MIDI
Live demo → Private repository — walkthrough on request
Technical detail

Built a full-stack piano practice app that turns PDF sheet music into an interactive “falling notes” waterfall, so learners can play along without needing to read complex scores first.

Shipped end-to-end

  • PDF upload → AI/rule-based music recognition
  • Synced sheet music + keyboard UI
  • MIDI piano input
  • Hand-separate practice
  • Wait-for-correct-note mode

Stack

Production-style multi-service deployment: React/TypeScript + WebGL frontend, Python/FastAPI backend, async workers, PostgreSQL/object storage, and Docker across services.

Senji (せんじ)

Personal project

Self-hosted knowledge ingestion and web clipping platform.

Python Embeddings LLM Markdown Obsidian OCR
View repository →
Technical detail

Converts URLs, HTML, PDFs and images into structured Obsidian markdown, with AI-powered wiki generation and semantic embeddings on top.

Why

Clipping tools save pages. They do not turn a pile of clippings into something you can reason across. senji treats ingestion as the first step of a knowledge base, not the last.

How it works

  • Ingestion — a single entry point accepting URLs, raw HTML, PDFs and images; scanned input falls through to OCR.
  • Normalisation — everything lands as structured markdown with consistent front matter, so the vault stays queryable rather than becoming a dumping ground.
  • Wiki generation — an LLM pass links related notes and drafts connective summaries, turning isolated clips into a navigable wiki.
  • Semantic search — embeddings over the corpus so retrieval works on meaning, not filename.

Self-hosted by design: the corpus is personal, so it stays on infrastructure I control.

OCR + MT Workflow

DataSource International

High-volume Japanese-to-English pipeline turning scanned PDFs into translated DOCX.

500+
PDFs processed daily
~5,000
pages OCR'd daily
~40%
output validated and reused as MT training data
EasyOCR Tesseract PDF2Image CUDA / GPU GCP AutoML Translation Azure Translator REST API
Private repository — walkthrough on request
Technical detail

Clients delivered scanned, non-selectable Japanese PDFs and expected editable English DOCX back. The pipeline handles ingestion, OCR, translation and delivery, and feeds its own validated output back into MT training.

Pipeline

  1. Scan intake — watched path picks up incoming PDFs and queues a job with language direction and the relevant MT engine plus linguistic resources (TM/TB).
  2. Rasterisation — PDF2Image at 300 DPI, JPEG output. Tuned for a balance between OCR accuracy and iteration speed; JPEG keeps intermediate storage manageable across large batches.
  3. OCR — GPU-enabled EasyOCR with a Japanese model, exposed behind a REST API.
  4. Machine translation — GCP AutoML Translation and Azure Translator, routed per job.
  5. Delivery — reassembled as DOCX for human validation and post-editing (MTPE).
  6. Feedback loop — validated post-edited output (roughly 40% of volume) trains a dedicated MT engine, improving quality recursively.

Engineering notes

OCR accuracy on Japanese scans. EasyOCR outperformed Tesseract on this corpus. Line breaking and bounding box detection needed tuning for A3-sized documents at 2,560px. Contrast adjustment mattered most on fax-quality scans, where the baseline model degraded badly.

Fine-tuning path. Generating synthetic training data with trdg (image/text pairs) was the route to a domain-tuned Japanese model.

Open issue — worker scaling. Increasing workers beyond five did not improve throughput. Suspected CUDA driver / cuDNN configuration rather than an application-level bottleneck; GPU utilisation did not scale with worker count as expected.

MT quality estimation. Scoring machine output before it reached a human meant post-editors spent time on segments that needed it rather than reading everything.

Bilingual Term Extraction

DataSource International

Mining Chinese–English termbases from parallel corpora using BERT embeddings.

KeyBERT Jieba EasyNMT Sentence-BERT Manhattan LSTM Python
Private repository — walkthrough on request
Technical detail

Every completed project leaves behind parallel corpora. Extracting the terminology out of that data turns a delivery byproduct into a reusable asset — termbases that improve MT training and keep linguists consistent with corporate language.

Approach

  1. Segmentation — Jieba handles Chinese word segmentation as pre-processing, since Chinese has no whitespace token boundaries.
  2. Keyword extraction — KeyBERT over BERT embeddings, using maximal marginal relevance to keep candidate terms diverse rather than clustered around near-duplicates. This is the core of the project.
  3. Cross-lingual alignment — extract terms in the source language (English), translate the candidates with EasyNMT, then match against the target-language corpus by semantic similarity rather than string matching.
  4. Similarity scoring — Sentence-BERT for sentence-level similarity; Manhattan LSTM evaluated as an alternative during testing.

Why embeddings rather than statistics

Frequency-based extraction surfaces common words, not terminology. Embedding-based candidate selection with MMR surfaces terms that are distinctive to the document, which is what a termbase actually needs.

Web Crawling + Language Detection

DataSource International

Acquiring and cleaning multilingual parallel corpora for MT training.

Scrapy requests PyMuPDF pyenchant langdetect spaCy Regex
Private repository — walkthrough on request
Technical detail

MT engines need parallel data. A lot of it exists as PDFs scattered across the public web, in inconsistent formats and mixed languages. This pipeline acquires it, cleans it, and gets it into parallel form fit for training.

Pipeline

Acquisition. Scrapy and requests with regex-driven target discovery. Downloads are deliberately rate-limited — crawling fast enough to matter is also fast enough to get blocked.

Selectability check. fitz from PyMuPDF determines whether a PDF has an extractable text layer. If not, it drops through to OCR.

OCR quality gate. Spell checking with pyenchant measures the misspelled-word rate. High rates flag OCR output that is too noisy to use as training data — cheap signal, catches most garbage before it contaminates the corpus.

Language detection. langdetect and spaCy classify documents. ASCII ratio and PDF-level language flags act as supporting signals where detection is uncertain.

Known limitation

Detection is per-document, so genuinely multilingual PDFs (English and French in one file) are mislabelled. The fix is word-level alignment — awesome-align over mBERT — to segment mixed-language documents before classification.

Cloud-Based System Integration

DataSource International

Migrating desktop-bound language tooling to cloud-native RESTful services.

RESTful API GCP Azure AWS Drupal / CMS integration SQL
Private repository — walkthrough on request
Technical detail

Language technology grew up as desktop software. Translation memories lived on local disks, terminology in files, MT in installed engines. That model does not survive a distributed team or integrate with anything.

What the migration involved

Rewriting for the API model. Tooling that assumed local file access had to be re-architected around RESTful services with proper request/response boundaries.

Vendor integration. Bulk connections to cloud MT vendors, with routing by language pair and content type.

CMS connectors. Sync with content platforms including Drupal, so localization was a step in the content workflow rather than an export-and-email round trip.

Centralised linguistic data. Translation memories and termbases moved into maintained databases with API access, plus backup and maintenance procedures — the resources are the compounding asset, so losing them is unacceptable.

Multi-cloud evaluation. Surveying language technology available on GCP, Azure and AWS to pick the right service per workload rather than defaulting to a single vendor.

Skills

Product
Product ownership Roadmap & PRDs Discovery & user research Agile / Scrum Stakeholder management Success metrics & SLAs
AI / LLM
RAG systems AI agents Prompt engineering & optimisation LLM evaluation MT quality estimation (LQA) Cloud & open-source model selection
Backend
Python Django FastAPI Pandas NumPy PyTorch TensorFlow SQL
Frontend
Vue.js Nuxt.js TypeScript Tailwind CSS
NLP
spaCy NLTK BERT / Sentence-BERT Hugging Face KeyBERT Jieba EasyNMT
Platform & DevOps
AWS GCP Azure Docker Kubernetes GitHub Actions CI/CD RESTful APIs Linux Microservices
Localization Engineering
Machine translation TEP workflow design Post-editing (MTPE) Terminology & termbase management Translation QA Subtitling CAT tooling

Education & Certification

MA, Computer-Aided Translation
The Chinese University of Hong Kong
2012
BSocSc, Sociology
Hong Kong Shue Yan University
2010

Languages

Cantonese
Native
English
Full professional
Mandarin
Full professional
Japanese
Beginner