- Ericsson July 2017 to present
- Hadoop, Kafka, Kafka connect, Spark, Python, Java, Docker, Kubernetes, KSQL
- Rocket Gaming Systems May 2011 to Feb 2017
- Platform Development and Maintenance
- Maintained a proprietary game library in C++ with Lua integration that is extensively used for Rocket products. Worked with internal customers to define scope, design, and delivery schedule of additional features to be added to the library, and implemented them.
- Title Development
- Developed a new title using the in-house game library. Used C++ and Lua. We used a mixture of new and reused components in order to meet the completion deadline with all features.
- Test Automation
- Designed and implemented a Python tool for automated integration testing of titles using Robot Framework. Including writing custom SQL database queries to ensure data integrity.
- Build System Improvements
- Setup Linux builder to integrate with Rocket’s previously Windows only automatic build system for our first Linux component. Then planned and executed a transition for many of our Nant-based build systems to use TeamCity.
- Deployment and Configuration Tools
- Developed and maintained several tools to help the production and field support teams with deployment and configuration of our various software systems. These tools were written in C#/.Net and Python, with configuration files in XML.
- SAS Simulator
- Lead the development of a SAS protocol (RS232) host simulator to verify product correctness. Core engine is in C# with an interface to Python for high level behaviors and a GUI front-end using Tkinter. The simulator has been used to reproduce many bugs from the field that would otherwise be difficult to impossible, as well as to augment automated testing of our products to find bugs before they are shipped.
- Value Game Initiative University of Texas at Dallas, June 2010 to May 2011
- Programmed several small games to accompany a lecture series on bioethics. Two in Flash, and one using the Torque game engine. The Torque project required some small modifications to the C++ core of the engine.
- Lymba June 2009 to March 2010
- Delivered an enterprise system written in a mixture of C++ and Java that would classify incoming customer communications (email and phone support) based on the existing natural language processing (NLP) pipeline. Also worked on porting the old C++ NLP pipeline into Java.
- First Person Cultural Trainer University of Texas at Dallas, July 2007 to November 2008
- Constructed 2 prototypes of a cultural simulator. One uses Unreal Engine 2. The other uses Unreal Engine 3. Both have 50 to 100 NPCs. They both required the creation of an extensive dialog system both between NPCs and between the player and an NPC, and also new movement code for AI navigation of crowded spaces.
Languages: C/C++, Python, C#/.Net, Java, Lua, Common Lisp, Scheme, Actionscript/Flash, XML
Operating Systems: Windows 7/8/10, Windows Server 2008/2012, OS X, Linux
Build Systems: make, automake, Nant, NSIS, Visual Studio 2008, Visual Studio 2010, Visual Studio 2012, Visual Studio 2013, Visual Studio 2015
Source Control: Subversion, Git, Perforce
Databases: PostgreSQL, MySQL
BS in Computer Science from the University of Texas at Dallas - Graduated Fall 2008