Sean Salvador

Software Engineer

I build backend systems, web apps, and gameplay systems in Roblox. My work spans traditional computer science projects and game experiences that real players interact with.

About

I’m a software engineer with experience in web development, backend systems, and Roblox gameplay scripting. I like building practical tools, scalable services, and game mechanics that feel smooth and responsive. My background combines computer science fundamentals with day-to-day development experience.

Projects

Explore my traditional software engineering work or my Roblox projects using the tabs below.

Temporal Reasoning

CS 561 Viterbi Temporal Solver

Production-ready Python package (temporal_reasoner) that ships a typed POMDP/Viterbi solver, parser, and CLI for Little Prince and Speech datasets. Includes debug summaries, null-action inference toggles, and a compatibility shim for the original HW3 entry point.

Tooling bundle adds a synthetic speech generator plus pytest coverage for reference samples and stress datasets, ensuring the solver scales while staying correct.

Tech: Python, Typer CLI, NumPy, Pytest, Ruff

Game AI

5x5 Go Alpha-Beta Engine

A 5×5 Go agent built with alpha-beta search, transposition tables, killer & history heuristics, aspiration windows, and quiescence search over captures and atari. Exposes a simple API so you can play against it in the browser.

Tech: Python, Alpha-Beta, FastAPI, JavaScript

Software / Mobile

Level-Up IRL

Anime-inspired fitness app that turns real workouts into RPG quests. Users pick a hunter handle, start at E-rank, and earn XP, ranks, and streaks by logging “quests.” Built a Solo Leveling-style HUD, quest modal with deterministic XP math, status screen with a 7-day activity strip, and local reminder toggle—all backed by Supabase auth/data.

Tech: React Native (Expo Router), TypeScript, Supabase (Auth + Postgres), React Query, Expo Notifications, Day.js

Software / CS

Shift Auto-Scheduler

An async Python bot that logs into the Celayix web portal, searches for self-schedulable shifts, and automatically selects matches based on custom rules. Uses Playwright to control a real browser, parses checkbox-based shift entries, respects minimum search intervals, and supports a dry-run mode for safe testing.

Tech: Python, Playwright (async), asyncio, .env, Web Automation

Algorithms / Python

3D Traveling Salesman – Genetic Algorithm

A Python genetic algorithm for a 3D Traveling Salesman Problem. It parses city coordinates, builds a distance matrix, and evolves a population of tours using tournament selection, single-point crossover, swap mutation, and a repair step to keep permutations valid. After several generations, it canonicalizes the best tour, computes its path length, and writes the final route and cost to an output file.

Tech: Python, NumPy

Roblox

Ledge Vaulting & Wall-Run System

A custom movement system built in Roblox using Lua that combines ledge grabbing, vaulting, and wall-running with a decay mechanic. It handles ledge detection, state transitions, animation hooks, and edge cases like windows and blockers to keep movement fluid and responsive.

Tech: Roblox Lua, Raycasting, State Machines, Character Movement, Timers

Contact

If you wanna talk projects, collabs, or opportunities, you can reach me by email or connect with me on linkedin.