I build production AI systems end to end. A consumer app that reached
9,500 users, multi-node post-training on 70B models, and
agents that do real work.
An agent that penetration tests web applications. It finds authorization and
logic flaws, the class of bug scanners cannot reach because it requires understanding what a
given user is supposed to be able to do.
10findings written up
1high severity
9programs
0from a scanner
The best finding so far is broken access control on a major CRM: a low-privilege portal member
could read every contact record, including email, phone, job title and company, plus the subject
and body of logged emails, while the vendor's own modern surfaces correctly told that same user
it could read nothing. Three independent controls confirm it, including a positive control that
moves the modern surfaces from zero to one while the legacy routes keep returning everything.
Getting there needs an accurate map of what the application can actually do, so the agent
recovers the API contract from the code the client is handed rather than from crawling, which
surfaces routes and request shapes a crawler never reaches. Then it works that surface as
different identities and compares what each one can get.
Every finding is verified by direct request before it is written. Nothing is
inferred from a scanner, and severity is argued down rather than up.
The discipline is mostly in what gets thrown away. One bulk pass produced 994
findings that were all false positives. Catching that mattered more than any of them.
One report was drafted as medium trending high, then killed by a positive control
against my own account and downgraded to low. Another was sound but never filed, because the
bug class was out of scope for that program.
Dec 2025 – Jun 2026CofounderPython, FastAPI, Postgres, Azure
Dataset Labs
Describe the data you need in plain language. Agents scrape the web, query API
providers, verify every result, and hand back a structured dataset that is ready to act on.
246datasets built
~80klines of code
30+data providers
1backend engineer
Clay and Apollo hand you a list and leave you to filter, clean and enrich it across several
tools. This was one step: say what you want, agents research each row, a verified dataset comes
back. I owned the entire backend and the agent system.
Verification gated billing. If we could not confirm a real website, a live email or
a working phone, the row did not ship and the customer was not charged for the attempt.
Source allocation is a multi-armed bandit. Crawl budget goes to sources by Thompson
sampling on per-source Beta posteriors, weighted by observed cost per usable row. Every
threshold is relative, so it adapts to a new vertical without retuning.
Durable execution for long-running agent jobs: leases, checkpointing, pause and
resume, idempotent replay after a worker restarts.
Thirty-plus providers behind one namespaced tool interface, with contact enrichment
running as a waterfall and every call cost-tracked against a credit balance.
Backed by NVIDIA Inception, AWS Activate and Microsoft for Startups.
Dataset Labs
Expand246 datasets built. Reddit leads, government auctions, supply-chain signals, VC firms. One prompt starts a table.
Expand1,000 Seed to Series B startups pulled, then enriched for whether they are hiring a first sales rep, with founder contact and a one-line opener. Cells fill live. 3m 18s.
ExpandThe agent checked for a maintained scraper, found none that matched, and fell back to browser extraction against the federal auction portals. Three tables, 6m 34s.
ExpandBuilt from the live FEC API, four enrichment columns configured, then filtered to one party on request in 13 seconds.
ExpandMetered credits over Stripe. Every provider call was cost-tracked and charged against a balance.
ExpandCustomer feedback, redacted. “This is surprisingly good... yall went above and beyond. How did you do this?”
The company failed on positioning, not engineering. We built
horizontally, a dataset for anything, which made it harder to sell and harder to build than the
vertical version would have been. The site is still up at
datasetlabs.ai, and the worker is at
github.com/dylanzonix/datasetlabs-worker.
Dec 2024 – Nov 2025Founder, solo engineerReact Native, FastAPI, PyTorch, vLLM
Pathbend
A consumer AI companion app on iOS and Android. I built the mobile client, the
backend, the training pipeline and the inference stack.
9.5kactive users
1h 02mavg engagement
1.3Mevents
3.7sessions per user
Those are the first seven weeks. Scenarios were written by users, and the most popular ones
drew hundreds of thousands of comments.
Pathbend
ExpandUser-written scenarios. The top one has 346k comments.
ExpandOne conversation, three moments. The scene image regenerates against the narrative beat and lines are voiced by a self-hosted TTS model. Getting generation to track a story turn by turn was the hard part.
ExpandCharacter creation. Scenarios were authored by users, which is what made the content problem interesting.
ExpandThe moderation layer in production. Flagged output is collapsed rather than deleted, and regenerate is one tap away. That tap is also how preference pairs were collected.
ExpandUser reporting, routed into the review queue that fed the content classifier.
Expand9.5k active users, 1.3M events, 1h 02m average engagement. Jun 13 to Aug 2 2025.
ExpandEngagement and retention over the same window.
ExpandManaged human annotation with review and rework stages. Rejected work went back around.
ExpandAwarded a $50,000 Azure sponsorship. $42,818 consumed.
Post-training
The product was also the data collection pipeline.
70Bparameters, full weight
16H200s across two nodes
69.5%preference accuracy
4preference datasets
Supervised fine-tuning then DPO on Llama 3.3 70B under DeepSpeed ZeRO-3. Full
weight, no adapters, 4096 token sequences, about seven hours a run.
Regenerate-and-swipe was the core interaction, so every user choice was a labeled
preference pair. Four successive preference datasets came out of production traffic.
A moderation failure tanked the store rating. I trained a 3B scalar scorer to rate
generations, then instead of hard-rejecting flagged output, which users experienced as the
model breaking, folded the score into the preference data so the policy stopped producing bad
output in the first place.
Fine-tuning made the model repetitive, which measurably hurt retention in a creative
product. Temperature did not fix it. Spherically interpolating the fine-tuned weights back
toward base did.
Served it all myself: vLLM for language and speech models, a throughput-optimized
custom path for image generation, on AWS and Azure.
2019 – 2024Before the AI work
Earlier
Penetration testing, independent
Aug 2023 – Dec 2024
Ran a two-person red team practice. Clients included Apptegy, DeSo and UNLV. Web
application and API assessments, internal corporate networks, and blockchain protocols.
Reported high-impact findings and worked with client engineers through remediation.
SOC analyst, PredictiveIT
Sep 2022 – Apr 2023
Security operations at a managed service provider covering about 70 client environments.
On the team that recovered all client data after a ransomware incident downstream of the
Kaseya supply chain compromise, and contributed to the team's reverse-engineering work with
CrowdStrike on the 3CX attack.
Torus
Jul 2019 – Mar 2022
A desktop app that bought limited-release sneakers automatically, built solo starting at
17. I kept reverse-engineering checkout flows to find latency advantages competitors did not
have, which is what decides a race measured in milliseconds. About $120,000 in revenue over
five months. @TorusSuccess and
@torus_bot.