Software engineer, systems builder, and former athlete.

I'm Devin, a software engineer in Southern California. I build infrastructure, distributed systems, and developer tooling, and I care most about making complex systems easier to operate. Right now that means Ekman, an embeddable state machine runtime for backend services, built so a lifecycle does not have to become its own service to be run well. Before that I finished an M.S. in Computer Science at CU Boulder, where I also played inside linebacker. Away from the keyboard I surf, ski, lift, hike, and listen to more metal than is reasonable.

  • Ekman

    August 2026

    TypeScriptNode.js

    An embeddable state machine runtime for backend services, built so every lifecycle in a system is defined one way and run by one runtime instead of becoming its own service. Each instance is addressed by a human-readable key, holds its own state and values, and processes triggers one at a time, so handlers need no locks. The runtime owns what homegrown versions leave out: ordering, retries and timeouts, fencing, constraints, history, queries, and a memory budget that keeps a full audit trail without keeping every instance resident. No server, no cluster, no sidecar. Zero runtime dependencies, backed by a language-neutral spec and a 68-scenario conformance suite so it can be ported to Go, Rust, and C++ and embedded in low-level systems.

    Distributed SystemsState ManagementDeveloper ToolsOpen Source

    github.comnpm

  • Git

    December 2025

    C

    A Git implementation written from scratch in C that reads and writes Git objects and supports the core version control operations. It implements the object model (blobs, trees, commits) with SHA-1 hashing and zlib compression, and can initialize repositories, read and write objects, build trees, stage files, commit changes, and clone remote repositories over the Git transfer protocol with pack file parsing.

    Systems ProgrammingStorage

    github.com

  • Redis

    December 2025

    Go

    A Redis server written from scratch in Go that speaks the Redis Serialization Protocol and handles concurrent client connections. It covers key-value commands with TTL expiration, Lists, Streams with blocking reads, and Sorted Sets, plus transactions (MULTI, EXEC, DISCARD), master-replica replication with RDB transfers and command propagation, RDB persistence, Pub/Sub, and ACL-based authentication.

    Systems ProgrammingNetworkingConcurrencyStorage

    github.com

  • Shell

    November 2025

    C

    A POSIX-style shell written from scratch in C, in the spirit of Bash or Zsh. It has a full REPL with command parsing, process spawning, and built-ins (pwd, cd, echo, type, exit, history), single and double quoting with backslash escapes, stdout and stderr redirection with append modes, multi-command pipelines that work with built-ins, tab completion for executables and built-ins, and persistent history with arrow-key navigation.

    Systems Programming

    github.com

  • HTTP Server

    June 2025

    Java

    An HTTP/1.1 server written from scratch in Java on raw TCP sockets, with no HTTP library. It parses request lines, headers, and bodies, handles GET and POST, serves static files, and returns proper status codes. It supports concurrent clients with multi-threading, gzip and other compression schemes, and persistent connections with correct close handling.

    Systems ProgrammingNetworkingConcurrency

    github.com

  • I'm Something of a Painter Myself

    June 2024

    Python

    A CycleGAN in TensorFlow and Keras that turns photographs into paintings in the style of Monet, for the Kaggle competition of the same name. Two generators and two discriminators handle bidirectional image translation, with adversarial and cycle-consistency losses keeping the output realistic. Uses GroupNormalization and trains on TPU and GPU.

    Machine LearningGenAIComputer VisionKaggleGrad School

    github.com

  • CNN Cancer Detection

    June 2024

    Python

    A convolutional neural network that identifies metastatic tissue in histopathologic scans of lymph node sections, from the Kaggle competition "Histopathologic Cancer Detection". Covers data loading and augmentation, a Keras Sequential architecture with regularization, training, evaluation on accuracy, loss, and recall, and a competition submission.

    Machine LearningComputer VisionKaggleGrad School

    github.com

  • Automodel

    October 2023

    TypeScriptNext.jsPrismaPython

    My first end-to-end product, built for my software architecture course in grad school (Finarima on GitHub). A Next.js app takes a ticker and a time period and returns fitted ARIMA models and plots. Requests go through API Gateway to a Lambda running a custom container from ECS, plots land in S3, and MySQL via Prisma holds the data, with Clerk and Stripe on the front end. Barebones by design, but it shipped and worked end to end. No longer hosted.

    Full StackAWSGrad School

    github.com

  • Film Immersion

    November 2022

    PythonOpenCV

    My first large project, and the one that combined the most moving parts: a pipeline that turns multi-angle sports footage into an interactive 3D environment so a viewer can watch a play from any position on the field. It was split into a model trainer, an inference service, a transform service for pose estimation and multi-view synthesis, and a 3D reconstructor. I gathered and labeled the training data myself and trained on both local hardware and AWS. It proved out real-time 3D reconstruction from 2D video and stays private because it was built with commercial intent.

    Computer VisionMachine LearningDeep LearningAWS

    Private

Latest writing