About
Moriarty Engineering is one person, me
I'm Chris Moriarty, a scientific software engineer in Boston.
The front matter of my master's thesis reads: “Dedicated to my Mom for letting my Dad buy the Apple IIGS instead of a car.” That decision indisputably shaped my career. Growing up, I was the local IT kid, and my mom would offer my services to fix the neighbors' PCs.
My high school had a pre-law magnet program, which mostly taught me that I didn't want to be a lawyer. AP Physics and Calculus in my senior year pointed the other way, so I chose computer engineering at the University of Central Florida. After that degree, an introductory course in artificial intelligence captivated me, and I was recruited into the master's program in Intelligent Systems. My thesis taught non-player characters in Quake II to behave like the people playing them, by watching those people play.
After graduating, I spent three years writing C and C++ for network test equipment at JDSU, then two at Harmonia leading a Navy SBIR on software that recommended battle-management plans. In 2012 I moved to astronomy, and I've stayed.
At the Space Telescope Science Institute I worked on the proposal tool every Hubble and Webb observing program is written in, then wrote the control software for HiCAT, a coronagraph testbed for imaging Earth-like planets. At the Smithsonian I led software for the Submillimeter Array on Maunakea for three years, then spent three as technical manager of the Minor Planet Center.
In October 2024 I started Moriarty Engineering. Since then: virtualization and a second backup site for a planetary science data center, and the design for automating observing at a radio observatory, from proposal to archive.
Most days I work alongside coding agents, on open-weight models running on hardware I built. What I want to bring back to science is the part that keeps that safe: a spec before any code, checks a machine can run, and a person reviewing every merge.

The two-page version, with every role and date.
| M.S. 2007 | Intelligent Systems, University of Central Florida. Thesis: Learning Human Behavior from Observation for Gaming Applications. |
|---|---|
| B.S. 2005 | Computer Engineering, University of Central Florida. |
- HiCAT 6: software control infrastructure and calibrationMoriarty, C., Brooks, K., Soummer, R., et al. Proc. SPIE 10698, 2018.
- Learning human behavior from observation for gaming applicationsMoriarty, C., Gonzalez, A. J. Proc. FLAIRS-22, 439–444, 2009.
Further instrumentation papers and abstracts in SPIE and AAS proceedings: ORCID 0000-0002-1757-7573.
| smax-python | The Python client for SMA-X, the Submillimeter Array's Redis-based real-time messaging layer. The SMA team still maintains it. |
|---|---|
| catkit | The Python control library for HiCAT, the Space Telescope Science Institute's coronagraph testbed. I started it in 2017, and the HiCAT team carries the work on in its successor, catkit2. |
| braid | Turns a ticket into a pull request by running a coding agent through a graph of steps, each one checked deterministically instead of taken on the agent's word. OpenSpec and feature branching, with one interface to watch and steer both. MIT, in beta. |
| trog | A self-hosted AI game studio. Give it a one-sentence idea, and a LangGraph state machine takes it through prototypes, milestone builds, alpha, and beta to a playable web game, writing the code and generating the art and music while people watch, steer, and judge. Apache 2.0. |
| trog-too | Trog rebuilt from scratch on a resident vLLM model (Qwen3.8-27B), and spec-driven from the first commit: every change starts as an OpenSpec proposal and is validated in CI. MIT. |
| freedoku | An offline-first sudoku app with no account and no server. Every puzzle has a unique solution and never needs a guess. Built with opencode on self-hosted models. MIT. |
More of my current work is public on my own Forgejo server.