Me@RyanLeverenz.net
972-746-8568
I'm an experienced game programmer with multiple titles shipped for PC and console platforms. I have extensive experience in Unity. I have made direct contributions to Godot Engine and I've open source tools I've developer for Godot have enabled developers on several published Steam games today.
I have a background in DevOps with a focus on Linux Administration. I have built systems for collecting detailed metrics from massive production servers running thousands of transitions per second. I have written automated scripts for installing, loading, and testing proprietary Linux distributions and applications. I have built software designed to bridge back end services with the front end web.
I have credits on all the expansions of Risk of Rain 2, including the 3rd announced, but unreleased, Alloyed Collective. I worked on the team that unified the codebase between original Hopoo developers and the console ports of the game.
For Survivors of the Void (the first expansion), we (Dream Toaster) worked integrated into the Gearbox development team with Hopoo. Gearbox needed experienced Unity developers to help work on bugs and make the target release schedule. We fleshed out their team to fix bugs. We began porting the expansion content to the console ports of the game.
Gearbox bought the IP from Hopoo and we (Dream Toaster along side Gearbox) started work on unifying the codebase from the console ports of the original game. Between 5 existing target platforms (PC, Xbox One, Switch, Stadia, and PS4), we unified disparate build targets into one codebase allowing faster console development and fewer platform-specific bugs. We also helped add PS5 and Xbox Series S/X to our supported platform list.
For Seekers of the Storm (the second expansion), we worked closely with the design team to implement new features and fix bugs introduced in new content. I personally designed and wrote a few features of the final game. While working on the 2nd expansion, the IP had 4 different owners. During that time we (Dream Toaster) continued to work with Gearbox uninterrupted and we collaborated to release the post-launch content patches and bug fixes.
While working at Dream Toaster, we have expanded from two (me+the owner) to fifteen employees. We now currently lead the design and engineering of third expansion (announced, but unreleased). There are multiple features I have designed and engineered in this new expansion. I am the primary engineering pull request reviewer, which means I review almost all engineering changes and features to the project. Other contractors have come and went, but we (Dream Toaster) had a virtually uninterrupted, and even expanded, contract for the project through the past 4 years.
I continue working for Dream Toaster with Gearbox on developing the future of Risk of Rain.
I worked on the Nintendo Switch port of Star Wars: Republic Commando (Unreal Engine 2).
I rewrote the Rumble system of the original game from scratch. The Original XBox's controllers had two simple motors attached to weights and the API merely adjusted spin intensity and timing, but the Switch's HDRumble uses linear actuators (like modern cell phones). The API works more like an audio API, with rumble events playing sound-like wave forms. The entire original system of the original game had to be rewritten to leverage the capabilities of the Nintendo Switch's HD Rumble. I extracted sound effects from the original game turning them into HD Rumble that you could feel (like holding a subwoofer). Firing various weapons feel like how they sound.
I rewrote and fine tuned the controller input. The original game was inspired by older assumptions of First Person Shooters on a console that didn't feel "good" to modern audiences (acceleration curve, aim vectoring, etc). I implemented Switch's input API into the nearly 20 year old Unreal Engine 2, and added features and systems that modern audiences expect.
I fixed many of the aspect ratio issues. The original game was built for 4:3 with very poor support for widescreen, epically in UI including icons, fonts, and various HUD elements such as crosshairs, compass, etc. I solved memory and performance issues, as well as implemented Nintendo's profiling tools into the engine for the team to debug. I built an end-to-end build automation system for delivering Switch console builds to our publisher.
The PS4 version of the project had the graphical, performance, and usability fixes forked from our version of the project.
This project was with Unreal Engine 2's source code (C++), and UnrealScript. Using Switch hardware-level APIs.
Southlake, Texas. Performance Engineer, March 2016-August 2019
I worked at Sabre in the Performance Lab helping run tests against Sabre products before release. Before every release, I ran simulated loads and measure response times, JVM application metrics, garbage collection, and various other performance metrics. I identified performance issues in many of the monthly releases of the products that I was responsible for testing.
I also worked on building and improving the tools our department created for performance testing. I wrote scripts for collecting metrics, wrote test reports, and cleaned up the test environment for follow up tests.
I worked to help migrate Sabre's mainframe based infrastructure to cloud based architecture. I helped Dockerize applications and test differences in performance when migrating to a more virtualized architecture.
Technologies used: Docker, Linux, Bash, Python, JMeter, Java, Ansible
Plano, Texas. Developer, April 2015 - December 2015
I built a tool in Node.js for testing the server that supported our app. This was both for error testing as well as load testing.
I also built a server that bridged our social networking app designed for mobile with the web allowing content shared from the app to be opened up from devices other than iOS.
Technologies used: Linux, Bash, Node.js, Jade, Expect.js, Apache
Plano, Texas. Intern, March 2014 - August 2014
I had several projects at Tektronix. First was implementing a minimal boot environment (pxelinux) so that we could configure automated installs remotely. This let us flip a switch on a control panel and on next boot that server would boot into the latest version or with a new configuration.
Next was to learn the company's newly licensed testing tool (iTest) and develop unit tests and parallelize existing tests. When my project was completed, tests that had taken 2-3 hours now took about 20 minutes with minimal user interaction and a full system test that took about 26 hours now could be completed in 2 hours with zero interaction.
Technologies used: Linux, Bash, iTest
Southlake, Texas. Intern, May 2013 - August 2013
I implemented a tool for parsing thousands of logs per minute and graphed them in real time. Their existing testing methods required a full day turnaround before tests results could be viewed, but after my project, testers could see test results in real time as well as get metrics about customer use.
Technologies used: Linux, Bash, Java, LogStash, Elasticsearch, Kibana
In 2013, I constructed a 3D printer from open-source designs and over-the-counter parts. Today I regularly produce 3D printed keychains and magnets as give-aways for my local community of indie game developers.
Computer Science Spring 2011 - Fall 2014
Studied Systems Programming, Game Programming, AI
Game Design, Fall 2009 - Summer 2010
Core classes, Fall 2008 - Spring 2009