Now · September 2026
fall '26
building
reading
featured
01 · Projects
Things I've built recently. Each one has a deeper write-up of its own.
I built an engine to simulate combat. It worked. I deleted it anyway.
I spent months building software to simulate combat physics for a tabletop RPG. It worked — the numbers were defensible and the damage was realistic — and the table went dead every time I used it, because the whole turn vanished into a silent prompt and came back as an opaque number. The fix wasn't a better engine. It was smaller numbers, and handing the part I couldn't enumerate back to the one general-purpose computer already sitting at the table.
A Python obfuscator whose loops always halt — and won't tell you when.
Most Python obfuscators rename your variables and base64 your strings. This one rewrites your loops into Collatz-like state machines you can't read without stepping through them by hand. The loop always halts. The only way to find out when is to run it.
A three-hour answer to a $98B screening bottleneck.
I went to a beginner-friendly hackathon expecting to build a toy. I left having traced the largest stuck-capital problem in American infrastructure to a single bottleneck, and built a tool that addresses a meaningful slice of it. The interesting part was the questions I asked to get there.
Persistence has a price. The profiler names it exactly.
A persistent priority queue is structurally incapable of surprising you. It's also slower than a mutable one, and the benchmarks will tell you exactly how much. Suprisingly, it doesn't have to be that much.
02 · Writing
Longer thoughts on software, craft, and the things that connect them.
Software is planned, estimated, and reported in hours. Hours are not what's scarce — they're what's easy to count. Here's what the actual constraint is, what the research says about it, and what to do differently once you take it seriously.
At every job since my first, I've automated something nobody asked me to. Not out of discipline — each time I ran the same three-term calculation and it kept saying yes. Here's the calculation, including the times it said no.
I learned to code to get what I couldn't have. Sometimes that didn't work out. I'd still do it again.
The deploy was green and the site had been down since launch. A debugging story about a confidently wrong model — and the one move it never makes on its own.
Worldbuilding teaches you to build worlds. Fanfiction teaches you to enter one, listen to it, and add something that belongs. That second skill is the one that actually transfers to engineering.
I got sick the day PyCon started in full, but I still came out with all my goals fulfilled, and a better understanding of how plans differ from goals.
Every "good code" property — readability, performance, modularity — earns its place only because it saves someone time. Once you see it that way, a lot of arguments about code style stop being arguments about taste and start being arguments about whose time is being saved.
03 · Skills
Eight instruments. Each one labeled by what it's for.
Each tool got reached for because a project needed it. The labels below are what I've used in production, in coursework, or in shipped personal work — not what I've read about.
For thinking in.
Python, Java, JavaScript, TypeScript, C/C++, SQL, HTML/CSS, HCL, OCaml, Racket, Dart, Bash
For wiring up the server side.
FastAPI/Uvicorn, Node.js, Spring Boot, Django, REST, OpenAPI/Swagger, API contract design, SQLAlchemy, Alembic, Pydantic, Zod, WebSockets
For shaping interfaces.
React, Next.js (App Router, SSG), Material UI, Emotion, CSS Modules, Tailwind CSS, Sass/SCSS, Flutter, Figma
For state, structure, and intelligence.
PostgreSQL, MySQL, SQLite, Pandas, NumPy, PyTorch, TensorFlow, Hugging Face, ONNX Runtime, embeddings & semantic retrieval, BeautifulSoup, web scraping
For getting code into the world.
AWS (ECS, Fargate, RDS, S3, Route 53, CloudFront, ACM, Lambda, EventBridge), Terraform, Docker, Jenkins, pnpm, Git/GitHub (parallel worktrees), CI/CD (GitHub Actions), Tree-sitter static analysis, Linux/WSL2
For shipping with confidence.
TDD, unit/integration/property-based testing, PyTest, JUnit, Jest, JaCoCo, Playwright/Chromatic, visual regression (pixel diff), service mocking & fixtures, pylint, PDB
For moving teams and surfacing real needs.
Agile/Scrum, sprint planning, stakeholder management, requirements elicitation, release management, code review, technical writing & handoff docs, presentation coaching, cross-functional team leadership
For building with agents, not just prompting one.
Claude Code, OpenAI Codex, Model Context Protocol (MCP), Agent Hooks & Skills, subagents, parallel agent orchestration, context engineering, agent authority design, LangChain, OpenAI API, prompt engineering
04 · Experience
Defense robotics, legal AI, teaching, consulting, and e-commerce platform tooling.
Software Engineer Intern
Chewy
Intern on the Agent Assist team, which builds the tooling 4,000 customer care agents use day-to-day. Led a live platform upgrade — React and Next.js 12 to 14, MUI v4/JSS to MUI v5 on CSS Modules and Emotion SSR — across 1,000+ call sites, using parallel git worktrees to keep it moving without freezing the main branch, and unified fragmented npm/Yarn workflows onto a single pnpm runtime spanning local, Docker, Jenkins, and release, cutting CI and test time 10%. Then built a Playwright pixel-diff harness across 102 mocked services so AI agents could test and ship changes unsupervised, collapsing repeated 30–60 minute UI smoke passes into under five minutes at roughly 4.5x the migration throughput. Finished on a Python and Tree-sitter static-analysis tool that separates actionable duplicates from intentional variants across TypeScript, JavaScript, and Java, combining semantic retrieval with API-contract, operation, reachability, framework, and Git-history signals to reach 87% actionable precision.
JUN '26 → AUG '26
SWE Consultant · Scrum Master
NExT Consulting
Half the week was client-facing — running discovery sessions to figure out what to ask, what to demo, and where to go next for a 5-person team replacing a spreadsheet-run warehouse with a live WMS/ERP on AWS Fargate. The other half was heads-down building, often with several Claude Code sessions running in parallel. Shipped five modules from scratch — MRP, MBOM traceability, receiving, demand tracking, and reservations — including migrating reservations to a three-stage quantity model across dev/staging/prod with Alembic without losing data integrity on an upgrade or a rollback, and inventory soundness checks that run at write-time, on manual edits, and on a periodic EventBridge sweep, so drift gets caught before it breaches a fulfillment SLA. Across 10 weeks the team put out 13 releases at ~1 week average client request turnaround, and I surfaced a handful of needs the client hadn't named yet.
JAN '26 → APR '26
Lead Teaching Assistant
Khoury College, Northeastern
Ran weekly labs with a team of four TAs. Built a set of LeetCode practice problems that ended up adopted as a standard resource across the course (400+ students) and drove a 50% lift in attendance, and wrote a style-check aggregator that saved the TA team ~70 hours of grading a semester.
SEP '25 → DEC '25
SWE Intern
Anytime AI · LegalTech
Built a shared React, MUI, and TypeScript component layer that every AI workflow now runs on, halving duplicated UI code and setting the frontend architecture direction. Built a frontend test harness against a fully mocked FastAPI/Uvicorn backend that caught 7 defects before they shipped. Weighed in on one design call that went my way.
APR '25 → AUG '25
Executive Assistant
Anytime AI · LegalTech
Wrote 20+ competitive dossiers on the legal AI landscape — positioning, product capabilities, emerging threats — reporting directly to the COO. Along the way, replaced a manual data-entry workflow with a Python and BeautifulSoup pipeline that normalized messy multi-page records into CSVs and routed them to the right per-jurisdiction endpoint, pulling the Zoho CRM migration in by two weeks.
JUN '24 → AUG '24
Robotics Software Intern
GuardBot · Defense & Research Robotics
Built a cross-platform (iOS / Android / Windows / macOS) remote-control app for the HARV product line — a Flutter and WebSocket command layer over QGroundControl — and shipped an end-to-end demo for FMEC 2024's 5G showcase: telemetry, RTK positioning, and live control input. Piloted the robot live from the US while it drove around a field in Sweden, holding real-time control across 3,000+ miles.
MAY '24 → JUN '24