Data Scientist, Applied Mathematician, Developer



I am a data scientist with an extensive background in applied mathematics, consulting, software development, educational technology, bioinformatics, evolutionary biology, physics, and information theory, among others. I have built data-driven products, created novel statistical methods for extracting information and visualizing data, and presented detailed analyses to a huge variety of audiences including executives, customers, and academics.

As a long time technologist, I have much experience programming in Python, C++, Go, and other languages, extensive knowledge of computer science and computer networks, proficiency with major machine learning packages such as scikit-learn and R, experience building websites, and a working understanding of computing hardware including databases and scalability (big data).


Data Scientist / Quantitative Analyst

Google, Sept 2016 - Present

Statistics, Machine Learning, Quantitative Analysis of large datasets, development of metrics, experiments, and much more

Data Science Instructor, Content Developer

General Assembly, March 2016 - August 2016

I taught a part time data science course for professionals with General Assembly in Santa Monica. The course covers a wide variety of data science topics (syllabus). I also developed and QA'd content for the full-time Data Science Immersive course.

Technology Consultant, Data Scientist

Covariant Consulting (owner) / Independent Consultant, 2008 - Dec 2016

Created ALEKS PPL, an artificial intelligence based mathematics placement system. Implemented placement programs at ~100 universities including systems integrations (single sign-on, automated data feeds, etc.), institutional policies, data analysis, marketing strategy, training, and conference presentations. Developed an analytics platform for placement data and assisted numerous schools in their research.

Bioinformatics Researcher (Postdoctoral Scholar)

UCLA Institute of Genomics and Proteomics, 2009 - 2013 (4.5 years)

Research in bioinformatics, evolutionary game theory, machine learning, statistical inference, and biochemistry, among others. We created phenotype sequencing, a method of determining which genes are causal for a given phenotype using high-throughput sequencing. We also created a machine learning based strategy for the iterated prisoner's dilemma. See below for more publications.

Teaching and Research Assistant, Data Analyst (Graduate student)

University of Illinois, 2004 - 2009

Doctoral research in Evolutionary Game Theory and Information Theory. Taught many courses from basic math through Calculus III. Five appearances on the list of instructors rated outstanding (top 10%) by students at the University of Illinois. Nominated for multiple departmental and campus-wide teaching awards.



Code Samples

Selected Publications

Evolutionary Dynamics

  • Evolution Reinforces Cooperation with the Emergence of Self-Recognition Mechanisms: an empirical study of the Moran process for the iterated Prisoner's dilemma, with Vincent Knight, Nikoleta E. Glynatsi, and Owen Campbell. [ArXiv preprint] (2017)
    Using reinforcement learning techniques we show that agents naturally evolve handshaking mechanisms to resist invasion. We also use various machine learning techniques to produce highly capable invaders, and given a comprehensive computational study of fixation probabilities of the Moran process for ~200 strategies.
  • Reinforcement Learning Produces Dominant Strategies for the Iterated Prisoner's Dilemma, with Vincent Knight, Martin Jones, Georgios Koutsovoulos, Nikoleta E. Glynatsi, and Owen Campbell. PLoS One (2017). [ArXiv preprint]
    We use reinforcement learning (evolutionary algorithms) and a variety of machine learning techniques to produce strategies that win iterated prisoner's dilemma tournaments.
  • An open reproducible framework for the study of the iterated prisoner's dilemma, with Vince Knight, Owen Campbell, Karol Langner, et al. Journal of Open Research Software (open access) [ArXiv preprint] (2016).
    The Axelrod library is an open source Python package that allows for reproducible game theoretic research for the Iterated Prisoner's Dilemma
  • Stationary Stability for Evolutionary Dynamics in Finite Populations, with Dashiell Fryer. Entropy (open access) [ArXiv preprint] (2016)
    We show that the maxima and minima of the Moran process satisfy an analog of evolutionary stability (incorporating mutation), generalizing the Lyapunov theory of the replicator equation to finite population Markov processes with mutation. See this gallery of examples (Bomze's 3x3 archetypes) for a demonstration. More precisely, we show that the stationary distribution of the Moran process (and related processes) with mutation in finite populations contains information about the evolutionary stability of states of the underlying process.
  • Entropic Equilibria Selection of Stationary Extrema in Finite Populations, with Dashiell Fryer. [ArXiv preprint] (2015)
    We use the stationary distribution and entropy rates of the Moran process with mutation to compare equilibria within a Markov process and across similar Markov processes. Altering the strength of selection, mutation rate, or population size can change which equilibria is most likely under the Moran process with mutation.
  • The Art of War: Beyond Memory-one Strategies in Population Games, with Chris Lee and Dashiell Fryer. PLoS One [ArXiv preprint] (2015)
    We present a highly-robust machine learning-based strategy for the prisoner's dilemma in population games that naturally forms coalitions, is typically able to invade any other opponent (more often than a neutral mutant), and is highly-resistant to invasion by other strategies.
  • Lyapunov Functions for Time-Scale Dynamics on Riemannian Geometries of the Simplex, with Dashiell Fryer. Dynamic Games and Applications (DGAA) (2014) preprint-pdf (Formerly titled "Stability of Evolutionary Dynamics on Time Scales", ArXiv preprint)
    We give a far-reaching Lyapunov theorem for incentive dynamics on time-scales for a large class of Riemannian geometries, with a wealth of examples. This work substantially generalizes the results in my 2011 Physica D paper "Escort Evolutionary Game Theory". An overview is given in this Azimuth blog post.
  • The Inherent Randomness of Evolving Populations, Physical Review E. [ArXiv preprint] (2013)
    Computations and theorems on the entropy rates of the Moran and Wright-Fisher processes with mutations.
  • Escort Evolutionary Game Theory, Physica D, Vol 240, Issue 18 [ArXiv preprint] (2011, 30+ citations, originally part of my 2009 PhD thesis)
    This paper explores the evolutionary dynamics of generalized entropies and information divergences, simultaneously deriving Lyapunov functions for an infinite family of dynamics that includes the replicator and projection dynamics. (
  • Information Geometry and Evolutionary Game Theory. [ArXiv preprint] (2009, 20+ citations, part of my PhD thesis)
  • The Replicator Equation as a Continuous Inference Dynamic. [ArXiv preprint] (2009, 20+ citations, part of my PhD thesis)
    Replicator dynamics and Bayesian inference are closely related.

Bioinformatics / Biochemistry / Molecular Biology

Educational Technology