Full-stack engineer

I build backend and data systems where correctness matters: validation, money calculations and migrations. Currently on a publishing platform at The Stable Book Group.

Senior Software Engineer · The Stable Book Group · Oct 2025 – Present · New York

Core stack

  • TypeScript
  • Node.js
  • MySQL
  • React
  • Next.js
  • AWS Lambda
Full index

Contents

Each one covers what I chose, what I turned down and what I left alone.

  1. Chapter 01 Stopping bad book data before it reached retailers Records with missing or contradictory metadata can no longer be switched on for retail feeds. At rollout, the new rule engine found 3,507 formats already in the feed failing at least one blocker, across 177 publisher accounts. 2 min read
  2. Chapter 02 Fixing royalty statements that paid authors the wrong amount Author royalty statements were wrong in several independent ways, overpaying some authors and underpaying others. One opening statement showed $66.18; the author was owed $3,277.88. 2 min read
  3. Chapter 03 Migrating a publisher and $5.5M of sales history A publisher’s royalty history came across onto their existing catalog without duplicating it. Of 451 MetaComet projects, 376 matched and the other 75 went to a reconciliation CSV, and 135,005 rows of sales history ($5.53M) came across. 3 min read

Earlier work

Software Engineer · Con Edison · New York · Jun 2024 – Sep 2025

Transformer Alerts

Transformer Alerts is the internal application Con Edison uses to monitor transformer health and track issues across New York City’s grid. It’s built on the C3 AI Suite, and its React frontend had to show transformer health data as it changed and flag problems early enough to address them before a failure.

I built features for that frontend, including 10+ reusable components that process and display transformer health data through C3 AI’s APIs, and integrated it with C3 AI backend services for real-time updates. I also integrated machine-learning models that predict potential transformer leaks, and surfaced their predictions in the app.

Leak predictions appeared alongside the health data, so issues could be addressed before failures, and data retrieval became 15% faster.

  • React
  • JavaScript
  • TypeScript
  • C3 AI Suite
  • C3 AI APIs

Smaller wins

Index

The stack I work in, and the ideas behind the chapters. Numbers are chapters and link to them; E is earlier work, and W a smaller win.

Also worked with: AWS RDS, Puppeteer, Radix UI, Slack API, Stripe, Tailwind, TanStack Query, TanStack Table, XSD.