Ryan Russon

CS senior at BYU with production software in daily use: document automation for a CPA firm, internal apps for a university, and a live site of my own. Graduating December 2026.

Selected work

01

SOC 1 Automation Suite

Pension Assurance LLP · Professional
The SOC 1 review tool with a sample report beside the generated workpaper rows
All report and workpaper content shown is fabricated sample data.

An automation tool that reads a SOC 1 Type 2 report and produces the firm’s filled-in review workpapers, flagging uncertainties for review. A SOC 1 review can include up to 2 hours of manual reading and scanning; the tool removes much of the manual searching, with a reviewer still verifying the result.

Uses an algorithmic, deterministic matching approach (no LLM layer), and accuracy is measured against existing completed reports. In testing, the tool exhibits zero high-confidence match errors. The suite continues in 02.

  • Python
  • PyMuPDF
  • openpyxl
  • tesseract OCR
  • Flask
02

CPE Tracker & Proposal Generator

Pension Assurance LLP · Professional
The CPE tracker reviewer showing a sample certificate beside the fields read from it
All certificates and personal details shown are fabricated sample data.

The other two tools in the suite, built on the same architecture as the SOC 1 pipeline.

The CPE tracker turns a folder of continuing-education certificates — different providers and layouts, some scanned — into the firm’s filled compliance spreadsheet, flagging anything uncertain for review.

The proposal generator builds a complete engagement package — cover letter, marketing body, engagement letter, merged PDF — from internal templates and data sheets. Both were 10–20 minute manual processes, now made near-instant.

  • Python
  • PyMuPDF
  • openpyxl
  • OOXML
  • tesseract OCR
03

norhog.com

Personal · Live
norhog.com — the history trivia site live in production

A history trivia quiz app — React frontend, Node/Express service, MongoDB Atlas, live scoring over WebSocket. Runs on EC2 under pm2 behind Caddy for TLS.

CI/CD pipeline: GitHub Actions runs frontend and service test suites in parallel; both must pass before a deploy job that activates on a push to main. GitHub OIDC authenticates with IAM role assumption — removing the need for AWS keys in repository secrets — and the build produces a tarball and pushes it to S3, triggering deployment through AWS SSM. If a deploy fails, the server automatically rolls back to the previous release.

  • React
  • Node/Express
  • MongoDB
  • GitHub Actions
  • OIDC
  • EC2
  • SSM
  • Caddy
04

BYU Law School

Professional
The BYU Law School public website — one of two production applications migrated from React to Svelte

Frontend developer on a 6-person team maintaining two production applications for BYU Law School — the school’s public website and an internal data-management app — serving 500+ users. Migrated both from React to Svelte using AI-assisted tooling, keeping feature parity throughout, and maintained on AWS (ECS, S3, Route 53, CloudWatch) in coordination with backend developers.

Built user lookup and input validation into the internal app to cut manual data entry, and enhanced search capabilities and site layouts among other updates to the public site — linked below.

  • React
  • Svelte
  • AWS ECS
  • S3
  • Route 53
  • CloudWatch
05

Wordle Solver

Self-directed final project · Academic interactive
Terminal running the Python Wordle assistant beside a solved Wordle board — candidates collapse from 2,315 to 1 and the puzzle is solved in four guesses

Two agents solving Wordle from a shared belief state — a Bayes filter that prunes the 2,315 possible answers after every guess. One picks guesses risk-neutrally, maximizing expected information gain; the other is risk-averse, minimizing the worst case. Benchmarked over every possible answer, and against a human player.

  • Python
  • TypeScript
  • POMDP
  • entropy
  • minimax
  • Web Workers
Also built
  • CI/CD and observability for a Node/React app — OIDC deploys to AWS ECS, custom Grafana metrics, Playwright E2E suite
  • AI agents — Reversi tournament agent with minimax and alpha-beta pruning, Bayes-filter robot localization, value-iteration planning under uncertainty
  • Serverless social feed on AWS Lambda / DynamoDB / S3
  • Datalog interpreter in C++ — lexer, parser, relational-algebra evaluator, graph-based rule optimizer
  • Client/server chess in Java — MySQL persistence, WebSocket gameplay, terminal UI

Experience

About

I study computer science at BYU with a history minor — 3.98 GPA, graduating December 2026. I'm from Agoura Hills, California, and I enjoy solving problems, learning new things, and building useful applications.

Languages
Python, JavaScript, TypeScript, Java, C++
Frontend
React, Svelte, Astro
Backend & data
Node/Express, MongoDB, openpyxl, pandas
Infrastructure
AWS (EC2, ECS, S3, Route 53, CloudWatch, SSM, IAM), GitHub Actions, Caddy, Docker
AI tooling
Claude API, Claude Code

Interests

Music
Piano, 14 years · Trumpet, 10 years
Astronomy
Apertura AD8 · favorite targets: M7, M13, M27
Geography
GeoGuessr Level 104 · A Community World, no-moving
History
University minor and ~25 books a year Favorites: By the Spear, Caesar: Life of a Colossus, Mutiny on the Bounty, American Prometheus Full reading list