ArenaNet
I joined ArenaNet in 2007 to help build Guild Wars 2 and other projects. I worked as a programmer on both released and unreleased titles, focusing on core engine features and tools.
Arch Engine
As a Programmer at Large, I was responsible for building out various core engine systems. One of my main roles included retrofitting the existing codebase to support very large streaming worlds, a first for the studio. This effort involved:
- Open world streaming of game objects
- Scalable database for tracking millions of objects
- Tools for merging maps into a seamless world
- Versioned binary archive format
- Data visualization tools for debugging and optimization
Guild Wars 2
After shipping the final Guild Wars expansion, the team quickly pivoted to building a new game engine, content tools, and level editor. As one of my major tasks, I developed a viewport which allowed designers to place and manipulate objects in the game world. Over time, my work lead me to the engine team, where I focused on core systems like map loading and file streaming, while also supporting the art and content pipelines. My work involved:

- Map features such as decals, audio zones, and environment mapping
- Real-time content preview tools for designers
- Art and content pipeline automation tools
- Interactive in-game map system
- Asynchronous file I/O and patching solutions
- Integrated in-game web browser for auction house and shop
- Python-based asset inspection utilities
- Web-based build monitoring dashboard