Nathan Glenn

Software Engineer, Linguist, Open Source Enthusiast

日本語

nateglenn.com
nathan.g.glenn@gmail.com


Skills

  1. Python, Perl
  2. Java
  3. C/C++
  4. JavaScript/TypeScript
  5. MySQL, Kafka
  6. React/React Native
  7. Machine Learning
  8. Language/Speech Processing
  9. Docker, Kubernetes
  10. Git
  11. Google Cloud
  12. Updating Legacy Code

Projects

  1. Weka Analogical Modeling
    A state-of-the-art analogical modeling classifier, designed flexibly to aid in further algorithmic research. Released
    as a Weka package.
  2. ITS Work in Context System
    Converters for visualizing ITS metadata in HTML5 and XML documents in order to facilitate delivering instructions to text
    workers, including editors and translators.
  3. Soar
    A general cognitive architecture for intelligent behavior. I performed extensive maintenance, bug-fixing and modernization tasks to release version 9.6.1.

Selected Work Experience

Freelance | March 2022-Present
Applying NLP to build next-gen language-learning experiences for English, Spanish, Japanese, Mandarin, Thai, Arabic and more.
Tools Python, Node.js, C++, Java, TypeScript, Docker, UDPipe/Udify, MeCab, AWS Lambda

trivago N.V. | December 2016-March 2022
Development of core services for optimizing search results, including the price placement auction and the hotel ranking. Production-ready implementation of auction mechanisms and machine learning algorithms. Development of tools for visualization of business decisions and service QA. Cross-department coordination and general team leadership responsibilities.
Tools Java/Spring Boot, Docker/Kubernetes/Google Cloud, Kafka, Python, JavaScript

ATR-Trek, Inc. | April 2015-October 2016
Development of an NLU system for multiple locales, including contracting and managing corpus and domain dictionary work. Development of a web app for managing client linguistic resources. Turkish-Japanese translation system, including construction of corpora and custom morphological processors. Development of utilities for machine translation such as for word segmentation, corpus cleansing, and perplexity filtering. Updating, testing and automating legacy code.
Tools Java SE/EE, Perl, C#, C++, Stanford Core NLP Pipeline, TATR

Soar Technology | June–August, 2012
Combining spoken user input with gestures drawn on a map to direct the path of a robot (or simulated helicopter) safely through enemy terrain. This required combining speech recognition and grammar-based semantic parsing to produce grounded instructions for the agent. Writing Android application code and integrating a C++ library for speech recognition. Developing utilities to port proprietary grammar formats to an open format used by the new system.
Tools Java, JSGF, Android, Perl, Sphinx III, Sphinx 4, Soar

Center for Language and Speech Processing, JHU | June–August, 2011
NSF funded research investigating the use of a perceptron trained on synthetic confusions for discriminative language models in speech recognition and machine translation. Experimentation and feature exploration for automatically balancing generative and discriminative model scores.
Tools Java, Perl, OpenFST, Weka

Pedagogical Software and Speech Technology Group | 2010–2012
Development and maintenance of a web application for testing student language abilities, as well as a separate research system for grading student responses and predicting language abilities automatically using automatic speech recognition and machine learning. MySql database management.
Tools Perl, Java, Sphinx 4, MySQL, PHP


Education

Linguistics BA (CS minor), Brigham Young University, Provo, UT, USA, December, 2012.
Honors Thesis: JXNL-Soar: Minimalist Parsing of Japanese in a Cognitive Modeling System.