The Last of Us Part II Remastered

My third triple-A title credit at Naughty Dog. I worked on tools that helped build, test, and report on player telemetry post-launch.

C++GamePHPFull StackVueMySQLNode

Like my other Naughty Dog credits, my role on The Last of Us Part II Remastered was to build and maintain some of the systems used to build, test, and analyze the game's performance. During the course of this game's development, I worked on a completely new, modernized, and higher-performing front-end for our internal video capture and playback software. The front-end was written in Angular 1 and was beginning to show its age in the form of technical debt. I worked alongside one other programmer to re-write it in Vue. The result was a more performant, easier to maintain, and more aesthetically pleasing front-end for a system used internally by hundreds of people every day.

Another system that was updated, and included in the shipping game, was an improved analytics system for post-launch event capture and analysis. This system sends optional game telemetry--depending on player privacy settings--to Sony's game analytics platform. Our previous games did so in an un-batched, un-compressed manner which worked well for single player games, but began to struggle to keep up in larger, multiplayer scenarios. While TLOU2 Remastered is not a multiplayer game, it did get the benefit of the analytics re-write I did for our unannounced and eventually canceled multiplayer project when that code was ported over. The result is a batched and compressed outgoing payload that has very little impact on game performance. It can handle thousands of outgoing events every second, even if TLOU2 Remastered doesn't actually push it that hard. The previous implementation would have dropped outgoing messages when it gets overloaded.