Portfolio
Kiln Link to heading
Building the multiplayer foundation of Double Fine’s pottery-party brawler Link to heading
As Senior Multiplayer Engineer, I designed and implemented major parts of the networking and online foundation for Kiln. My work covered custom Unreal Iris replication, gameplay synchronization, parties, matchmaking, social lobbies, dedicated servers, PlayFab integration, cross-platform services, telemetry, and failure recovery.
Project details Link to heading
Role: Senior Multiplayer Engineer
Studio: Double Fine Productions / Xbox Game Studios
Platforms: Xbox Series X|S, PlayStation 5, Xbox PC, and Steam
Technology: Unreal Engine, C++, Iris, PlayFab
Release date: April 23, 2026
Watch the official trailer on YouTube
The multiplayer challenge Link to heading
Kiln is an online game built around characters sculpted directly from clay. Their bodies can take dramatically different shapes, change during play, and directly influence movement and combat.
That made the multiplayer problem unusual. The game needed to synchronize highly dynamic player-created characters while preserving responsiveness, gameplay consistency, and reasonable network bandwidth across PC and consoles.
My responsibility was not limited to an isolated feature. I worked across the complete online journey, from authentication and forming a party to entering a lobby, finding a match, allocating a server, travelling into gameplay, and recovering when any part of that process failed.
Custom Iris replication for deformable clay Link to heading
Traditional replicated character state was not enough for bodies that players could sculpt into continuously changing forms. I developed a custom replication solution using Unreal Engine’s Iris framework to synchronize the gameplay-relevant state of these deformable clay characters.
The system had to represent complex changes efficiently, determine what needed to be sent, and reconstruct remote characters consistently without treating every piece of clay as ordinary replicated actor state.
My contribution
- Designed and implemented the custom Iris-based replication approach.
- Built serialization and synchronization paths for changing clay state.
- Reduced unnecessary network traffic while preserving the details required by gameplay.
- Diagnosed desynchronization, ordering, and lifecycle issues across clients and servers.
- Created debugging support to inspect replicated state during development.
Player impact: Every participant sees the same player-created character while the game remains responsive and bandwidth-conscious.
---Responsive networked gameplay Link to heading
The shape of a character affects how it moves and behaves, so clay replication and gameplay replication could not be treated as unrelated systems. I worked on synchronizing movement, interactions, combat state, and match-critical gameplay while accounting for latency, packet loss, and changing character geometry.
My contribution
- Implemented and debugged replicated gameplay systems in C++.
- Improved movement and state synchronization between players.
- Investigated timing and authority issues across clients, listen servers, and dedicated servers.
- Added recovery paths for interrupted travel and incomplete session state.
- Profiled network behaviour and eliminated avoidable bandwidth usage.
Player impact: Matches remain readable and responsive even when players have different network conditions.
---Parties and invitations Link to heading
I built and maintained the systems that allow players to form a party, invite friends, join one another, remain grouped through online flows, and recover from platform or service interruptions.
This required coordinating Unreal sessions, PlayFab Party, platform identities, permissions, invitations, and asynchronous callbacks that could arrive in unexpected orders.
My contribution
- Implemented party creation, joining, leaving, invitations, and lifecycle management.
- Coordinated party membership with lobby and matchmaking state.
- Handled platform privilege checks and cross-platform identity flows.
- Added watchdogs and recovery logic for stalled or partially completed operations.
- Diagnosed platform-specific failures across development and console environments.
Player impact: Friends can reliably group together and stay together from the front end into gameplay.
Matchmaking and dedicated servers Link to heading
I implemented PlayFab matchmaking flows that turn a group of players into a running match. This included queue tickets, player and party attributes, regional latency data, match results, server allocation, authentication, and travel into the allocated game server.
My contribution
- Developed matchmaking for individual players and complete parties.
- Integrated queue rules, player attributes, region selection, and quality-of-service data.
- Connected successful matches to PlayFab Multiplayer Servers.
- Implemented server startup, authentication, session creation, and player travel.
- Added fallback and recovery behaviour for allocation or connection failures.
- Improved logging and telemetry around the complete matchmaking lifecycle.
Player impact: Players can move from a party into an appropriately located multiplayer server through one coherent flow.
---Social lobbies and session architecture Link to heading
Kiln can have multiple online concepts active at the same time: a persistent party, a social lobby, and a gameplay match. I helped design the session architecture that keeps these systems separate while allowing them to cooperate.
The work included lobby discovery, capacity and version filtering, region selection, membership updates, host and server transitions, and travel between different online contexts.
My contribution
- Implemented searchable multiplayer lobbies using Unreal and PlayFab session data.
- Built filtering and selection rules for region, version, capacity, and session identity.
- Coordinated party, lobby, and match state without collapsing them into one session.
- Implemented travel between social spaces and gameplay servers.
- Added development flows for testing dedicated and player-hosted configurations.
Player impact: Players can meet, group, move between experiences, and enter matches without losing the social context around them.
---Working across the project Link to heading
Multiplayer touches almost every discipline. I collaborated with gameplay engineers, designers, UI developers, production, QA, backend teams, and platform specialists to turn online requirements into systems that could be tested and shipped.
My work combined hands-on C++ development with architecture, debugging, technical planning, code review, documentation, and support for other developers integrating with the multiplayer stack.
Kiln represents the kind of work I enjoy most: solving difficult technical problems that directly enable a distinctive player experience.
Gridiron Link to heading
Competitive multiplayer football Link to heading
I worked on earlier versions of Gridiron, helping transition the project to Unreal Engine and establish its multiplayer foundation. My contributions included gameplay features, networked systems, matchmaking, and integration with AWS-backed online services.
Project details Link to heading
Role: Unreal Engine Developer
Studio: 1336 Studios
Platform: Steam
Technology: Unreal Engine, C++, AWS
My contributions Link to heading
- Helped transition the existing project to Unreal Engine.
- Developed multiplayer gameplay systems and networked features.
- Worked on matchmaking and AWS-backed online services.
- Implemented and iterated on player-facing gameplay features.
Rift of Raigard Link to heading
Mobile base-building strategy game Link to heading
Rift of Raigard was an original mobile strategy game in development for Android and iOS. Players would build and develop their territory, manage progression, and engage with interconnected gameplay systems in a persistent mobile experience.
I served as Technical Director, leading the project’s technical direction and helping turn its design goals into scalable gameplay architecture. The project was ultimately cancelled before release.

Project details Link to heading
Role: Technical Director
Studio: Dun Rite Games
Platforms: Android and iOS
Technology: Unity, C#
Status: Cancelled during development
Genre: Mobile base-building strategy

My contributions Link to heading
- Defined the project’s technical architecture and development direction.
- Developed and supervised core gameplay systems.
- Worked on AI, progression, and backend integrations.
- Built technical prototypes to validate design and production decisions.
- Supported and mentored the engineering team as the project grew.
- Collaborated with design and production to scope features and manage technical risk.