Software Engineer
Genies & Gems
A web and mobile match-3 game, I was part of a three man engineering team responsible for development and live ops. I touched most aspects of the game from UI, networking, gameplay, analytics, rendering and everything in between. I spent a lot of time implementing the numerous events, both solo and PvP, that the player experiences each week. In addition I architected and implemented a daily quest system and an object messaging module (for triggering game events). I also integrated and supported numerous SDKs including the Facebook SDK, Ad services, In-App Purchasing and Google Play Game Services. Even after having been live for more than two years, our team continues to produce monthly client updates and weekly content releases to our 1.4 million daily active players.
Languages/Tools: C++, Java, Obj-C, Python, Lua, CMake/Make
Type Blaster Reloaded
A side project I worked on throughout my senior year in college (as this was a personal project, I made the game entirely by myself). Type Blaster Reloaded is a, surprise, typing game where you must type the words as they appear on screen before they impact against your spaceship. The game features 20 levels of varying difficulty, each of which rewards stars for completing objectives related to that level. Stars are used as a currency to purchase upgrades which aid in your struggle against the English language. Upgrades include, but are not limited to, shields, auto firing cannons, and additional health for your ship. In addition to all the gameplay elements, I implemented a profile system to allow multiple users to play the game with their progress being stored to their profile.
Languages/Tools: Java, Slick2D (lightweight Java 2D engine)
Strategic Advantage
This was my senior design project at my university. Two other engineers and myself designed and built this 2D, multiplayer, turn based, strategy game for Android devices (think Space Hulk or Final Fantasy Tactics but with a World War II theme). Players would pick a map and a game mode with each game mode determining the starting units. Each unit belonged to a class and had a certain number of points per turn which could be used to move and perform actions. Players took turns navigating the map's terrain and attacking. The objective was to eliminate the enemy team. I personally implemented all of the UI, gameplay (all the classes, the class actions, terrain, and turn logic), and client side networking (the other two engineers handled AI, pathfinding, and server side networking). We allowed players to play versus another player online, versus an AI opponent, or versus another player on the same device (hot seat).
Languages: Java
GeoLit
The Geography of Literature project was a UCLA research group that I developed an application for during an internship while I was attending my university. The project's goal was to find relationships between words and geographic locations. To that end I designed and wrote an application that would parse large amounts of text (usually novels) in order to extract keywords. I then mapped these key words to geographic locations. A web developer then took these keywords and locations and pinned them to a virtual map. This allowed the researchers to see what parts of the world various cultures were writing about at various points in history.
Languages: Java