Ayush · Yadav run 042 · 06:12 · the start

¶ 01 · the start · 06:12

first light. nothing has been decided yet.

Software engineer

Caminante, no hay camino,
se hace camino al andar.

Traveller, there is no road; the road is made by walking.

Antonio Machado, 1912

↓ twelve stops, dawn to dark

¶ 02 · who · 06:58

Who.

A record of what I’ve built, and how I checked it.

I finished a B.S. in Computer Science at Miami University in May 2026. During my final year, I also worked as a data intern in IT Services. Three of the six projects below had teammates. Every project number links to its proof, or says why it can’t.

who built this
Ayush Yadav

answers for every claim on this page

  • baseCincinnati, OH
  • buildsweb apps · APIs · data pipelines · ML
  • languagesTypeScript · Python · Java · C++ · SQL
  • degreeB.S. Computer Science · Miami University, May 2026
  • emailaesh.03.23@gmail.com
  • résuméopen ⟶
  • handlesgithub ↗ · linkedin ↗
fig. 02 · the record card.

¶ 03 · the internship · 07:52

The path.

the yard

ITSM Data Integration Intern
IT Services, Miami University · Jun 2025 to May 2026

Before moving off an old Oracle reporting system, my team had to decide what to keep and what to drop.

I wrote a Python pipeline that traced five years of queries on the old system to every table and column they read, so the team could see what was still in use and what nobody had touched.

1.6M+ logged queries from 1,153 users, Jul 2020 to Jul 2025 · 57.8M rows, one for each time a query named a column
also: a master inventory of Tableau and Workday reports, 10,453 rows × 35 fields, duplicates removed

↳ the usage data stays with IT Services · the inventory’s case file ⟶

fig. 03 · two messy sources in, two products out.
the school record
degreeB.S. Computer Science · major GPA 3.65 · Dean’s List: Fall 2023, Spring 2025, Fall 2025
Feb 2025finalist, MUCAT Design Innovation · LiDAR visual assistance proposal · $2,500 prototyping grant

¶ 04 · project 1 of 6 · 08:47

Applied.

A job application tracker that reads your Gmail

Your inbox already knows where you applied.

I built it when I lost track of my own job applications. It sorts each reply into one of 8 kinds with 220 rules I wrote, and asks you about the borderline ones. I chose rules over an AI service, so your mail never goes to an AI company and sorting an email costs nothing.

1 wrong out of 96 labeled emails (0.990 macro-F1), rules alone · a change that scores below 0.95 macro-F1 fails the build
two small models take the hard cases in the full pipeline; the hosted app runs rules alone, because the model stack is too big for a Vercel function
built an int8 ONNX export for inference in the browser: 90 MB to 23 MB, measured 2026-08-03

Next.js · Python · PostgreSQL

the case file ⟶ · source ↗ · the live app ↗ · system card ↗

fig. 04 · the sorting line; the eighth email waits for review. tap or hover a desk for its verdicts.

¶ 05 · project 2 of 6 · 12:06

Cadence.

A calendar you can type to in plain English

Adding a plan to a calendar usually means a form.

In Cadence you type the plan as you’d say it, and it becomes the event, attendees and Meet link included.

no AI model: four parsers read each plan, two open source and two I wrote · 1,430 passed · 0 skipped (772 frontend, 658 backend)

React · TypeScript · PostgreSQL · Google Calendar API

the case file ⟶ · source ↗ · the live app ↗ · system card ↗

“lunch with Sam next Tuesday at noon, add a Meet.”

sam tue · 12:00 + meet link
fig. 05 · a scripted parse, not a live call. tap or hover a chip to see its words.

¶ 06 · project 3 of 6 · 15:23

Glyph.

A handwritten digit reader, running in this tab

“Now, here, you see, it takes all the running you can do, to keep in the same place.”
Lewis Carroll · Through the Looking-Glass, 1871

Glyph started as a small C++ neural network from a course, doing all its math on one core.

My classmate Shree and I spread its matrix math across 10 cores with OpenMP, and one 256×256 matrix product got 3.5× faster. The benchmark I built showed the whole network got no faster, so the page gives both. I got it running in your browser, where it reads 97.01% of the standard handwriting test correctly. Try it below.

9,701 of 10,000 MNIST test digits right (macro-F1 0.9698)
256×256 matrix product: 3.5× faster on 10 cores than one core at -O3 · the whole network: no faster (0.995×)

C++ · OpenMP · WebAssembly · React

the case file ⟶ · source ↗ · live demo ↗ · system card ↗

draw one digit, large and centered
● waking…
· conf · forward · read locally · no server
the committed bench · 256×256 matrix productfiled 2026-08-02 · on file @ 001e9b4 ⟶
one thread, -O31×
OpenMP threads3.5×

committed, not run in this tab · the raw run record (json) ⟶

fig. 06 · Glyph’s C++ network, compiled to WebAssembly.

¶ 07 · project 4 of 6 · 19:36

jetpack-compress.

A parallel gzip engine for Java

