NetherRealm Studios, Injustice 2


I am currently working on engine-related systems, features, and bug fixes at NetherRealm Studios as an Associate Software Engineer. The position is equivalent to an internship.

Role (team of 30): Associate Software Engineer

Period: June 2016 – March 2017

Software: Unreal Engine 3, C++, C#, HTML, CSS, Java, Perforce

Responsibilities:

» Completed engine-related feature requests and bug fixes in collaboration with principal, lead, and other engineers
» Implemented and maintained systems and tools in a variety of programming languages to improve team productivity and to meet technical specifications
» Authored and contributed to technical and end-user documentation of new tools and features

Ubisoft Singapore, Unannounced Title


I worked on the gameplay systems of an unannounced AAA title at Ubisoft Singapore as a Gameplay Programming Assistant. The position was roughly equivalent to an internship. As I had to return to Chicago to finish my bachelor’s degree, I was only able to work there till the end of my summer break.

Role (team of 30): Gameplay Programming Assistant

Period: May 2015 – September 2015

Software: In-House Level Editor and Language, Perforce

Responsibilities:

» Added new gameplay features, content, and technical and end-user documentation
» Maintained and refactored code, which included the removal of over 500 files from a large legacy codebase
» Collaborated with junior and senior programmers, designers, artists, project managers, and a QA tester, in a team of nine different nationalities, to meet the goals of a major milestone

Class Project, Kissy Ghost


Kissy Ghost is a quirky 2 to 4 player local co-op 2D game. One player is randomly selected as a ghost who interacts with the physical realm by kissing furniture to life. The other player(s) are corporeal beings trying to exorcise the ghost with cats and romance, while overcoming various obstacles and challenges set by the ghost.

View: Demo video

Roles (team of 16): Programming, Design

Period: January 2016 – May 2016

Software: Unity, C#, Photoshop, Trello, TortoiseSVN

Responsibilities:

» Collaborated with two programmers in coding gameplay systems, polishing code, fixing bugs, and adjusting UI and art
» Designed and implemented the character selection sequence
» Organized task documentation on Trello

Personal Project. Octoheart


Octoheart is a proof of concept 2D game containing elements of the bullet hell and action genres. Armed with a magical giant needle, the player must recover the 8 fragments of her carved-out heart by battling through the Queen of Hearts’ minions.

Play: WebGL build

Roles (team of 2): Programming, Design

Period: November 2015 – March 2016

Software: Unity, C#, Trello

Responsibilities:

» Implemented gameplay systems, including player movement, combat, and enemy behaviors
» Designed level progression
» Managed production of the game in collaboration with an artist

Personal Project, Slice


Slice is a proof of concept 3D puzzle game mash-up between Rubik’s cubes and Cryptex puzzles. The goal is to piece back together objects by rotating and swapping “slices” of the glass cube that the objects are encased in.

Play: WebGL build | Windows build download

Roles (team of 5): Programming, Design

Period: November 2015 – March 2016

Software: Unity, C#, Trello

Responsibilities:

» Authored gameplay systems
» Designed UI and gameplay flow
» Directed production in collaboration with two artists, a programmer, and a sound engineer

Personal Project, Cluster Spirit 2D


Cluster Spirit 2D is a personal project heavily inspired by the Katamari Damacy series. Using simple mouse controls, players must roll up enough items within the time limit in a bid to restore color to the cosmic multiverse.

Play: WebGL build | Windows build download | Android build download

Roles (team of 3): Programming, Design

Period: December 2014 – November 2015

Software: Unity, C#, Photoshop, Trello

Responsibilities:

» Implemented 2D gameplay features and UI heavily inspired by the Katamari Damacy series
» Expanded 30 base art assets to over 100 additional variations
» Collaborated remotely with an artist and a composer

Personal Project, Zen Organising


Zen Organising is a proof of concept born out of a love for organisation in games and in real life. It is simple yet cathartic inventory organisation. This started off as a project developed in MonoGame, which was then ported over to Unity to make the project more extensible and portable.

Play: WebGL build | Windows build download | Android build download

Roles (team of 1): Programming, Design, Art

Period: April 2015 – May 2015

Software: Unity, MonoGame, C#, Illustrator

Responsibilities:

» Coded and designed the game in MonoGame
» Ported to Unity
» Created all art assets using Illustrator

Class Project, Velcro Hunter


Velcro Hunter is a 2D platforming game created for a 3-week course on indie game development. As Sir Quentin Salisbury, velcro hunter extraordinaire, players must use velcro to navigate treacherous terrain and rescue endangered animals.

Play: WebGL build

Roles (team of 3): Programming, Design

Period: January 2014

Software: Unity, C#, Photoshop, Illustrator

Responsibilities:

» Programmed player movement, enemy behavior, and enemy collection systems
» Designed the levels, secrets, UI, and parts of the gameplay
» Organized documentation and game assets

Class Project, Lovers in a Dangerous Spacetime Demake


Developed as a final project for a HTML / CSS-based class, this is a demake of Asteroid Base’s Lovers in a Dangerous Spacetime. Made using Construct 2, the game features local co-op, whereby one to two players may individually control various parts of the ship in a bid to survive the endless waves of aliens.

Play: HTML build

Roles (team of 1): Programming, Design, Art

Period: April 2014 – May 2014

Software: Construct 2, Illustrator

Responsibilities:

» Created all gameplay systems in the free version of Construct 2
» Implemented the enemy wave system, which includes enemy spawning, player detection, and player tracking
» Made all art assets (excluding the background) in Illustrator to emulate the look and feel of Lovers in a Dangerous Spacetime

Class Project, Beardpunzel


Beardpunzel was developed as a final project for an introductory game development class. It is a lighthearted 3-player board game where players are princes trapped at the top of a tower. Using their magical beard-growing powers, players must race to be the first to lower their beards down to the princess at the bottom, who only has enough room on her horse to rescue a single prince.

Play: Instructions manual PDF | Printable PDF of the board and its pieces

Role (team of 1): Design, Art

Period: November 2013 – December 2013

Software: Illustrator

Responsibilities:

» Designed using iterative prototyping and testing
» Created the art of the game board and manual using Illustrator