Computer Science student shipping production systems — from a funded startup's full stack to identity infrastructure at scale.
01About
I'm a Computer Science student at the University of Miami, studying full-stack engineering and applied AI. Right now I'm the only engineer at Plotted, a small early-stage startup, where I've been building most of the product myself — a map, a feed, billing, the usual mess of things a product needs. I generally like figuring out how something works and then trying to make it work better.
02Experience
May 2026 — Present
Founding Software Engineer
Plotted
Working as the only engineer alongside one non-technical co-founder, building out the full product — a Next.js/React map interface, a content feed, and the Node/Express backend behind both — end to end.
Designed a personalization algorithm for the content feed that ranks stories using a reader's own read history — recency, event type, region, and topic — without any explicit preference settings.
Added tiered rate limiting across the API after a third-party security review flagged the gap, and tracked down a proxy misconfiguration that was grouping every visitor under one IP.
Rebuilt how the map renders after noticing it ran slowly on phones — swapped hundreds of individual DOM markers for a few GPU-composited Mapbox layers.
Handled the Stripe billing integration and general infra work on Vercel and Railway, and have been iterating on the product based on how people actually use it since opening it up publicly.
Aug 2025 — Dec 2025
Software Engineering Intern
Plantmatch
Added in-store pickup as an order option — a status-tracking UI backed by a new API endpoint — with automated emails to keep staff and customers updated.
Built a self-service email marketing tool for nursery admins, using Nodemailer to handle campaign delivery.
Added content moderation to the community feature using OpenAI's moderation API, behind a three-strike system before anything led to a permanent ban.
Fixed a range of smaller things along the way — a mobile-first redesign of the app's modals, a build failure traced back to a storage client that was initializing too early, and a few auth and rate-limiting bugs.
Jan 2026 — Present
IT Developer — Identity & Access Management
University of Miami IT
Rebuilt a step in the identity-deletion pipeline that was failing on a lot of accounts — swapped a flat CSV lookup for a UUID-based lookup against the SailPoint IdentityNow API.
Wrote the query and cursor-based pagination logic that filters SailPoint IdentityNow for identities that are actually safe to remove.
Built a Python client for the SailPoint API from scratch, since we didn't have one — handles auth and pulls historical account data for troubleshooting.
Handle Profisee account administration and ServiceNow tickets on a weekly basis, and test integrations through SOAP UI before releases.
Jan 2026 — Present
Web Developer Assistant
School of Education IT, University of Miami
Help build and maintain department websites — front-end work in HTML, CSS, and JavaScript, with some React, plus general back-end support.
Test and debug site features across browsers and devices, and run quality-assurance passes before changes go live.
Handle content updates and multimedia integration, along with basic SEO and accessibility checks.
Work with developers, designers, and the content team on new features, and document updates as they go out.
Feb 2025 — Present
Technology and Computer Assistant
Libraries IT, University of Miami
Handle day-to-day troubleshooting and support for a library of 100+ student workstations, plus general tech questions from students and faculty.
03Projects
Provenance Guard
2026
A content-provenance tool that classifies text as AI-generated or human-written, combining an LLM call with a local stylometric heuristic into a single weighted confidence score — plus a full audit log and creator appeal workflow.
PythonFlaskGroq API
FitFindr
2026
A multi-tool AI shopping agent that takes a natural-language query, searches a secondhand-clothing dataset, and uses an LLM to suggest outfit pairings and generate captions — orchestrated by a hand-rolled planning loop, no agent framework.