skip to content

00 - ryan polasky

software engineer · backend + ai / llm tooling

i'm ryan,
i build stuff.

ut dallas cs grad (may '26). two summers at apple. most recently built autopsy - forensic memory for ai coding agents.

BACKENDAI / LLM TOOLINGDEVELOPER PRODUCTIVITYPYTHONTYPESCRIPTGOAPPLE 2024 + 2025UT DALLAS · MAY 2026GODOTREACT THREE FIBERNORTH DAKOTA

01 - about

small,
useful things,
on purpose.

i'm a computer science graduate from ut dallas ('26). i spent my last two summers as a software engineering intern at apple, building out ai tooling for the wireless tech (WTE) & the camera & photos organizations.

i enjoy backend, devops, and making llms actually do what you want them to do. i also have a bad habit of rebuilding this website. this is version eleven, but the older ones are still around if you want to see them.

languages

PythonTypeScriptHTML/CSSSwiftJavaScriptJavaC++SwiftUIRObj-C

data

PostgreSQLOpenSearchRedisMySQLSQLiteVector DBsMongoDB

ai / llms

LLM IntegrationRAG SystemsVertex AIFine-tuningFunction CallingEmbeddings

devops

KubernetesCI/CDAWS/GCPDockerHelmTerraformJenkins

02 - experience

places i've been.

01.

Apple at-home advisor

customer engineering · remote · may 2023 → present

worked remotely alongside school, sustaining a 6.87% escalation rate well below department average through independent research and advanced troubleshooting. 0.27 min average call wrap time, 15% above department-average csat, and 2× applecare excellence award recipient (2024, 2025).

+15%

csat vs dept avg

02.

ACM UTD development lead · education mentor

student leadership · dallas · may 2025 → may 2026

served as development lead within acm at ut dallas. mentored 1,200+ hackutd participants and debugged critical issues for 60+ teams. led meteormate, a react, fastapi, and postgres roommate-matching platform. also mentored four underclassmen through internship preparation.

1,200+

hackers mentored

03.

Apple camera api test automation

intern · cupertino · may–aug 2025

built automated parsing for thousands of on-device camera and photos tests, integrated llms into the failure-triage pipeline, and shipped a unified bug-report generator that attached relevant failure artifacts.

4,800%

manual triage reduction

04.

Apple wte tools engineer

intern · cupertino · jun–nov 2024

built an llm-powered chat interface and python package for translating natural language into sql and nosql queries. migrated internal services from java 11 to jdk 21, addressed security vulnerabilities, designed aws/gcp ci/cd pipelines, and optimized an ios log analyzer for real-time rendering.

nl → sql

schema-aware planner

05.

Altru Health System it intern

intern · grand forks · jun 2021 → jul 2022

repaired, imaged, and deployed hundreds of machines for a critical healthcare-system expansion. handled urgent hardware deliveries during peak demand and set the department intake record at 300+ devices.

300+

intake record

01/07

selected system

Autopsy

a black box recorder for ai coding agents.

PythonFastAPIPostgrespgvectorNext.jsTypeScriptopencodeGemma
Autopsy landing page hero
case fileaut-2026-05
verdict
3rd overall
docket
la hacks 26
honors
cognition h.m.
01. 02
Autopsy end-to-end pipeline diagram
the pipeline

record, classify, graph, repeat.

body

a one-line install drops a typescript plugin into opencode that streams every tool call, edit, rejection, and prompt to a fastapi service. rejected runs flow through a deterministic classifier and an optional gemma enhancer, then land as nodes in a pgvector-backed failure knowledge graph: 9 node types, 8 edge types, all in postgres.

Autopsy per-run details view
signal
  • 01Fire-and-forget event batching keeps agent latency at zero
  • 02Deterministic rules + LLM enhancer co-classify every failure
  • 03Knowledge graph lives in postgres, no separate graph db
01. 03
preflight03/01

warnings before the first token.