The gzip that ships with Java compresses on one core, however many the machine has.

I built an engine on JDK 25 that splits a file into blocks, compresses them on every core at once, and stitches them into one valid gzip file. On a laptop with 10 cores it runs 6.4× faster than Java’s own.

422 vs 66 MB/s on 32 MiB of generated text: 6.4× faster than java.util.zip on one thread (JMH, 3 forks, 99.9% confidence)
72 tests, 0 failures · Adler-32 vectorized 2.8× scalar (4.26 GB/s), still slower than the JDK’s own (14.06 GB/s)

the benchmark ledger @ 2caacd0 ↗ · source ↗ · project page ↗ · system card ↗

the committed bench · 32 MiB, gzipfiled 2026-07-27 · on file @ 2caacd0 ↗
java.util.zip · 1 thread66 MB/s
jetpack · virtual threads422 MB/s

committed, not run in this tab · both committed runs span 6.38 to 6.89× · the raw run record (json) ⟶

fig. 07 · split, compress in parallel, stitch into one gzip file. tap or hover a lane for its blocks.

¶ 08 · project 5 of 6 · 21:07

dusk. the hour that shows what didn’t get finished.

LifeQuest. A prototype, told honestly.

“Plan to throw one away; you will, anyhow.”
Frederick P. Brooks Jr., 1975

LifeQuest turns the grind of job hunting into missions. It began with a team of seven at Social Innovation Weekend in March 2025, and I later rebuilt it on my own in React and NestJS. The missions, tiers and backend all work. It isn’t built to scale, and I don’t call it finished.

↳ no case file: a prototype has nothing to argue yet · source ↗ · live prototype ↗ · system card ↗

fig. 08 · three floors built, two held on purpose.

¶ 09 · project 6 of 6 · 22:05

Agentic AutoML.

A capstone platform where an AI agent trains models, with human sign-off

Before I built a wall I’d ask to know
What I was walling in or walling out
Robert Frost · Mending Wall, 1914

An AI agent can run a notebook from raw data to a trained model. Unchecked, it can go wrong quietly.

Shree and I built it, as we did Glyph. A LangGraph agent profiles the data, writes and runs the notebook cells, and waits for a person to approve the training plan and any risky data cleaning step. Nothing deploys unless someone starts it. I was the backend developer and built the service that scores every trained model.

2,523 automated tests, all passing: 1,445 backend · 985 frontend · 93 landing
44 agent tools, 12 over MCP · the LLM’s Python runs in a Docker sandbox, locked down

TypeScript · Express · React · PostgreSQL · Docker

no accuracy figure is quoted: no committed evaluation earns one.

the case file ⟶ · the repo, gpl-3.0 ↗ · live build ↗

fig. 09 · the 12 MCP tools in source order, timing staged. the run halts before deploy.

¶ 10 · the review · 22:23

How I work.

“Sit down before fact as a little child, be prepared to give up every preconceived notion, follow humbly wherever and to whatever abysses nature leads, or you shall learn nothing.”
Thomas Henry Huxley · letter to Charles Kingsley, 1860

Every record is in one place: the evidence index ⟶ Numbers last checked September 2026.

classifier gate · Applied 1 wrong in 96, above the 0.95 floor passed
quote check · PolicyBot 1 of 20 answers went past its sources caught
measured again · Glyph a variance claim I had never measured retracted

the next stop is a person.

fig. 10 · three checks on my own work: one passed, two said no.

¶ 11 · the references · 22:32

Two people wrote this down in public.

My internship manager, and my teammate on Glyph and the capstone.

“From the start, he operated above intern level… He built data pipelines used to analyze Oracle Analytics Server usage… He understood intent, not just requirements.”
Randall Vollen· managed my internship; now Applied AI & Data Principal, CBTS
“I was particularly impressed with his ability to work under pressure or strict deadlines and still deliver high quality work.”
Shree Chaturvedi· B.S. Computer Science, Miami University, 2026

both written on LinkedIn, unedited except where an ellipsis marks a cut · the recommendations, in full ↗

Randall Vollen the yard07:52
Shree Chaturvedi glyph15:23 agentic automl22:05
fig. 11 · each reference joins the line from the stops where its writer saw me work.

¶ 12 · the approval gate · 22:41

dark. one decision left.and the light came back, the way it does.

Some calls should stay with a person.

Applied asks you about the emails it isn’t sure of. AutoML waits for a person before it trains a model. This one waits for you.

run 042 · the manifest, complete.

five projects and one prototype · one approval missing
042 is the day’s serial, not a visit counter.

scrolling could not press this button · the run ends only by hand.
  • 06:12the start
  • 06:58who
  • 07:52the yard
  • 08:47applied1 wrong in 96
  • 12:06cadence1,430 tests pass
  • 15:23glyph9,701 of 10,000 right
  • 19:36jetpack-compress6.4× faster
  • 21:07lifequest3 of 5 built
  • 22:05agentic automl2,523 tests pass
  • 22:23the review
  • 22:32the references
  • 22:41