About Me

I am a soon-to-be graduate of Iowa State University with a Bachelor of Computer Engineering degree. I am passionate about new technology, music, and art. I enjoy learning new things. I don't believe too much in technical jargonning, so I'll let my work speak for itself.


Academics

Bachelor of Computer Engineering with a minor in Music Technology

GPA: 3.38 (current)

Engineering (Pre-Engineering)

Cumulative GPA: 3.02 (2022 Summer)


Work History

Software Developer / ALAB Assistant (Paid-Internship)

[March 10, 2025 - August 23, 2025]

Software Developer / ALAB Assistant (Paid-Contributor)

[August 23, Present]

  • Collaborated with a team to develop RxnRover, an open-source lab automation software platform.
  • Updated the RxnRover website, including API documentation, tutorials, and a plugin catalog using Sphinx.
  • Developed RxnRover plugins and device drivers to control and communicate with lab equipment using LabVIEW.
  • Incorporated user feedback to enhance usability and implement new features.
  • Managed 45+ GitHub repositories as a member of the RxnRover organization.
  • Provided technical support to scientists in lab environments, resolving hardware and software issues.
  • Responded quickly and effectively to fix bugs and minimize lab downtime.
  • Contributed to multiple experiments in collaboration with Ames and Oak Ridge National Laboratories.

Projects

HTML5 logo representing this website

This Website

The resume and portfolio site you're looking at right now...

Details
Description
A responsive, installable personal resume and portfolio site built from scratch, including a tabbed project gallery, an accessible lightbox, a rotating featured-projects carousel, and a skill-tag system that jumps to the projects showcasing each skill.
Role
Sole developer - designed and built the entire site, layout, and interactive features from scratch.
Skills Gained
HTML, CSS, JavaScript, responsive design, Progressive Web Apps, DOM manipulation.
Resources Used
Vanilla JavaScript, Font Awesome, Service Worker API.

Fallout Terminal Emulator

A playable clone of Fallout's word-guessing hacking terminal, built from scratch in Python.

Details
Description
Recreates the terminal hacking minigame from the Fallout series, including the CRT scanline look, dud removal, and lockout mechanic.
Role
Sole developer - designed and implemented all aspects of the terminal emulator.
Skills Gained
Game development, Python, UI/UX design, terminal emulation.
Resources Used
PyGame.
Cat VS Dogs classifier output showing a cat and a dog correctly identified

Cat VS Dogs AI Classifier

A neural network that tells cats and dogs apart from a single photo.

Details
Description
Trains a convolutional neural network on labeled cat and dog images, then evaluates how accurately it classifies photos it has never seen.
Role
Sole developer - designed, trained, and evaluated the model.
Skills Gained
Python, machine learning, image classification, neural networks.
Resources Used
Python, TensorFlow.
You Can Run AR horror app screens

You Can Run - AR Horror App

An AR horror game where a 3D monster hunts you down using a real pursuit algorithm and your phone's own sensors.

Details
Description
An augmented-reality horror experience for Android featuring a 3D monster entity that uses a pursuit algorithm to chase the player. Accelerometer and other onboard sensors are fused to calculate the player's real-world position and track their movement in real time.
Role
Team member (3-person team) - contributed to AR tracking, sensor fusion for real-world positioning, and gameplay logic.
Skills Gained
Android development, augmented reality, sensor fusion, pursuit algorithms, real-time UI/UX design.
Resources Used
Android Studio, on-device AR and motion sensors (accelerometer, etc.).
Wackah Mole whack-a-mole game preview

Wackah Mole

A classic whack-a-mole game, but the mole's brain runs on reinforcement learning.

Details
Description
A whack-a-mole style Android game where the mole's behavior is driven by a reinforcement learning algorithm rather than scripted movement, with animated sprites, a game timer, and score tracking.
Role
Team member (3-person team) - designed the mole's reinforcement-learning "brain," created the game art, and implemented the gameplay logic.
Skills Gained
Reinforcement learning, Android development, game art and asset design, game loop design.
Resources Used
Android Studio, Gradle.

Blockchain Flight Insurance (Ethereum)

A smart contract that pays out flight-delay insurance automatically when bad weather hits.

Details
Description
A Solidity smart contract that sells parametric flight-delay/weather insurance policies and autonomously pays out indemnities using a live weather.gov oracle script.
Role
Sole developer - designed and implemented the smart contract, oracle verification scripts, and gas-cost analysis.
Skills Gained
Solidity, smart contract design, blockchain oracles, gas optimization.
Resources Used
Remix IDE, Ethereum (Solidity 0.8.x), weather.gov API.

