Outside of Computer Science, I focused on classes that deal with International Security, Counter-terrorism, and Military Strategy. I have led two Department of State funded projects in countering violent extremism, and have done extensive research into the kinetic impacts cyber attacks can have on the battlefield and at home. I am also working towards Russian fluency.
As my interest in international affairs has grown, so has my desire to travel. To date, I have been to more than 30 countries across four continents, from the UK to Russia to Japan to Israel and beyond. I have made the most of this time, studying formally at Queen Mary University in London for a semester, and completing a research project in Moscow and Siberia with USC. I make sure to meet as many people as possible when I travel, to learn what life is like being lived through the eyes of someone far outside my own, in order to expand my perspective.
This tab shows the most remarkable projects that have coincided with my coursework at USC in Computer Science and International Relations as well as examples of projects produced during internships and out-of-class projects. The subjects taught using these projects range from algorithm design, to counter-terrorism, to data structures, to multi-threaded, agent-oriented group projects.
I led two projects while at USC to compete in the Peer-to-Peer Initiative, in which colleges around the world worked over the course of a semester to creatively develop something that limited the ability of extremist organizations, like ISIS, to recruit millennials. This broad objective allowed for creativity and experimentation. For the first project, STAVE, we created a website prototype where myths propagated in ISIS propaganda could be dispelled by interested professors and religious authorities we reached out to. For the second project, TerrorSim, I created a text-based adventure game the encouraged the player to develop empathy for the isolated target of recruitment, while learning about what can be done if they see a peer being radicalized.
NASA JPL Microwave Limb Sounder Touchscreen UI Design
While an intern at NASA Jet Propulsion Laboratory I, among other things, designed and began to implement a new touchscreen to display some of the data received from the MLS instrument on board the Aura satellite. My design went through several iterations and focused on allowing the user to intuitively move through data to find significant patterns in the meteorlogical data.
Utilizing the Java language, I was tasked with creating an application using agent-oriented design to simulate a city full of residents. These residents are able to make decisions such as when to go to the bank to deposit, withdraw, get a loan, or open an account, as well as decide to go to work, go home, or, if they are hungry, to cook at home, go out, or buy the necessary ingredients to cook at home, in addition to many other requirements. This project was unique in that it featured a client-engineer relationship in which requirements were assigned and changed without specifying how to design them in code.
This city (pictured above) was easily capable of having two-hundred residents, all within individual threads with effective public and private transportation, an economy, and changing roles based on the simulated time of day. Everything, including the Graphic User Interface, was entirely designed, developed, tested, and implemented by a team of six, including myself.
This project centered around simulating a restaurant, complete with customers, waiters, a host, a chef, money exchange, and supply management. The simulation was entirely written in Java as well as designed with an agent-oriented, multi-threaded design. The restaurant was built from the ground up, starting small with just one waiter and one customer, and eventually leading to this whole simulation with the addition of requirements and scalable, well-organized code.
Both within my classes and in my own free time, I have designed and created a number of playable games utilizing a variety of different tools, including Unreal Engine 4, Unity, Maya, custom game engines, GameMaker, and the Qt UI framework.
For the capstone of my Computer Science degree, I spent more than a year working on Chambara, a multiplayer first person combat stealth game with a two-color art style, with a team of about thirty other students. I worked with artists, composers, designers, producers, and fellow engineers to create the gameplay and customization options for the first game to ever be published by USC. Additionally, I worked for months with the other engineers to accomplish the feat of releasing Chambara on the Playstation 4, available now!
Gladius is a 2 player, Arcade-style fighting game developed in Unity. As one of three developers, I led the game design and programming aspects of building gameplay, and an on-team artist developed art for the final product.
My Friend and Me
For the length of my Junior year, I worked in a team of about a dozen graduate students as one of the lead programmers of a game called My Friend and Me. The game is a single player, dual-character adventure in which one player with one controller controls two different characters to accomplish goals. My role in this project was camera programming, interactions, and basic player movement using C# in Unity. I was also involved in the design decisions during the game's pre-production phase.
I worked in a team of 4 students to develop a short, stealth-based game in Unreal Engine 4 with a supernatural twist, inspired by Dishonored. The core mechanics of the game are centered around evading different types of enemis while gaining supernatural powers that allow the player to utilize the environment in new ways. My main contriubtion to the game was designing and implementing the enemy types so that the code could be easily understood and reused to create future enemies. I created 3 types of enemies, a basic guard that simply patrols, patients that approach the character to blindly block them, and scientists that, upon seeing the character, destroy themselves and their experiments. Additionally, I designed the second level of the facility and helped develop the power-drugs that give the character new abilites. A rough video of gameplay can be found here
What began as a pitch given in a Game Design class was voted, by other students in the class, as one of the top ideas, and was greenlit to be produced using professional quality materials. As Creative Director, I run the team meetings and organize the logistics of weekly sprints as well as the overall game design. All assets used, from art to game pieces, will be entirely owned or produced by the team and me.
Written in the C++ language using the Qt UI framework, this game was entirely built from the ground up. Everything from user input, to collision detection, to user controls were designed and implemented by me. This game taught me the importance of organizing information on a fairly large project in order to create a game that is easily approachable and functional. The unique mechanic I added to this arcade style game was that each shot fired deducted points, forcing the player to make their shots count in order to achieve a higher score.
In order to get a feel for level design and a solid difficulty progression, I made this short runner-style game featuring Mario in which the objective is to avoid obstacles and get to the finish line while Mario sprints forward with the camera following him. While the sprites themselves are the property of Nintendo, I used GameMaker to do all the animation, gameplay, and level design myself.
Mario Bros (Remake)
I took the time to learn from the classics and remake the original Mario Bros. I have created one level with enemies, coins, the classic POW block, and working pipes and platforms. This project helped me learn some of the processes that Nintendo (who owns all the rights to these characters) went through in designing a classic game that has a simple, fun feel. Emulating this simplistic yet addicting attitude for design is my ultimate goal.