Hometopia
Joined as the UI developer. Stayed through a team collapse, became lead programmer, rebuilt multiplayer from scratch and turned a rough Early Access launch into a stable game.

Situation
Hometopia is a multiplayer home-building sandbox. When I joined as the UI/UX developer it had been in development for four years and was one year away from Early Access. Many programmers had come and gone. The codebase carried years of tech debt: performance problems, lighting and post-processing issues, and bugs nobody owned.
My UI work went well. The game’s foundations did not. The Early Access launch was overly ambitious and went badly: bad reviews, players hitting problems, a team under pressure.
Then tech leadership left and most of the team was let go. The studio went from 15 people to 5.
What I did
I stayed. The five of us decided the game was worth keeping alive, and I became the de facto lead programmer.
Stabilise first. Performance and crashes before anything else. Object pooling, LOD streaming, texture atlasing and material consolidation brought memory under control. Lighting and post-processing were fixed. Content the team could no longer maintain was cut rather than left half-broken.
Rebuild the multiplayer. The person hired for multiplayer had reported progress that did not exist. Once that came out, I built the system from scratch in under a month on Netcode for GameObjects with Steamworks, with colleagues testing every build. The game has a large number of placeable objects, so state synchronisation had to be compact and reliable.
Fix the systems underneath. I rewrote the save system with compact, network-safe serialization that was Steam Workshop-ready. I implemented Undo/Redo on a deterministic command framework. I migrated input to Unity’s Input System. I built custom editor tools so designers and artists could set up items without a programmer.
Make releases boring. Plastic SCM branching, Unity Cloud Build automation and a thumbnail pipeline on Addressables. A standard update cadence: one major update every one to two months, smaller patches in between.
Keep the team working. I mentored the junior engineers through the recovery, and we kept going through a publisher relationship that repeatedly added people to the team and pulled them off again.
Result
- Memory-related crashes eliminated and memory brought under control.
- Multiplayer shipped, built in under a month.
- A predictable update rhythm that players could rely on: one major update every one to two months, patches in between.
- A small team that kept a failing project alive and improving until funding was pulled and development stopped. The game remains in Early Access.
This was not a greenfield architecture job. It was a rescue: inherit a troubled codebase, survive a collapse, and make things better while shipping to players every few weeks.
Stack
Unity, C#, Netcode for GameObjects, Steamworks, Addressables, Plastic SCM, Unity Cloud Build.