We really enjoyed hosting Rocco Wu and Michael Ford from the University of Southern California and Jacob Roberts-Baca from Stanford University this past summer.
At Airstrafe, interns dive deep, get their hands dirty, and do really impactful work. We structure our internship program to provide students with meaningful opportunities for experiential learning and professional development. Interns are given a lot of freedom to express themselves, learn new skills, and sharpen as well as apply their existing knowledge outside of the classroom. Airstrafe seeks and rewards passionate, success-driven, and creative high-performers who have a strong ownership mindset. We welcome interns from any university grade level — talent has no age! Whenever possible, we hire first from our internship classes.
For those interested in applying for future fall, spring, or summer internships, hear from Jacob, Rocco, and Michael in their own words about what to expect:
Jacob Roberts-Baca, Gameplay Programming, Sophomore, Stanford University ’25
As a Gameplay Programmer Intern at Airstrafe Interactive this summer, I had the opportunity to design, develop, and implement gameplay features for Saleblazers, an upcoming multiplayer shopkeeping survival game. The past three months have been enormously rewarding, and I can’t thank Michael and Nancy Duan and all the Airstrafe team enough for providing me the chance to jump in and work on this ambitious game! Some of the projects I worked on this summer included: designing and implementing a networked world map for viewing locations of other players and points of interest, developing an NPC employee system allowing players to delegate tasks such as resource gathering, cleaning, and restocking, combat AI, and networked visual effects. I’m honored to have been entrusted with setting the pace for these important gameplay features while working alongside a talented team of programmers, designers, and artists. I learned a lot in the process, and can’t wait to see where Airstrafe and Saleblazers go!
One of my favorite parts about working at Airstrafe was the level of ownership I got to take over the projects I worked on. From day one, I was able to jump in and write production code that ultimately ended up in live builds of the game. I was entrusted with implementing gameplay features that touched many parts of the codebase, and learned what kind of engineering goes into developing a game of this scale. There’s a great startup culture at Airstrafe where developers are more than just code-monkeys: from idea to implementation to testing and finally production, I really valued the opportunity to voice my feedback at every step along the way and shape the final product. If you’re looking for an internship opportunity that will challenge you in a fast-paced, collaborative environment, but also one in which you’re immensely proud of what you got to accomplish, join the team at Airstrafe!
Rocco Wu, Game Design, Junior, University of Southern California ’24
Hello There! My name is Rocco Wu and I was a Gameplay Design Intern at Airstrafe Interactive this summer. This internship that spanned 12 weeks was super memorable and gave me a valuable experience working in the professional games industry.
I really enjoyed doing game design during this internship because it was a great learning experience for me to learn to create a multiplayer online game. As a game design intern, I was entrusted with big features such as progression working on designing and implementing tech trees, implementing and tuning combat animations, working with the art team to create places of interest (check the Red Rock Desert Cowboy Town), polishing the fishing and lockpicking minigame, and prefab duty. This list does go on, but each day you can be expected to design different features which make them super exciting to do. I spent a generous amount of time working on the Research Bench, Personal Skills, and Store Policy tech trees and they are a favorite part of mine because progression is super important to get players engaged in the game across play sessions and allow players to be rewarded with new unlocks as they progress through the game. The process for me started with researching different layouts for tech trees for usability and then going into the engine to create all the skill nodes, set the unlock requirements, test and rebalance them to ensure that skills weren’t too easy or hard to reach. Having different types of tasks everyday made the experience super fun because it always challenged me and brought me to a new area of the game that I was unfamiliar with and this experience can be hard to find in the games industry. My experience doing game design at Airstrafe Interactive, have prepared me to do game design further in my career.
One of the first things that Michael and Nancy said to me was that as an intern, I was able to create my own experience so that I can learn and grow as a game developer. Therefore in addition to my game design responsibilities, I was also interested in the production side, so I helped Michael manage production tasks. I remember in the first 30 minutes of my internship, I was called into the big meeting room with Michael and Nancy to meet with a marketing firm that we were working with and this gave me valuable experience in working on the marketing side of the games industry that I was unfamiliar with. It was fast-paced and it taught me how to communicate in a professional environment to ensure everyone was on the same page and was going to be happy with the results. Another memorable experience is our big milestone – Steam Survival Fest during the first week of August when I got to know our team of over 25 individually, as we worked in-person and remotely to set features that we must have based on the priority while taking into account each member’s pacing and time to complete tasks. An important part of participating in the Survival Fest was to revamp the Steam page so I worked with Tia and Sunny to help them find some freelance artists to create the container that you can now see on the Steam store page. Lastly, another favorite part of production for me was researching other Third-Party parties that specialize in voiceover production, localization, and marketing to present to Nancy and Michael. Interning at Airstrafe gave me plenty of opportunities to express my creative inputs and make personal choices regarding my career path.
I really enjoy going to work every morning not only because of the work I could do but also because I was surrounded by super talented and awesome people. Every day, we would go out to lunch together around the office and bond like a family. Each team member has been very kind and patient so I learned a lot from them. During my time here, we did team events such as going to Round1 for arcade and bowling, soccer matches in a nearby field after work, and playing games on Friday nights.
Michael Ford, Game Design, Senior, University of Southern California ’23
Over the summer, I was a technical design intern at Airstrafe Interactive working on Saleblazers for a period of 3 months. My main area of focus was on game polish and feel, in particular through the use of audio effects.
At the beginning of the summer, I worked on the Fishing Minigame with another design intern from my cohort at USC. After playing through the minigame, we identified a few areas where we could add polish and improve the way the game played and felt. I started off by searching for possible sound effects to place into the minigame. I created a collection of sounds for casting the line, the bobber hitting the water, locking the line, the splash of the fish swimming around, and a variety of cymbal “splash” sounds that I wanted to incorporate as part of the success/fail state at the end of the minigame. After putting together the collection, I wrote a script that could take in a list of sounds and randomly select one to play. I created separate audio sources for the various components of the fishing game so I could alter and play multiple sounds at the same time. I wanted an audio indication for the player of their progress towards catching the fish, so I implemented code that pitched up the “reel in” audio source the closer the player got to reeling in the fish successfully. I also helped to implement the animations, and made sure that the timing of the sound effects lined up with the animations.
When the fishing minigame was at a point we were happy with, I moved on to playing through the game’s tutorial and looking for ways to polish and improve it. After playing through the tutorial a few times, I came up with a list of possible improvements in the form of a google spreadsheet, which I organized based on relevant departments and how easy the problems could be to solve.
Later on in the summer I implemented the audio for the lockpicking minigame, and used many of the systems I had already created for the fishing minigame. I wanted audio to be an important part of the lockpicking game, even more so than it was in the fishing minigame. I used a similar script to the fishing reel to increase the pitch and volume of the “tumblers turning” sound effect the closer the player got to completing the challenge. To test it, I even played through the minigame with my eyes closed to see if I could complete it using sound alone.
Another task I worked on was “prefab duty,” which mostly consisted of setting up planned items as in-engine prefabs so that they could be implemented later on. For this, I referenced a spreadsheet of planned items from the game’s tech trees and put them into the game. Some items on the spreadsheet already had their in-game values and crafting ingredients written out, but for many others, I also determined how valuable the item should be within the game’s economy, as well as what existing items should be used to craft it.
About halfway through the summer, I began transitioning to more audio-related tasks. I created multiple sound effects for the upgrade system, using a slow “coins falling” build up for when the player is holding down the button, and a cash register unlocking sound for when the action was completed. I also created sound effects for a lot of the resource harvesting in the game, putting together effects for chopping bamboo and wood, as well as mining rocks. With much of the game revolving around resource harvesting, I feared that no matter how many sound effects I used, they would become stale as a simple result of how often they would be heard by the player. To alleviate this, I wrote a new script that could randomize the pitch and volume of the audio source used by an object. To make it easier to edit the game audio in the future, I also centralized the audio systems within a single system that used an array of AudioSources to randomize, modify, and play the sounds, rather than recreate the randomization and modification code each time I wanted to implement something similar in a different part of the game.
Using this system, each hit with a weapon would sound slightly unique to the player and hopefully avoid the audio effects from feeling stale or overused. I also used this system to modify the existing footstep audio, which had up to that point played a set loop at an unchanging pitch and volume. Using the script, I was able to make footsteps sound more unique and less stale.
I also worked on a lot of sound design, mostly for the enemy creatures of the game. Some of the enemies were simpler to find sounds for, such as the boars, but the fantastical creatures unique to the world of Saleblazers provided more opportunities to create sounds of my own. For the “Apex” enemy, I used a combination of gorilla grunts and bear roars. I wanted the “Bellstalker” to sound ghostly and alien, so I used sound effects of whispers and modulated wind gusts to give them the “unearthly” feel. I also incorporated sounds of ice and snow cracking to incorporate their freezing powers into their audio effects. For the small, cat-like “Bellcoats,” I initially used normal cat sounds, but they didn’t sound “weird” enough for the mysterious enemies. To made them sound more distinctive, I sought out clips of cats making especially odd chirps or warbles, then modulated them to further distance them from their original source.
I learned a lot working at Airstrafe this summer. It taught me a lot about working on long-term projects, something I hadn’t had a lot of experience with in the past. I also learned about team dynamics and interaction within and across departments by attending meetings and working with other members of the team. It was also very fun and interesting to meet all of the interesting and talented people working here. The culture was very welcoming, everybody was polite, and I never felt afraid to ask others for help. I look forward to hopefully crossing paths with the Airstrafe team in the future.