Checkers-Playing AI

Alpha-beta search, Monte Carlo Tree Search, and a hybrid agent, all playing American Checkers.

Details
Description
Implemented three AI agents for American Checkers - alpha-beta minimax with a custom evaluation function, Monte Carlo Tree Search with UCB1 selection, and a hybrid agent that alternates between them - then compared their play style, search depth, and exploration parameters.
Role
Sole developer - implemented and analyzed all three agents.
Skills Gained
Adversarial search, alpha-beta pruning, Monte Carlo Tree Search, game AI, algorithm analysis.
Resources Used
Java.
Sample MNIST digits used to train and test the classifiers

MNIST Digit Classifier Progression

Baseline neural net and SVM, then a CNN, then a custom ResNet hitting 99.3% test accuracy.

Details
Description
Built and compared four MNIST digit classifiers, iterating from a baseline neural network and SVM (~94%) up through a CNN (98.95%) to a custom ResNet architecture reaching 99.31% test accuracy.
Role
Sole developer - built, trained, and evaluated all four models.
Skills Gained
Machine learning, convolutional neural networks, ResNet architectures, model evaluation.
Resources Used
Python, PyTorch, scikit-learn.
Ants reinforcement learning agent navigating a couch around a corner

RL: Training "Ants" to Move a Couch Around a Corner

Designed my own MDP environment and a Q-learning agent, then competed head-to-head against classmates' agents.

Details
Description
Designed a custom reinforcement learning environment - a team of "ants" navigating a corridor and turning a corner while carrying a couch - along with a tabular Q-learning agent to solve it, for a class-wide competition scoring agents against every other student's environment.
Role
Sole developer - designed both the environment and the agent.
Skills Gained
Reinforcement learning, Q-learning, MDP design, state discretization, epsilon-greedy exploration.
Resources Used
Python, NumPy.
In Progress
CYFLYBOT Logo

CYFLYBOT - Senior Design Project

A drone and a ground robot that coordinate with each other to run warehouse missions autonomously.

Details
Description
A coordinated aerial-ground autonomous robotic system designed for warehouse applications, developed as a research proof of concept for multi-agent autonomy.
Role
Team member - contributed to system design, architecture, and documentation.
Skills Gained
Autonomous systems, multi-agent coordination, robotics, systems design, technical documentation.
Resources Used
Iowa State University Senior Design Program (sddec26-11).
Sequencer Diagram

12 Step Digital Sequencer

A hardware step sequencer built entirely out of digital logic on an FPGA.

Details
Description
A 12-step digital sequencer implemented on an FPGA that generates a programmable sequence of output signals at a variable tempo.
Role
Sole developer - designed and implemented all digital logic, timing circuits, and user interface.
Skills Gained
VHDL, FPGA development, digital logic design, finite state machines, Quartus Prime.
Resources Used
Quartus Prime, DE10-Lite FPGA board, ModelSim.
Clean Up Robot

Clean Up Robot

An autonomous robot that scans a room, finds objects, and picks them up with a 3D-printed gripper arm.

Details
Description
An autonomous robot designed to detect and collect objects from a defined area using onboard sensors, motor control, and 3D printed gripper arm.
Role
Team member - contributed to embedded software, sensor integration, robotic arm, and overall system design.
Skills Gained
Embedded C, sensor integration, motor control, team collaboration, hardware debugging, robotics.
Resources Used
Microcontroller, GitHub, CyBot, Fusion360, BambuLab 3D printer.
MIPS Processor Schematic

MIPS CPUs

Custom MIPS processors, from a single-cycle design up to a full pipelined CPU.

Details
Description
Designed and implemented MIPS processor architectures including single-cycle and pipelined CPU designs with hazard detection.
Role
Designer - created schematics, RTL designs, and simulation testbenches.
Skills Gained
Computer architecture, VHDL, pipeline design, hazard detection and forwarding, simulation.
Resources Used
Quartus Prime, ModelSim, VHDL.
FPGA Audio Looping Station Loop Control block diagram

FPGA Audio Looping Station

A hardware 4-track looper pedal, run by an FPGA, that I designed, 3D-printed, and soldered myself.

