Hi There!
I'm a
Game programmer focused on tools, build, automation, engine, and gameplay engineering.
View Resume About MeGame programmer focused on tools, build, automation, engine, and gameplay engineering.
View Resume About Me
I came up through the trades — HVAC, electrical, construction — before finding my way into software, and that background shaped how I think about engineering: understand the problem from the ground up, build it right the first time, and don't leave a mess for the next person. My first real exposure to C++ was entirely self-taught, wrestling with a messy open-source game server codebase that taught me more about the value of clean, well-documented code than any classroom ever could. I gravitated toward tools programming at Champlain because I believe a well-built tool empowers non-technical collaborators and makes everyone's work better — including the debugging. That philosophy carried into MicroStrain, where I developed a deep passion for CMake, CI/CD, and systems architecture. I'm a generalist at heart who has shipped code across tools, gameplay, animation, UI, graphics, and audio — but my core focus is building the infrastructure that makes everything else possible. Details matter to me. They always have.
My primary language across production SDK development, desktop tooling, and game programming. 6+ years of professional experience shipping cross-platform code with a focus on performance, maintainability, and clean architecture.
My build system of choice. Developed a deep passion for CMake where I became the go-to for build configuration, cross-platform support, and project structure. A well-architected build is as important as the code it compiles.
Daily driver for version control across professional and personal projects. Experienced with branching strategies, CI/CD integration, and self-hosted Gitea workflows.
Used extensively for scripting, automation, and pipeline tooling across Linux environments. Comfortable writing maintainable shell scripts that integrate cleanly into build and deployment workflows.
Designed and maintained CI/CD pipelines professionally using Jenkins, including migration to GitHub Actions. Currently running a self-hosted multi-tool pipeline with Jenkins, TeamCity, and Gitea Actions, handling builds, deployments, and automated code checks.
Used professionally to build cross-platform desktop sensor applications. Comfortable with immediate mode GUI patterns and integrating ImGui into existing C++ codebases.
Used at Champlain College for game projects including scripting, remote database integration, and networking. Secondary language to C++ but comfortable picking it up when the project calls for it.
Working knowledge gained through CEF-based desktop application development. Comfortable enough for tooling UIs and web-adjacent work.
Working knowledge from personal and professional projects. Familiar with the widget model and signal/slot architecture.