Technical Focus

Languages & Engines

  • C++
  • C#
  • Scripting Languages
  • Unity
  • Custom C++ Engine
  • Graphics & 3D Frameworks
  • Git

Core Strengths

  • Gameplay Programming
  • 2D & 3D Game Programming
  • Systems & Feature Development
  • Object-Oriented Software Design
  • Tools & Pipeline Development
  • UI & Interaction Systems
  • Cross-disciplinary Collaboration
  • Project Planning & Scoping
  • Debugging & Problem Solving

Technical Areas

  • Behavior Trees & GOAP
  • Steering Behaviors
  • Data Structures & Algorithms
  • Linear Algebra & Game Physics
  • Networking (UDP, replication basics)
  • Rendering & Shaders
  • Profiling & Optimization
  • Software Development Processes
  • Data-Driven Systems
Tools & Workflow
Perforce Bitbucket TeamCity AWS HackNPlan (Agile) TestFlight (iOS) Android ADB

Professional Experience

Filimundus — Programming Internship (Sep 2025 – Present)

Working as a gameplay programmer at Filimundus, contributing to shipped titles and building gameplay features in a production environment using Unity.

BRIO World – Railway

Released Title

Contributed to gameplay systems in a shipped commercial title.

Minigames

Released

Minigames

Developed two released minigames from scratch in a production environment. Ported a legacy minigame into a new system.

Drawing Game

Unity — In Development

Drawing Game

Built a file system for persistent user data, implemented responsive drawing UX flows, enhanced an existing drawing system, and created a custom glitter shader.

About Me

I'm a game programmer in the final stretch of my education at The Game Assembly, currently doing my internship at Filimundus. Most of my education has been spent building games from scratch in a custom C++ engine, working in cross-disciplinary teams alongside artists, designers, and animators. Each project pushed a different part of the craft, and gameplay and AI is where I kept gravitating back.

I work in both C++ and Unity (C#). At The Game Assembly I shipped eight team projects across 2D and 3D, and at Filimundus I've contributed to released titles on iOS and Android, including BRIO World – Railway. I like the part of the job where a system finally clicks into place — when an enemy starts behaving like it should, or a tool saves a designer half an afternoon.

Selected Technical Work

From my time at The Game Assembly — built in a custom C++ engine

Rope/Chain Physics

Verlet Integration · Jakobsen Constraint Relaxation

Built a rope/chain physics system using Verlet integration for position-based dynamics. Each segment's new position is computed from its current and previous positions plus acceleration, removing the need to track velocities explicitly and producing naturally smooth, stable motion.

Constraints between segments are enforced using the Jakobsen method, which iteratively relaxes distance constraints over multiple passes. This keeps segments at a fixed length from each other, preventing stretching while allowing the rope to drape and swing realistically.

The combination of Verlet integration and iterative constraint solving creates a lightweight, physically plausible rope simulation suitable for real-time use — ideal for grappling hooks, chains, hanging cables, or any flexible linkage in gameplay.

Read More

RTS-style AI

Goal-Oriented Action Planning · 8-Week Solo Project

Built an RTS-style AI system inspired by Age of Empires. The AI is driven by a GOAP system and a custom planner that picks the most effective actions based on the current world state.

Farmers follow plans using A*-influenced movement, avoiding enemies while gathering resources. Soldiers respond to enemy presence or patrol low-defense areas. Goblins wander randomly, targeting vulnerable spots.

The world is grid-based with procedurally placed resources. All units share an entity system, with sprite batching handling visuals.

Read More

Enemy AI & Steering

Steering Behaviors · Behavior Trees · Object Pooling

Implemented enemy AI using steering behaviors and a shared blackboard system. Each enemy type responds to its surroundings through Seek, Arrival, Separation, Spread and Object Avoidance.

Movement and behavior are reactive and data-driven. Enemies stay in formation, avoid obstacles, and use behavior trees for decision-making.

The system is fully tweakable via ImGui controls, allowing live adjustment of speed, mass, and force, plus preset ray layouts for precise steering response.

Read More

Navmesh Creation

Recast Integration · Grid Mapping · Debug Rendering

Uses Recast Navigation to automatically generate walkable areas from level geometry, producing both a Detailed and a simplified Polymesh navmesh. The result is a clean, optimized polygon mesh for real-time pathfinding.

Converts Recast data into a custom grid format for fast lookup of node centers and connections. This grid is also used by AI behaviors like edge steering to keep enemies on-path.

The navmesh is rendered visually for debugging, showing geometry and node relationships. Fully customizable to fit different AI use cases and map layouts.

Read More