Details
Description
A 4-channel audio looping station built on a Zynq 7000 FPGA, with a custom guitar pedal housing an ESP32-based footswitch controller for record/overdub/monitor control and synchronized or independent loop lengths per track.
Role
Team member (4-person team) - contributed to VHDL design of the audio signal path and loop control finite state machines and UART integration with the pedal board, and designed, 3D-printed, and soldered the physical guitar pedal enclosure and footswitch hardware.
Skills Gained
VHDL, FPGA development, digital audio signal processing, finite state machines, I2S/UART protocols, enclosure design and fabrication, soldering.
Resources Used
Xilinx Vivado, Zynq 7000 FPGA, ESP32, Pmod I2S2, 3D printer, soldering iron.

Audio experiments, sampled instruments, and short compositions made alongside my engineering work - some for classes, some just for fun.

Binary Bond

Sound Collage

Silly Funny Ringtone

Getting Wine Drunk at a Restaurant and Passing Out

Sea of Tranquility

Digital renders, illustrations, and 3D animation made alongside my engineering coursework.

PLANET - 3D Animation

Side Off Center
Venus-like render
Vertical Line Up
Golden Penguin
Abstract grey spheres on a sandy beach
Abstract alien landscape
Golden face
Two wine glasses on white background
Dark wine glass next to candle
Abstract surreal scene
Birds on power lines with CCTV cameras as heads
Still life rendering
Tornado ripping through countryside
Tornado close up
Close up tornado image
Looking up inside tornado

Modular Sequencer in MAX

A patch-based modular sequencer built from scratch in Max/MSP.

Details
Description
A modular audio sequencer built in Max/MSP featuring configurable signal routing, timing, and real-time control.
Role
Sole developer - designed all signal routing, timing logic, and UI patches from scratch.
Skills Gained
Max/MSP patching, digital audio signal processing, MIDI sequencing, real-time audio programming.
Resources Used
Cycling '74 Max/MSP.
In Progress

Multi-Effects Looper (JOHNTRONICS)

A from-scratch multi-effects looper pedal, designed enclosure and all, built around a custom PCB.

Details
Description
A personal multi-effects looper pedal built under my own "JOHNTRONICS" hobby electronics brand, combining a custom-designed enclosure with a custom PCB ("Loop Board Brains") that handles SD card storage, onboard power regulation, and multiple I/O connectors.
Role
Sole designer and builder - designed the enclosure in CAD and the PCB from scratch.
Skills Gained
PCB design, CAD/enclosure design, power electronics, embedded audio hardware, soldering.
Resources Used
Custom PCB, SD card storage, CAD modeling software.

Peavey Mantis Refinish

Stripped, re-stained, rewired, and rebuilt an '80s Peavey Mantis body down to a glossy black finish.

Details
Description
A full refinishing project on an '80s Peavey Mantis - sanding down the surface, staining the body, rewiring the electronics, and finishing with a glossy refinish.
Role
Sole builder - handled sanding, staining, wiring, and reassembly.
Skills Gained
Woodworking, wood finishing, soldering, instrument electronics and wiring.
Resources Used
Wood stain and finish, soldering iron, guitar hardware.

"Armonica" Inspired Sampled Instrument

A glass-harmonica-style instrument sampled from a single tuned wine glass.

Details
Description
Recreates the ethereal tone of Benjamin Franklin's glass armonica by sampling a tuned wine glass and mapping it into a playable instrument.
Role
Sole developer - designed and implemented all aspects of the sampled instrument.
Skills Gained
Audio programming, recording, digital signal processing, sampling techniques.
Resources Used
Decent Sampler, Wine Glass.
In Progress

DIY Motion Capture Platform

An early-stage build for a custom, budget motion-capture camera rig.

Details
Description
A from-scratch motion capture platform using multiple synchronized cameras to track movement - currently in the research and component-selection phase, evaluating MIPI camera modules for the rig.
Role
Sole developer - researching hardware and planning the build.
Skills Gained
Computer vision, camera systems, motion capture.
Resources Used
MIPI camera modules.

Reflections & Writings

Reflection on General Education at ISU

A written reflection on the value and experience of general education requirements at Iowa State University.

Read PDF ->

Cumulative Reflection from my Experience at Iowa State University

A personal narrative exploring cumulative academic and personal growth throughout the university experience.

Read PDF ->

The Ethics of AI: A Case Study

An examination of ethical considerations and real-world implications surrounding artificial intelligence.

Read PDF ->

Distributed Coordination and Security in Autonomous Drone Swarms

A literature survey examining distributed coordination protocols and security vulnerabilities in autonomous drone swarm systems.

Read PDF ->

Contact Me

Have a question or want to get in touch? Fill out the form below and it will open in your email client ready to send.