Computer Science Graduate Student · UCF

Jacob Roberts

I build things close to the metal and all the way up the stack: a Raft key-value store in Rust, a Bluetooth-mesh sensor network on Silicon Labs hardware, a Unix shell and a compiler in C, and web and iOS apps.

B.S. in Computer Science (2026), M.S. in Computer Science expected December 2027. Vice President of CHIDA@UCF, where I help run hands-on workshops on digital logic, embedded systems, and FPGAs.

Projects

Source codeIn progress

Molecule Ray Tracer

GPU ray tracing for molecular structures

An OpenGL 4.6 renderer that parses PDB protein/DNA files into atoms, computes a bounding volume, and uploads them to the GPU as a shader storage buffer. A GLSL compute shader casts a ray per pixel, intersects each atom as a sphere, and writes the image to a texture drawn on a full-screen quad.

  • C++
  • OpenGL
  • GLSL
  • Compute Shaders
Source code

HealthDB

Distributed key-value store

A distributed key-value store in Rust built on the Raft consensus protocol, implemented from the paper: leader election, log replication, and heartbeats. Writes go through a write-ahead log with CRC32 integrity checks for crash-safe recovery, and nodes exchange AppendEntries/RequestVote RPCs over an async Tokio TCP layer with timeouts and retries.

  • Rust
  • Tokio
  • Raft
  • Distributed Systems
Source code

What 2 Watch

Semantic movie & TV recommender

A "vibe-first" recommender that matches films, series, and anime by mood and tone using OpenAI embeddings and vector similarity instead of keyword overlap. A TMDB ingestion tool and Reddit scraper grow the SQLite catalog, and the Go/Gin + React app runs in Docker Compose behind Caddy with Cloudflare in front.

  • Go
  • Gin
  • React
  • SQLite
  • OpenAI
  • Docker
Source code

BLE Mesh Sensor Network

Senior design: silicon to phone · Senior design · solo

A Bluetooth Mesh network of EFR32MG24 sensor nodes using a custom vendor model and opcodes for telemetry. A SiW917 gateway bridges the mesh to MQTT and Firebase Realtime Database with per-node state tracking, and a bidirectional command path lets a React Native app toggle LEDs and change sensor intervals remotely.

  • C
  • FreeRTOS
  • Bluetooth Mesh
  • Silicon Labs
  • MQTT
  • Firebase
Source code

Sealbound

2D narrative RPG · Contributor · team project

A 2D narrative RPG in Godot where you restore the world through connection, not sacrifice, built with a small team. My contributions include collisions and Y-sorting, the save/load system, time-of-day lighting, bridges and teleports, and the dungeon reward screen. I also built the game's official landing page.

  • Godot
  • GDScript
  • HTML/CSS
  • JavaScript
Source code

LockIN

Study-to-unlock iOS app

A native iOS app that shields distracting apps behind Screen Time; you earn unlock minutes by answering standardized-test questions and spend them on per-app usage time. The core is a framework-free Swift package (append-only ledger, difficulty-scaled earn engine, unlock controller) covered by 30 XCTest cases, wired to a Device Activity Monitor extension that auto-relocks and refunds on OS failure.

  • Swift
  • SwiftUI
  • SwiftData
  • FamilyControls
  • XCTest
Source code

PL/0 Compiler

Compiler + virtual machine

A complete compiler for the PL/0 language written in C, with a lexical analyzer, parser, and code generator that emits code for the PM/0 stack machine. It handles procedures, recursion, control structures, and nested scoping, and ships with a PM/0 virtual machine to run the output.

  • C
  • Compilers
  • Make
Source code

Solaris Shell

Unix shell in C

A Fallout-themed Unix shell written in C directly on POSIX process APIs. It tokenizes quoted arguments, runs programs with fork/execvp, and supports pipes, I/O redirection (>, >>, <), and built-ins dispatched through a function-pointer table.

  • C
  • POSIX
  • Unix
  • Systems Programming

Contact

Open to internships and full-time roles in systems, embedded, and full-stack engineering.