Roxin Chang · Case Study
Featured Project · 2024–2025

Project Fuzzy Search

Building an enterprise-grade multilingual smart knowledge retrieval system from scratch — bridging Traditional Chinese, Simplified Chinese, English, and Korean with NLP, vector search, and an API-first architecture.

My Role
Lead Project Manager & Product Owner
Duration
18 months · Jan 2024 – Jun 2025
Team
12 cross-functional · 4 departments
Industry
Global Gaming & Customer Operations
NLP Vector Search Elasticsearch RESTful API API-First Scrum / Agile Multilingual

01Impact at a Glance

After 18 months, every quantitative target was met or exceeded. The bigger story, however, was qualitative: cross-regional teams stopped reinventing the wheel.

85% Retrieval efficiency improvement (5 min → 45 sec)
40%→5% Search-failure rate dropped
6 mo Full ROI recovery
2 wks French module integration
(vs. 2-month original estimate)
4 / 4 Target languages live
(TC · SC · EN · KO)
100% Goal achievement rate on key metrics

02The Challenge

Rapid expansion into APAC and EMEA had created a sprawling, fragmented internal knowledge base. CS, ops, and tech teams across regions were drowning in language barriers and tagging chaos.

40% search-failure rate

Low search efficiency

The legacy system supported only exact keyword matching — no tolerance for typos, homophones, or vague concepts. Average single retrieval took over 5 minutes and required multiple keyword combinations.

4 isolated language families

Cross-language information barriers

Taiwanese, Chinese, Korean, and English-speaking teams couldn’t search documents written by one another. A problem solved in Taiwan would be re-solved in Korea three months later — knowledge trapped in language cages.

Hardcoded everything

Insufficient scalability

The old architecture required extensive re-writing every time a new language was added. With European business expansion (FR / DE / ES) on the horizon, the existing system would not survive.

12+ source systems

Data silos & inconsistent formats

Knowledge was scattered across Wiki, Confluence, Jira, PDFs, spreadsheets — with conflicting metadata, garbled titles, and outdated documents misleading users every day.

03My Role & Responsibilities

As Lead PM and Product Owner, I owned every critical decision from business case through MVP launch — translating fragmented business pain into a technical roadmap and a coherent execution plan.

1 · Business Case & Budget Acquisition

Authored the comprehensive business proposal and ROI model (time-saved × labor-cost × team-size). Defended the case to senior leadership over multiple rounds, securing budget and headcount.

2 · Data Governance & Content Planning

Defined a brand-new Metadata Schema as the cornerstone of search quality. Coordinated CS, ops, and engineering to unify tagging logic, naming conventions, and unstructured-data cleansing standards.

3 · Product Specification

Designed the core Fuzzy Logic strategy (character tolerance, synonym handling), multi-language weighting configuration, and detailed RESTful API contracts to enable future expansion.

4 · Cross-Departmental Team Building

Built a high-performing Scrum squad from scratch: backend, data science, frontend, and a localization team across 4 language families — and the communication rituals that kept them in sync.

“A successful product manager isn’t a collector of requirements — they’re a translator of vision: turning business goals into technical roadmaps, user pain into product features, and disparate cross-departmental languages into a unified action plan.”

04System Architecture

We adopted an API-First, modular philosophy. Every design decision balanced current performance against future expansion — so adding a new language wouldn’t require rewriting the core.

🔍

Core Search Engine

Elasticsearch + vector database for semantic search and intelligent ranking.

🌐

Language Middleware

TC/SC conversion, word segmentation, and synonym mapping. New languages plug in here.

🔌

Expansion API

RESTful, standardized contracts so any external system can integrate search capabilities.

Indexing layer normalizes content during ingestion · Search-time queries are uniformly converted before retrieval

Multilingual Precision: Three-Pronged Solution

Making fuzzy search both smart and accurate in CJK languages is its own discipline. Set the fault tolerance too loose and users drown in noise; too tight and the old problem returns.

1

Enterprise-specific synonym dictionary

Senior staff across language teams co-authored an internal vocabulary including company-specific terminology — so “WoW”, “World of Warcraft”, and the Traditional/Simplified Chinese variants all resolve to the same token.

2

Intelligent weight adjustment

Multi-level ranking strategy: exact title match (weight 10) > fuzzy title (5) > exact body (3) > fuzzy body (1). Dynamically tuned by document freshness and click-through rate.

3

TC / SC conversion middleware

Both indexes are created in parallel during ingestion; queries are uniformly normalized at search time, so a user typing 「滑鼠」 finds documents tagged 「鼠标」 — seamlessly.

05Data Quality: From Garbage In, Garbage Out

Even the most sophisticated search engine produces garbage if the underlying data is inconsistent. Resolving the data layer was as much of the work as building the engine.

06MVP Plan & Schedule

Two-week Sprint cadence within an 18-month project, divided into three clearly scoped phases — each with its own success criteria.

Phase 1 · Months 1–3

Infrastructure Build-Out

Stand up the core search engine for TC, SC, and English. Implement basic 2-character fault tolerance. Replace the legacy system without disrupting business continuity.

Phase 2 · Months 4–5

Korean Language Integration

Integrate the Korean morphological analyzer and optimize cross-lingual search. Acceptance criterion: 80% adoption by the Korean team — validating the multi-language architecture.

Phase 3 · Month 6

API Exposure

Expose the RESTful API for downstream systems (CRM, ticketing). Fully document the API spec to prepare for European-language expansion.

07Team Structure & Communication

A successful project depends 70% on team collaboration efficiency. We adopted a Squad model — lean but cross-functional — with rituals designed for clarity, not theater.

Squad composition

PM (Me) · Tech Lead · 2 Backend Engineers · 1 Frontend Engineer · 1 Data Engineer · part-time Linguistic Specialists from each language operations team. Cross-functional pairing built shared ownership across disciplines.

Bi-weekly Demo Day

Stakeholders (CS Manager, Ops Manager, IT Manager) tested the latest build live and contributed “Bad Cases” — failed searches that became next sprint’s optimization targets. A positive feedback loop.

Daily standup · 15 min

Sync on yesterday/today/blockers. Brief enough that it stayed valuable; structured enough that no one fell out of step.

API Integration Workshop

Mid-project, we pre-emptively invited European IT teams (future API consumers) to walk through the API spec. This forward-looking move turned them into allies and prevented expensive rework later.

08Results & Lasting Impact

The headline numbers were the easy part. The real win was changing how cross-regional teams treated knowledge.

Breaking knowledge silos

Best practices from Taiwan got adopted by the Korean team within a sprint. Chinese technical documents became retrievable by European and American engineers. Cross-regional collaboration efficiency lifted noticeably.

Establishing an enterprise standard

The “Search-as-a-Service” pattern became the internal reference architecture for downstream systems integrating search — laying foundation for future GenAI and knowledge-graph initiatives.

Validated scalability

The European team integrated the French module in 2 weeks after handover (vs. 2 months estimated). The API-First philosophy paid for itself the moment real expansion happened.

What I took away

Balancing technical feasibility against business value, optimizing inside resource constraints, motivating a team under pressure — and seeing what is possible when 12 people pull toward one common goal.

“The greatest achievement of this project wasn’t the technical breakthrough. It was the cultural change — making cross-language, cross-regional teams realize that knowledge shouldn’t be confined by language and systems, but should flow freely and create value.”
Note: This case study describes work delivered while at a global gaming and entertainment organization. Specific company names, internal system identifiers, and proprietary details have been anonymized. All metrics, architecture decisions, and outcomes are accurate as delivered.