Tech Enabled, Solutions Oriented
Software & Support Engineer
I think of documentation as a radical act of empathy from my current self to the future self who will not have a Ouija board.
Seven-plus years across federal, clinical, and commerce platforms, building in .NET, React, Python, and SQL, and asking production very politely what it thinks it's doing.
What I Do
Building Software
At Trove I designed and shipped internal applications in React, Python, and SQL, shaving an average of five seconds off their load times, and I was the sole owner of the warehouse photography workstream detailed in the case study below. Before that, as a software engineer at AIS, I worked on a Department of Defense contract in .NET architecture, paying down tech debt and contributing meaningfully to the broader engineering organization.
Troubleshooting
When something looks wrong, I trace it until I understand why. At Cogstate that means working across a platform of .NET microservices on Azure, with React front ends and SQL Server, Cosmos DB, and Databricks behind them, usually by way of a great deal of KQL, and often turning up race conditions and architectural bottlenecks along the way. Once the cause is clear, I size the production risk, get the right teams moving on remediation, and document the failure pattern, since the same thing has a way of breaking twice.
Documentation and Training
Documentation and training have run through most of my career, going back to my time as a software trainer at the USPTO. At Accenture Federal Services, I trained people on the HoloLens, ran troubleshooting training for client support teams, and built a knowledge base that cut repeat requests 15% in three months. At Trove, my onboarding documentation took five hours off a new engineer's ramp-up, and I ran regular training for the support team alongside tutorials and release-day support. At Cogstate, I write the runbooks for failures we've seen before.
Automation
My tolerance for doing the same task by hand runs out at about two repetitions, after which it becomes a script. Over the years, that instinct has produced maintenance automation that returned 30 hours a month to my team at AIS, a streamlined data collection process at Guidehouse that saved more than 200 hours a year, and the hands-free warehouse photo pipeline described below.
Feeding Tickets Back to Product
I read support tickets in aggregate, looking for the patterns that only show up across many of them. At Trove, a feedback loop I built between support and product turned those patterns into three shipped features and a 25% drop in repeat requests within six months.
Stack
My current environment at Cogstate is a .NET microservices architecture on Azure, with React front ends and data layers in SQL Server, Cosmos DB, and Databricks.
Languages
Front End
APIs and Services
Data, Cloud, Observability
Workflow
Trajectory
Application Support Engineer · Cogstate
I own technical investigations end to end across the .NET microservices and React front ends behind Cogstate's clinical data pipelines, on Azure, where accuracy has scientific consequences. Tracing data from creation to the report where it surfaced wrong, then turning findings into remediation plans, runbooks, and summaries leadership can act on.
Product Support Engineer · Trove Recommerce
I was the technical escalation point on a high-volume resale platform, handling tier 2 and 3 escalations for partners and running the feedback loop from their tickets back to product. I also shipped custom applications in React, Python, and SQL, created tutorials and provided day-of support for product releases as the primary subject matter expert for triage, and served as sole owner of the warehouse photography workstream, working across internal teams and external clients from across the country.
Next-Gen Research Engineer · Accenture Federal Services
I owned SharePoint deployments start to finish: requirements, deployment, testing, and sign-off. I also worked with Matterport 3D capture, Microsoft HoloLens, and Skydio drones, trained people on the HoloLens, and researched emerging technology for leadership, including early evaluation of ChatGPT. The work was recognized with a Department of State award for delivery.
Junior Software Engineer · Applied Information Sciences
On a Department of Defense contract, I worked with senior engineers on design, development, and testing across .NET, Python, and JavaScript applications, and paid down tech debt along the way. Resolved 100+ bugs and helped deliver five major projects ahead of schedule. Automating routine maintenance gave the team back 30 hours a month.
Technology Consultant · Guidehouse & CGI Group
I managed the product backlog on a $6 billion federal project, built my first RESTful API integrations, and supported 11,000+ users. Streamlining the data collection process saved 200+ hours a year.
Case Study
A Shutter-to-Retouch Photo Pipeline for Warehouse Operations
The Situation
At Trove I was the sole owner of the workstream where photography met technology: a warehouse across the country from me, serving customers in stores nationwide, with work that spanned internal teams and external clients. Every item that came through needed photos, metadata, and notes before it could be listed for resale. Team members were often juggling arcane bugs between CaptureOne, the warehouse cameras, item records, Google Drive, and the retouching service, and less technical team members were often left with tickets open for weeks with zero recourse.
The Approach
I rebuilt the capture app in Python and Tkinter, using AppleScript to connect CaptureOne directly to the warehouse cameras, so that a single keystroke saved the photo, its metadata, and the item notes together. Every shot went straight to Google Drive, where a cron job carried files to the retouching service and delivered the finished images back.
The Result
The new app improved partner onboarding, let photographers keep their hands on the camera, and put an end to metadata going missing between systems. I also wrote its documentation and instrumented it with telemetry that tracked myriad things, because I wanted all the information I could get about how it was running.
Projects & Ideas
Earworm
BuildingA music meditation app, built on the premise that whatever song is stuck in my head usually means something. Each entry pairs the song with whatever it dragged up, and each month's reflections resolve into a word cloud of what I kept returning to. It's built in React, TypeScript, and Vite, and saves to the browser for now. Source
NYC Taxi Pipeline
ShippedAn ELT pipeline over New York City's public taxi trip data, in which DuckDB reads Parquet files directly from the TLC's servers, dbt models them into daily and hourly marts, and schema tests guard data quality on every build. The whole thing lives in a GitHub Codespace, and the documentation site is generated from the pipeline itself. Source · Docs site
HTTP Server from Scratch
BuildingAn HTTP server written in plain Python through CodeCrafters, handling request parsing, routing, headers, and responses entirely by hand. After years of building on top of HTTP servers, I wanted to understand exactly what one is doing underneath.
InfernalOps
PrototypeHell has a backlog. InfernalOps is the internal tooling: a Python task system for the underworld's administrative staff — souls onboarded with unique IDs, burdens assigned, updated, reassigned, and on rare appeal removed. Somewhere between The Good Place and the bureaucratic-afterlife genre in Chinese fiction, where damnation is mostly paperwork and the clerks are behind on tickets.
Filler Arc
In the notebookA journal for what I watch — films, shows, anime — built on the instinct to document anything that induces frisson, or even just a thought. Rewatches are first-class: every viewing gets its own entry, so the eighth time through a film sits beside the first, and you can see what changed. (Research to date: eight viewings of Sinners, written up every time.)
Now
At Cogstate
As an application support engineer at Cogstate, I work as senior support engineer, systems analyst, and production steward at once, for the .NET microservices on Azure behind the company's clinical trial data. I trace data from the moment a trial participant is created to the report where something surfaced wrong, then translate what I find into remediation plans, Jira tickets, and summaries leadership can act on.
The work puts me in regular contact with product, science, DevOps, engineering, client support, and outside partners, and I serve as the bridge between technical investigation and business-facing communication.
Building
Earworm; this site and its blog; and a small Claude Code clone through CodeCrafters, which is working its way up to the tool-calling loop. I build with Claude Code, and writing my own version of it is how I'm learning what it's actually doing under the hood.
Data Engineering in an AI World
The pipelines, data quality, and observability that AI systems quietly depend on. My day job already involves data integrity work across Databricks, Cosmos DB, and SQL Server, and the NYC Taxi pipeline is where I practice the modern side of the stack with dbt and DuckDB.
AI-Assisted Engineering
How assistants like Claude Code change the scope of what a single engineer can own, and how much of a support queue an assistant can handle well before it needs someone who genuinely knows the system.
Get in Touch
I'm looking for support and solutions engineering roles where the customers are developers and the work spans troubleshooting, tooling, and documentation. If that sounds like your team, I'd love to talk.