when a new task starts, autopsy embeds the description, runs ann search against past failures, and walks the graph (run to symptom to failure mode to fix pattern) with temporal decay and counter-evidence dampening. the most relevant warnings get injected straight into the agent's system prompt before it generates a single line of code.

  1. 013-hop graph traversal via a recursive postgres cte
  2. 02800ms hard timeout with fail-open behavior
  3. 03Per-edge temporal decay + counter-evidence dampening
Autopsy preflight retrieval tool
preflight tool
Autopsy register-rejection tool
rejection tool
01.
install cta
Autopsy install CTA section
01the problem

agents have no memory between runs.

every agent run starts from a clean slate. they forget last week's failure, drift the types again, skip the migration again, and burn api credits relearning lessons you already rejected. there's no recorder, no investigation, no safety briefing. we wanted to build the ntsb for coding agents.

  1. 01Rejections vanish the moment the session ends
  2. 02No feedback signal carries between runs
  3. 03Every agent run is groundhog day, but for your wallet
02results

3rd overall, cognition company challenge winner.

the closed-loop demo runs end to end on a real agent runtime. agent fails, autopsy records, graph grows, next similar task gets a warning, agent fixes it on the first try. fully local stack with 165 service tests passing across event ingestion, finalizer, classifier, extractor, graph writer, and embeddings.

  1. 013rd Overall + Cognition Company Challenge at LA Hacks 2026
  2. 02165 passing service tests across the full pipeline
  3. 03One-line install, fully local, no cloud dependencies
02/07

selected system

MeteorMate

ai-driven roommate matching for utd students.

React.jsFastAPIPythonPostgresFirebaseDevOps
MeteorMate landing hero
MeteorMate feature overview
02. 01

product lead

matching for actual living compatibility.

note

MeteorMate is built around the stuff that decides whether roommates work: sleep schedules, cleanliness, guests, study habits, social energy, and lifestyle preferences. I led the project shape from roadmap to task breakdown so the team could move from broad housing idea to a concrete matching product.

MeteorMate lifestyle preferences intake
MeteorMate interests selection
signal
  • 01Owned Kanban board, roadmap, and milestone breakdown
  • 02Coordinated product scope across frontend and backend work
  • 03Kept matching logic centered on habits, lifestyle, and preferences
  • 04Translated student housing pain points into ranked match criteria
02. 02
MeteorMate authentication flow
architecture

next, fastapi, postgres, firebase.

body

I defined and documented the end-to-end shape of the system: a Next.js/React interface for students, a Python/FastAPI backend for matching workflows, Postgres for structured application data, and Firebase where it made sense for auth and realtime product needs.

MeteorMate main carousel view
signal
  • 01Documented frontend/backend boundaries
  • 02Shaped API responsibilities around matching workflows
  • 03Balanced relational data in Postgres with Firebase-backed product flows
  • 04Created deployment strategy & set up all cloud infrastructure
02. 03
deployment + reliability03/02

shipping reliably across environments.

A big part of the work was making the service reliably boot and route in the environments the team actually used. I drove fixes around serverless-style entrypoints, routing behavior, and local parity so the backend could run predictably instead of only working on one person’s machine.

  1. 01Drove deployment strategy for local + Vercel-style workflows
  2. 02Fixed routing and entrypoint issues blocking backend startup
  3. 03Improved reliability expectations for a multi-contributor ACM project
MeteorMate on-campus housing view
on-campus
MeteorMate off-campus housing view
off-campus
03/07

selected system

NIMBYNIMBY

a 2D survivor roguelike about a druid fighting capital encroachment.

GodotGDScriptGame DesignAudioMusic Composition
03. 01
design01/03

rock-paper-scissors-druid.

four forms, each shaped to counter a specific boss archetype. fox bleed whittles the brute, bear smashes through armor, frog zones the bullet-hell phase, druid handles everything in between. swapping mid-fight builds a combo multiplier, so the meta-loop is "stay alive long enough to learn the matchup" rather than "pick a main and grind."

  1. 01Druid: nature bolt, vine snare, gust
  2. 02Fox: slash, bite, howl buff, dash
  3. 03Bear: heavy slash, bulldoze charge, tectonic slam
  4. 04Frog: poison spit, poison cloud, tongue grab
