Overview
- Primarily experienced in C++, I have programmed for teams up to fifteen programmers.
A regular at local industry events, I have recently completed a Blackberry 10 app.
Most of my time lately has been spent optimizing and porting code for Electronic Super Joy.
Experience
- Implemented the localization and font system used for UNO & Friends in addition to most out-of-game UI
- Programmed several minigames and puzzles in C++ for integration into larger games
- Wrote a system for upload and verification of user-generated content for Where’s Waldo in Hollywood
- Developing a C library to query and control Source Engine master and game servers
- Created spotOn, a homebrew game for the Nintendo DS
- Project catalogue available here
Technical Skills
- Programming & Databases
- Proficient in C/C++, C#, PHP, XML, JSON
- Conversant in PERL, XHTML, CSS, BASH and Windows Scripting, JavaScript
- Adept using databases; MySQL, Cassandra
- Operating Systems & Applications
- Experienced using Windows, MacOS X, CLI and GUI based Linux systems
- Productive using Eclipse, Visual Studio, and Xcode
- Proficient with 3D Studio Max, Photoshop, Audacity, VirtualDub, Flash
- Efficient using MS Office Suite, OpenOffice.org
- Version Management / Methodologies
- Experienced in administering and using CVS, Subversion, Git, and Mercurial servers and repositories
- Familiar with Agile and Scrum Development methodologies
Work Experience
- Lead Programmer (August 2013 – Present)
- Michael Todd Games - Toronto, Ontario – michaeltoddgames.com
- Integrated Steamworks support for Electronic Super Joy (Achievements, Cloud Save, Leaderboards)
- Profiled and optimized ESJ game engine
- Port games to OUYA, Playstation3, Playstation4, PS Vita
- Programmer (January 2012 - January 2013)
- Gameloft - Toronto, Ontario - gameloft.com
- Created localization and font systems for UNO+Friends
- Heavily involved in the creation of UI screens and widgets, including leaderboards and friends list
- Programmed minigames and microgames
- Various engine/library optimizations
- Server Administrator (September 2011 - January 2012)
- Beeline Interactive Inc. - Etobicoke, Ontario - beeline-i.com
- Administered 60+ cloud and dedicated servers
- Programmed a web service for extracting usage statistics
- Programmer (November 2010 - July 2011)
- Vast Studios Inc. - Toronto, Ontario - vaststudio.com
- Programmed in C++ a wide range of puzzles and minigames to enhance adventure-style gameplay
- Create scenes, interactions, and adventure-style gameplay using in-house editor and following design documents created by the designer
- Prototype levels using concept art to provide gameplay feedback to designers
- Work within a designer and producer feedback loop to improve player experience
- Various engine optimizations
- Quality Assurance Technician (August 2009 - November 2010)
- CAPCOM Interactive Canada - Etobicoke, Ontario - capcommobile.com
- Responsible for finding and reproducing bugs in games
- Performed unit and regression testing before major releases
- Communicated with programmers to provide solutions for universal and handset specific issues
- Answer support emails and feedback messages as well as phone inquiries
- Worked with teams in Los Angeles and London to test and deploy games on time
- Provision new PCs running Windows XP and Vista for new staff
- Edited autio and video for use in games
- Worked with iPhone developers to add and extend an online PHP leaderboard system to several games
- Consultant (July 2010)
- Cerulean Games - Denver, Colorado - ceruleangames.com
- Created systems to assist with AI logic and gameplay triggers in C++ using the Torque engine
- Consultant (November 2008 - Present)
- Dynamic Solution - Toronto, Ontario - dynamicsolution.ca
- Programmed a script to parse .csv log files to a database for access, logging, and backup
- On-site technical support
- Computer Operator (June 2006 - August 2009)
- Canadian Tire no.171 - Etobicoke, Ontario
- Systems Administrator
- Maintenance and repair of iSeries (AS/400) and TeamPOS hardware
- SKU / Inventory management
- Planned and re-wired store for VoIP Phone system
- HLstats Developer (January 2002 - 2009)
- HLstats Team / United Admins Ltd. - hlstats.sf.net
- HLstats creates real-time player and clan statistics for Half-Life and Half-Life 2 based games
- Programmed in PERL and PHP using MySQL for data storage
- Coordinated with developers in Germany, England, Australia, and The United States in order to push out new releases
- Designed and tested features and functionality based on user and developer feedback
- Implemented bug fixes
- Director of Operations (January 2004 - July 2005)
- e3Gameing / GameLine - Toronto, Ontario
- Systems / Network / Website Administrator
- Provisioned new servers, switches, and user accounts
- Developed web-based tools for clients and staff to control and configure virtual servers using a PERL daemon running on a master, and five slave servers
Education
- Video Game Design and Development (July 2005 - December 2006)
- International Academy of Design & Technology - Toronto, Ontario
- Programming lead for Six
- Programmer and artist for Rapture, and Predator: The Hunt
- Editor in chief for Sk1llz Magazine Vol.2 Iss.3