Things I've built
Projects
Most of what I know on the infrastructure side, I learned by building it myself. Here's the homelab, the services I run on it, and a bit of academic work.
Homelab & infrastructure
Proxmox home server
Repurposed a Dell Alienware 17 R3 into a Proxmox VE virtualization host running an Ubuntu Server VM with a Dockerized service stack. It's my hands-on environment for everything below: spinning up VMs, managing containers, breaking things, and fixing them.
Network services on GL.iNet routers
Configured AdGuard Home for network-wide DNS filtering, Cloudflare Tunnel for secure remote access without opening ports, and Wake-on-LAN to bring machines up on demand.
Secure mesh networking
A Tailscale (WireGuard) mesh VPN ties my devices together with secure remote access from anywhere, layered with Cloudflare tunnels for public-facing services.
Self-hosted services
Jellyfin
A self-hosted media streaming server: my own private, ad-free alternative to commercial streaming, served across the home network.
Immich
A self-hosted photo and video library with automatic backup from my devices, a privately owned replacement for cloud photo services.
Ollama
Runs large language models locally on my own hardware: private, offline AI with no data leaving the network.
SearXNG
A self-hosted, privacy-respecting metasearch engine that aggregates results without tracking.
This website
The site you're reading right now
This portfolio runs on my GL.iNet Flint 3 router (OpenWrt). A lightweight lighttpd web server serves the files straight off a USB drive, and the site reaches the internet through the same Cloudflare Tunnel that fronts my other self-hosted services. No open ports, no home IP exposed, automatic HTTPS. If you can read this, the stack is working.
Human-Computer Interaction
A graduate certificate from IU's Luddy School. This work spans product design, interaction design, data visualization, and formal usability research, and it shapes how I think about the people on the other end of a system.
PaceView AR Sunglasses
An end-to-end product design for AR running glasses that project pace, heart rate, and distance into a runner's sightline, so athletes never have to glance down at a watch mid-stride. I ran the full process: divergent ideation, user testing with collegiate runners, and three prototypes (a lo-fi cardboard model, an interactive Figma companion app, and an AI-assisted concept video), reworking the heads-up layout based on what the testing surfaced.
Tutortrack: a language tutoring app
A user-centered design for a language-tutoring app built to keep learners motivated. I worked the full interaction-design process, from problem definition and ideation to interactive prototyping and usability testing, refining flows around progress tracking, tutor feedback, and guided reflection.
View the prototype → · Watch the demo → · Read the case study →
Top 500 Games: an interactive dashboard
A multi-view data-visualization app built in Python with Plotly Dash, analyzing a "Top 500 Games of All Time" dataset. Interactive tabs break down distribution by genre and platform and the relationship between ratings and playtime, with hover detail and an accessibility-minded color palette.
Usability study: Indiana Disability Resource Finder
A formal usability evaluation of a live state resource directory. I designed five task-based scenarios, tested four participants, and scored every issue on structured difficulty and severity scales, then wrote a prioritized findings report covering navigation, search behavior, button visibility, and mobile gaps, with a concrete recommendation for each.
Game design & development
A minor from the Luddy School: hands-on work across the full toolchain, from engines and 3D to a database-backed web app.
Wildfire Rescue
A low-poly Unity game where you pilot a helicopter and drop a rope to rescue animals from a spreading wildfire, racing a timer to carry them (up to four at a time) to a safety point across two levels. Built from scratch by a four-person team coordinating through GitHub, Trello, and Discord; I owned UI, sound effects, and level design. Its signature twist: the original build ran on a custom alternate controller, a record mounted under the mouse, so physically spinning the record raised and lowered the rescue rope.
Environment fly-through
A designed 3D environment in Unreal Engine, presented as a cinematic camera fly-through.
PHP Online Phonestore
A database-driven storefront for browsing smartphones, built on PHP and MySQL: a catalog of devices with manufacturer, pricing, and specs served from a relational database.
3D modeling & animation
A sequence of modeling and animation projects in Autodesk Maya, working from primitive modeling up through textured, animated scenes.