NIMBY druid form walk-cycle spritesheet
NIMBY fox form walk-cycle spritesheet
NIMBY bear form walk-cycle spritesheet
NIMBY frog form walk-cycle spritesheet
03. 02
NIMBY gameplay screenshot
encounters

four bosses, four mechanic flexes.

body

each boss is a different system stress-test. the lumberjack drops trees that permanently rewrite the navmesh. the foreman pours liquid concrete that hardens into area-denial. the contractor wraps himself in vehicle armor. the CEO shrinks the arena by paving it over while you fight him - lose ground, lose footing.

signal
  • 01Lumberjack: dynamic obstacles + real-time navmesh rebuild
  • 02Foreman: state-based terrain (liquid → solid concrete)
  • 03Contractor: armored vehicle plating requiring bear smash
  • 04CEO: shrinking-arena bullet hell on a timer
04/07

selected system

rycord

a cache-first 3d record room built from my discogs collection.

Next.jsReact Three FiberThree.jsPostprocessingDiscogs APISharpDocker
rycord main scene view
04. 01
rycord side scene view
the room

kallax shelf, cozy room, real covers.

body

the centerpiece is a procedural 3D shelf filled with the actual albums i own. each record is interactive: pull it out of the slot, flip to the back jacket, see the tracklist and the description load into an info panel. a turntable holds whatever record is currently "active" at the center of the shelf. roomdressing fills the rest - plant, mug, book stack, wall art, a paper note from me on the floor.

rycord vinyl pulled out of the shelf showing back jacket
signal
  • 01Procedural Kallax grid, density-configurable via env
  • 02Per-record front + back jacket with real Discogs cover art
  • 03Centerpiece turntable holds the active selection
  • 04RGB wall strip controlled by an in-scene remote model
05/07

selected system

LLM Test Triage

end-to-end triage pipeline for 1000+ camera tests: parse, group, classify, file.

PythonJenkinsGeminiLLMs
05.
01pipeline architecture

parse, group, classify. at scale.

every cycle the camera org ran 1000+ on-device tests, and manual triage of the failures was the slowest part of the loop. the pipeline ingests raw xml results, parses failure signatures, groups related failures so similar problems collapse into a single investigation, and feeds each cluster into an LLM for root cause analysis before anything reaches a human.

  1. 01Processes 1000+ camera test results per cycle
  2. 02Automated XML parsing extracts failure signatures
  3. 03Intelligent grouping clusters related failures before analysis
  4. 04LLM-powered root cause analysis per cluster
02gemini deduplication

75% dedup accuracy, 48× faster triage.

integrated Gemini for bug deduplication and root-cause hypothesis surfacing. 75% accuracy on duplicate identification meant new failures could be matched against the existing radar history before a fresh ticket got filed, eliminating redundant radars and speeding the end-to-end triage workflow by 4,800%.

  1. 0175% accuracy on duplicate identification
  2. 02Prevents redundant radar filings across cycles
  3. 034,800% speedup vs prior manual triage flow
  4. 04Root-cause hypotheses surfaced alongside each dedup match
03bug report automation

multi-threaded, retry-safe, attachment-aware.

the back half of the pipeline writes bug reports automatically. multi-threaded creation with exponential-backoff retry handles transient radar failures, database-backed regression analysis ties new failures to known historical patterns, and logs + failure context attach themselves to each report. ran daily for 50+ engineers across the camera org.

  1. 01Multi-threaded bug creation with exponential backoff retry
  2. 02Database regression analysis links failures to historical patterns
  3. 03Automated log + attachment handling per report
  4. 04Daily workflow for 50+ camera engineers
06/07

selected system

NL → SQL / NoSQL

natural-language query interface for internal data stores.

PythonFastAPIPostgres
07/07

selected system

RyMe.md

browser-only generator for animated github readme banners.

ViteReactTypeScriptTailwind CSSSVGCanvasCloudflare Pages
07. 01
RyMe.md glass-family banner output
RyMe.md sleek-family header output
RyMe.md terminal-family boot sequence output
RyMe.md code-family README.md output
RyMe.md neon-family synthwave header output
RyMe.md sine-wave footer output