Tyler Childerhose
SKILLS
Technical
- C#, C, C++, Java
- Javascript, PHP, HTML, CSS
- Python, Lua, Batch, Shell
- SQL, ElasticSearch, CosmosDB/Gremlin
- Unity3D
- Visual Studio 2013-22|Code, Eclipse, XCode, Android Studio
- Android SDK, iOS SDK, Facebook SDK/API, Google Cardboard SDK
- .NET/Core, ASP.NET, Apache Tomcat, SmartFox, Terraform
- EntityFramework/EFCore
- DevExpress/DevExtreme, Magento2
- Azure, AWS
- Gradle, Apache Ant, Atlassian Bamboo, Azure DevOps, Jenkins
- Docker, Docker-Compose, VMWare, VirtualBox
- Atlassian Confluence, Atlassian JIRA
- GIT, SVN, NUGET, NPM
- Windows, Linux, Unix, MacOS
Non-Technical
- Excellent problem solving and adaptation skills
- I take pride in all of my work
- Able to work comfortably in both team and solo environments
- Hobbies include Boardgames, Video Games, Homebrewing and anything related to Technology
EXPERIENCE
Apparatus GS | Lead Software Developer | 2022-07 → Present | London, ON
General Responsibilities
- Github
- Admin and maintain Company’s Github repo
- Constructed release procedure
- Pull Request/Code reviews
- Branch and User management
- Azure DevOps
- In charge of managing all aspects of Azure DevOps
- Created and maintained build pipelines using Azure DevOps
- Monitor and Scale Up/Down App Services, Databases, Cacheing, etc. for optimal Cost/Performance ratio depending on usage
- Tightened permissions and fix security issues with resources
- Manage SSL Certificates and DNS Records
- Manage FrontDoor loadbalancing and WAF Policy rules
- Manage Firewall and Security rules
- Manage alerts for availability service
Unnamed Project (.Net 6 - C#) | 2022-01 → Present
- .NET6 MVC server stack
- EFCore 6
- Razor Pages front-end with DevExtreme
- ElasticSearch and Cosmos/Gremlin Graphing database implementation for searching
Apparatus GS | Senior Software Developer | 2019-04 → 2022-07 | London, ON
Project Arch (.Net 6 - C#) | 2019-07 → Present
- .NET6 server stack
- In charge of designing and writing from scratch including Database structure
- API relay server that tightly integrates communication between services connected to it, such as multiple Magento2 store fronts and multiple Core Tools Software Applications
- Wrote Magento2 modules to handle API requests to fetch data and manipulate User’s carts
- Built, deployed, and maintained a nuget package (net6.0, net471, etc) of shared models to be used in Arch and Core Tools Software Applications
- Setup to use a shared project that contains the main structure and code of Core Tools
- Added defines to support .NET6 in the shared project that was originally .NET 4.7.1 only
- Extended the EntityFramework Context to support EFCore
Core Tools (ASP.Net WebForms - C#) | 2019-04 → Present
- ASP.Net 4.7.1
- Profiled and improved overall performance of the system
- Implemented caching logic
- In-memory+redis logic to allow multiple servers to share a cache
- Multi-platform support (net6.0, net471)
- Changed inefficient data types and sorting algorithms to properly suited alternatives
- Reduced amount of Database requests
- Implemented caching logic
- Improved reliability of the API endpoints of the system
- Wrote documentation of the API endpoints of the system
- Created health-check API endpoint for Azure availability service
- Helped with design and implementing new functionality to key components in the system
- Updated Password and Security requirements to match latest NIST standards
- Implemented support with OpenID Connect (OAuth 2.0) SSO
- Multi-platform support (net6.0, net471)
- Background sign-in
- Implemented a series of helper functions that utilize a strong Cryptology library (BouncyCastle) to allow easy to encryption/decryption for our developers to use
- Database management
- Restructured some Database tables to be flatter and require less joins than needed
- Wrote SQL Procedure scripts to migrate tables and their key constraints to use GUID primary keys
Big Blue Bubble | Game Programmer | 2013-05 → 2019-03 | London, ON
Concert Kings (Unity3D - C#) | 2018-04 → 2019-03
- .NET Core server stack
- In-App purchasing server verification
- Database and tables structure
- General bug fixes and gameplay programming
Super Dinosaur (Unity3D - C#) | 2016-08 → 2019-03
- In charge of researching real-time multiplayer and match making systems and determining the pros and cons of 3rd party (Photon, Unity) vs hand-made. Scope of the game eventually changed away from real-time multiplayer.
- General gameplay design and programming
- Help set up deterministic state combat system
- .NET Core server stack
- In-App purchasing server verification
- Implemented local and push notification module
- Database and tables structure
- Atlassian Bamboo to build and deploy the project
- Implemented tutorials
- Memory and performance optimizations
Game Jam - Tabby Terror (Unity3D - C#) | 2018-11
- 48 hour Game Jam where we have 48 hours to come up with a concept and develop a game prototype which will be presented to a group of judges
- Sole programmer of a single screen 3D multiplayer game (similar to “Overcooked”)
Jammer Splash (Unity3D - C#) | 2015-11 → 2018-04
- Wrote and implemented a Unity3D local and push notification module that supports multi-platforms (iOS, Android) which is currently used in most of our Unity3D games
- Game eventually pivoted to a different main game mechanic where I became the sole programmer in charge of revamping the game in a short timeframe
- Set up and maintained the following:
- General bug fixes and gameplay programming
- Entire Unity code base
- SVN repo branches and cleanup
- Facebook social features using Facebook’s Unity SDK and Graph API
- Google Play, Apple, Samsung Galaxy and Facebook App stores
- Adding new store In-App purchasing server verification
- Java based Tomcat server stack
- Database and Tables structure
- Atlassian Bamboo to build and deploy the project
- Seamless release management
- Memory and performance optimizations
- Implementing all current and future content
Game Jam - The Great Dive-Vinci (Unity3D - C#) | 2017-04
- 48 hour Game Jam: 48 hours to conceptualize and develop a game which will be included in the our “Home Arcade” game
- Programmed a Nintendo Gameboy inspired combo hitting game
Perfection Prototype (Unity3D - C#) | 2016-04 → 2016-07
- Part of a two person team to rapidly prototype games based on the board game “Perfection” including one in VR using the Google Cardboard SDK
My Singing Monsters: Dawn of Fire (Unity3D - C#) | 2015-06 → 2016-01
- Implemented Facebook social features into the game using Facebook’s Unity SDK and Graph API
- Wrote and implemented an In-App purchasing server verification module that supports multi-platforms (iOS, Android, Amazon) which is currently used in most of our games
- Set up Amazon App Store
- General bug fixes
Finder’s Keep (Internal C++ Engine) | 2012-07 → 2015-07
- General bug fixes and gameplay programming
- Wrote scripts that would parse a spreadsheet (which contained data for items, enemies, balance numbers etc.) and sync with a database
- Setup database and tables structure
- Java based Smartfox server
- Implemented and maintained combat systems
- Implemented new monsters and bosses into the game
- Set up Android and iOS App Stores
My Singing Monsters (Internal C++ Engine) | 2013-05 → 2013-08
- General bug fixes and gameplay programming
Extra Curriculars
- Was an active member of Social and Health Committees
- Helped host visiting groups and travelled to schools for Q&A
- Volunteered at conventions running company booth
- Founded and managed a weekly Board Game group reaching out to new staff to help make social connections and ease nervousness
Big Blue Bubble | Game Programmer Intern | 2011-05 → 2013-05 | London, ON
Dark Incursion (Internal C++ Engine) | 2011-11 → 2012-07
- General bug fixes and gameplay programming
- Ported game to Android
- Implemented controller support (wired and wireless)
- Memory and performance optimizations
I, Oracle (Internal C++ Engine) | 2011-06 → 2012-07
- General bug fixes and gameplay programming
- Developed RESTful PHP server
- Developed web based tool to organize user-submitted questions as well as push questions live into the game
Bug Splat (Internal C++ Engine) | 2011-09
SEP 2011
- Part of a 2 person team that developed an entire game in 48 hours during a local video game convention (Project Play). During this time people could come up and watch us work and ask questions.
Crash Canyon (Adobe Flash) | 2011-06 → 2011-08
- Developed 2 mini-games for a Flash game based on the TV show
Sonic Skins (Internal C++ Engine) | 2011-05 → 2012-06
- Sole programmer
- Completed and published in half the time allotted
- Added JPEG image compression support to the internal C++ engine
Boston Pizza | Line Cook | 2007-03 → 2011-05 | London, ON
- Part of the core team scheduled to work during the busiest times. Learned the importance of multi-tasking, good communication, stress management and team work in a fast paced environment.
Geek Squad | Technician | 2009-03 → 2009-11 | London, ON
- Provided computer repair and troubleshooting assistance to customers.
EDUCATION
University of Western Ontario | BSc in Computer Science | 2007-11 → 2013-04 | London, ON
- Minored in Video Game Development.
- Completed 16 month internship with Big Blue Bubble during studies.
Regina Mundi Catholic Secondary School | 2002-11 → 2007-04 | London, ON
- Graduated with 93% Average
- Was a member of the Football and Archery Teams
AWARDS
Julian Davies Silver Medal | 2013-04 | London, ON
- Awarded annually to a student graduating in a Computer Science program who is judged to have made a significant contribution to inter-personal computer communications, with a particular reference to the communications handicapped.
CEMC Fermat Math Competition Certificate of Distinction | 2005-06 | London, ON
- Awarded to the top 25% of all competitors
CEMC Cayley Math Competition Certificate of Distinction | 2004-06 | London, ON
- Awarded to the top 25% of all competitors