Work

Recent projects, in some detail.

Client work, studio work, and shipped games. Where something is under NDA or access-controlled, I describe the shape of the work rather than the specifics.

AddressHate

Contract software engineer · June 2026 – present

AddressHate is a research organization studying antisemitism and online hate, with an annotation team that classifies content against a published taxonomy. My engagement covers most of the software the research runs on: I'm the engineer on the analyst dashboard, the browser extension, and the pipeline tooling, working alongside an ML engineer who owns the models.

Analyst dashboard

A Next.js and React application over PostgreSQL that turns the annotation pipeline's output into something analysts and partners can use: model performance, platform and AI-safety scorecards, narrative tracking, geographic distribution, and a team section. Google sign-in through NextAuth with per-section access control and tenant scoping, charts with Recharts, and a live-data development mode that proxies both Cloud SQL data planes so local work runs against real data safely.

Browser extension

A Chrome extension that lets the annotation team classify posts in place on 16 platforms: X, YouTube, Rumble, TikTok, Reddit, Instagram, Facebook, LinkedIn, Bluesky, 4chan, and the ChatGPT, Claude, Grok, Gemini, DeepSeek, and Qwen chat interfaces. Each platform has its own adapter; the annotation panel is a Shadow-DOM drawer so it survives whatever the host page's styles do. Submissions queue locally with an undo window and retries, then sync to an ingest service that archives every envelope and only projects to the database after a lead approves. I took it from version 0.2 through 0.5: new platforms, quotas, tenant routing, a review tier, security fixes, Playwright end-to-end tests, and packaging for the Chrome Web Store.

Pipeline control panel

A FastAPI and Next.js control panel for the annotation platform: what the extension has captured, who is annotating it, and the Brandwatch feed the work comes from. Query-to-batch-to-import workbench, a Brandwatch query language for archive searches, labels and archive surfaces, and production monitoring for the website and the extension service.

Infrastructure and the rest

  • Label Studio on Google Cloud Run with Cloud SQL and Cloud Storage behind it, plus the deploy scripts and sandbox checks around it
  • Security review and hardening across the apps, including access-control rework and a documented audit trail
  • Contributions to the organization's classification API and a narrative-intelligence service
  • Internal developer tooling: a task dashboard and CLI, a Markdown viewer, and a launcher panel the team uses across projects

2K Games

Engineering Program · Novato, California · October 2024 – March 2026

A rotational engineering program across three 2K studios, each rotation a different kind of engineering. Details are limited by NDA; the summary below matches what I'm able to share publicly.

Shared Development Services · Tools Engineer · Oct 2025 – Mar 2026

  • Developed the Daily Status Report system that sends producers a daily report of work completed across projects
  • Built an Atlassian plugin on Forge and Azure that automates Confluence and Jira tasks for producers

Gearbox Software · Gameplay and Tools Engineer · Apr 2025 – Oct 2025

  • One of two tools engineers building the foundational tools and systems for an unannounced project
  • Designed an Actor Wizard that streamlines actor creation for designers and artists
  • Created an Item Display Wizard that specifies how item pickups are equipped on characters in real time
  • Developed a custom component that displays a character's items using async loading and a fast array serializer

Visual Concepts · Backend and Business Logic, MyCareer · Oct 2024 – Mar 2025

  • Worked directly with designers to develop the new MyCareer GOAT Skill features for NBA 2K26
  • Added default skills based on character attributes and more detailed in-game skill stat collection
  • Helped lead engineers resolve a major exploit in the cross-save progression system
  • Implemented game-duration and skill-progression debug features for simpler testing

Egregore

USC Games · Unreal Engine 5 · Team of 30 · Released June 2024

Egregore key art: the game's title in glowing magenta letters over a dark scene.
Egregore, published by USC Games. Free on Steam and the Epic Games Store.

A first-person point-and-click puzzle adventure set in modern Cairo, built by a 30-person student team and published by USC Games. Released free on Steam and the Epic Games Store in June 2024, with more than 83,000 downloads.

  • Developed the dynamic, non-linear camera movement system using Unreal Sequencer and spline-based traversal
  • Built custom editor tools that let designers iterate on in-game camera frames and transitions without engineering help

Pixel Palette

Unity · Team of 5

A cozy puzzle game where players collect and mix colors across a pixelated landscape to complete paintings. I owned the systems side of a five-person team.

  • Built a procedural generation algorithm that object-pools terrain to keep performance steady during map traversal
  • Implemented crafting, inventory, narrative, and audio systems

Couch Wizards

Unreal Engine 5 · Solo project

A couch co-op game where players fight together as wizards, each with a distinct spell set and combat style. A solo project I used to go deep on Unreal's gameplay framework.

  • Built the combat and movement systems on the Gameplay Ability System with the Lyra framework
  • Wrote a custom shader that blends a pixel shader with a toon shader for a retro look

Teaching and other projects

USC, an iOS app, and the tools I build for myself

  • USC Viterbi, ITP 380 Video Game Programming. Undergraduate teaching assistant, August 2023 – May 2024. Helped more than 100 students through C++ game programming fundamentals and gave detailed code reviews on their work.
  • Grouplan. An iOS app for planning detailed events together from different devices. Swift. Source on GitHub.
  • Personal tools. Between client projects I build small things for myself: browser-based game prototypes, desktop utilities, and the invoicing and tracking tools I run my own business with.

Want something like this built?

Tell me what you're working on and I'll tell you how I'd approach it.

kylersaiki@gmail.com