John Moeller

Machine Learning Researcher

No longer on the market

I joined Kitware in Fall 2016 to work on machine learning and computer vision.

Feel free to peruse my publications and experience.



University of Utah
Ph.D., Computing
Kernels and Geometry of Machine Learning
Machine Learning, Algorithms, Theory
2017 Salt Lake City, UT, USA

University of Utah
B.S., Mathematics
1999 Salt Lake City, UT, USA


Poster, Kernels and Geometry of Machine Learning.
2016 SDM Doctoral Forum Miami, FL, USA



Clifton Park, NY
Staff R&D Engineer
Extended and maintained open source toolkit SMQTK (for machine learning, image processing, and data processing)
  • Research: Currently researching graph learning algorithms for “patterns of life” analysis
  • Python: Added new features (nearest neighbor data structures such as Facebook's FAISS) and web service frontends

University of Utah, School of Computing

Salt Lake City, UT
Research Assistant
Advisor: Suresh Venkatasubramanian
  • Deep learning: Multilayer perceptrons, convolutional neural networks, working with kernel methods in deep learning applications
  • Supervised machine learning: support vector machines (SVM), multiple kernel learning (MKL), kernel methods, optimization
  • Computational geometry: non-Euclidean geometry, Bregman geometry, geometric approximation algorithms
  • C++, Python: Developed and maintained software implementing our MWUMKL algorithm. C++ implementation, Python front-ends for general use and integration with scikit-learn ML package, Swig interface layer.
Teaching Assistant, Clustering
Instructor: Suresh Venkatasubramanian
Fall 2016
Teaching Assistant, Advanced Algorithms
Instructor: Suresh Venkatasubramanian
Fall 2014


New York, NY
Software Engineering Intern
Host: Shankar Kumar
Research: Knowledge Spam (Burst Detection)
Summer 2013
  • Researched methods of timeline burst detection for knowledge topics (events, personalities, products, etc.)
  • C++: Developed convolution implementation of continuous wavelet analysis using Mexican hat wavelets
  • C++, Flume: Used Flume distributed computation framework to process massive amounts of topic information
  • Data-mined appropriate settings for finding bursty topics
Mountain View, CA
Software Engineering Intern
Search Quality, Localization
Summer 2010
  • C++, MapReduce: Wrote custom filters and data-mined web for location data

Onyx Graphics

Midvale, UT
Software Engineer
Implementing new features, maintenance
  • JNI (C++, Java): Developed and maintained interface between
  • legacy large-format printing code for backend and Java application front-end using JNI
  • Native acceleration: Added SSE instructions to accelerate
  • processing of large-format printing kernel
  • Halftoning technologies
  • Investigated new technologies

Cabletron Systems/Enterasys Networks

Salt Lake City, UT
Firmware Engineer
Ported and maintained Unix-based routing software on real-time embedded platform
  • C, C++: Backported ordinary routing protocols (OSPF, BGP, RIP) and multicast routing protocols (PIM-SM, DVMRP) to proprietary platform

Moog Aircraft

Salt Lake City, UT
Tech Writer, Test Engineer
Updated specifications (MS Word) and tested software (MS Excel, various)



I graduated with my PhD at the University of Utah School of Computing, and my advisor was Suresh Venkatasubramanian. My specialties are in machine learning and algorithms. I am no longer on the market! I joined Kitware in Fall of 2016.