Hi, I'm Rohan.
I work on frontend architecture, performance, and applied LLM systems, most recently splitting a monolithic app into independent, faster-loading pieces and building agentic pipelines that turn prompts into production-ready games.
Where I've worked
Two years at Wayground, spanning frontend architecture, AI infrastructure, and platform work.
Featured projects
A closer look at a few things from the timeline above.
Monolith → Independent MPAs
The old SPA loaded every route's code up front, so even a simple page paid for the whole app. I split it along team and traffic boundaries into separately deployable MPAs, pulled shared auth/state/design-system code into common packages, and moved route-level code out of the main bundle so each app only ships what it needs. Deploys also decoupled: one team shipping no longer waits on another's release train.
Agentic Game Dev Pipeline
Turning a prompt into a playable game normally means a designer, an artist, and an engineer taking turns. I broke that into stages an agent could run end-to-end: interpreting the brief, simulating gameplay logic, generating the actual game code, then validating it against Wayground's platform requirements before handoff. What used to take a prototyping cycle now runs in one pass.
Secrets Manager Migration
AWS Parameter Store was rate-limiting under our deploy volume, and a failed read meant a failed deploy, about 15% of them. I moved secret storage to Secrets Manager, but rather than a hard cutover I built a dual-write layer so both stores stayed in sync during migration, letting services flip over one at a time with a fallback if anything looked wrong. Failures went to zero with no deploy freeze needed.
Real-time Explanation Pipeline
For "Answer Explanation" and "Image Description," latency and accuracy both mattered: a slow or wrong explanation mid-quiz is worse than none. I benchmarked GPT, Claude Sonnet, and Gemini through AWS Bedrock and LangChain on quality and speed, iterated on prompts using teacher/student feedback signals, then streamed the winning model's output token-by-token over WebSocket so explanations appear live instead of after a loading spinner.
Qbit Avatar & Economy
Qbit gives students an avatar and an in-game currency they earn by playing, simple in concept, but the APIs behind it (MongoDB-backed) handle millions of requests a day across ownership, transactions, and cosmetics, so consistency under load was the real problem. I owned the frontend end-to-end and led 3 engineers on the systems underneath, keeping the economy fair and fast at that scale.
Holiday Theming Platform
Every seasonal re-theme used to mean filing tickets and waiting on engineering time. I built a config-driven platform where Product and Design upload assets and set rules themselves, and the app picks up the active theme at runtime, no redeploy per holiday. It quietly removed a recurring engineering task and let non-engineers ship visual refreshes on their own schedule.
Accommodations
As primary developer, I built the delivery layer for 25+ accommodations: text-to-speech, translation, extended time, simplified language, visual supports, applied per-student on top of a single shared activity, so nothing looks different to classmates and no separate link or login is needed. It also syncs with Clever/Classlink to pull in IEP, 504, and ML designations automatically, and feeds compliance reporting for admins. Weekly usage among teachers grew from 26% to 50%.
Differentiated Versions
One class, wildly different reading levels: this lets a teacher AI-generate up to 5 versions of the same math, science, or ELA quiz or passage, shifted up to 4 levels down or 2 up in difficulty, review or hand-edit the generated questions, then assign a specific version to each student under one join code. Everyone plays the same activity; nobody has to know who got which version.
Shoe Forge
A Qbit customization feature aimed at lifting student engagement: students enter from the avatar shop's footwear tab, pick a base style: Boots, Mids, High Collar, Mid Collar, or Sandals, and describe their shoe in a text box. Confirming the Coin spend triggers a 10-second cinematic before the one-of-a-kind design is revealed, and custom shoes get a special shop tag so they stand out. Every prompt is profanity-filtered before generation, students see a clear disclaimer that prompts are logged and visible to teachers, and Coins are only deducted on a successful generation, refunded automatically if it fails.
Test Mode
The old test-taking experience carried over gamified elements: leaderboards, sound effects, celebratory animations, that made sense for practice quizzes but actively distracted during real assessments. I stripped all of that out for a genuinely focused Test Mode: no chrome, no noise, just the questions and a clean progress indicator. Usage climbed 10% once it actually felt like a test.