Jesse W. Schirmer

(256) 417-5870 • jessewschirmer@gmail.com
A passionate programmer that loves to learn
and better his computer programming skills.

Skills

Programming ActionScript, C, C++, C++/CLI, C#, JavaScript, LPC, Perl, PHP, Prolog, Python, Ruby, Visual Basic
ASP.NET, Canvas, CSS, HTML, LINQ, SQL, SVG, XML
Software Apache, Audacity, Bitbucket, Confluence, Fireworks, Flash, GameMaker, Git, IIS, Illustrator, JIRA, Mercurial, Microsoft Office, MonoDevelop, Nginx, Photoshop, Premiere, PuTTY, Sublime, Subversion, Team Foundation Server, Unity, Unreal Engine, Visual Studio, Visual Studio Code, Wireshark
MS SQL, MySQL, PostgreSQL Bash, Batch, C shell, PowerShell
FreeBSD, Linux, Windows Docker, Hyper-V
Frameworks AngularJS, DirectX, jQuery, Mono, .NET, Node.js, OpenAL, OpenGL, React, Tailwind CSS, Telerik
ASP.NET MVC, Django, Razor, WordPress, Xenforo
Services Amazon Web Services, Google Analytics, Google Cloud Platform, Google Workspace, Steamworks
Concepts Agile, Ajax, API, Bitwise, Cloud Computing, Cryptocurrency, DevOps, Dynamic HTML, FTP, Gamification, LDAP, MVC, OpenID, Regular Expressions, Recursion, Search Engine Optimization, SSH, SSI, SOA, TCP/IP, Unit Testing, Virtualization, Web Service

Background

For as long as I can remember, my home had at least one computer and I was always on it. The first programming language I remember learning was Prolog on a Wyse 8086. I used this to create one of the earliest programs I can recall creating; a text-based clone of Space Invaders.

During the dot-com bubble in the 1990's I started doing web development and worked freelance making sites for companies. It started out as static pages using HTML, CSS, and JavaScript, but quickly grew more interactive using backend languages like Perl, PHP, Python, and Ruby. I also learned operating systems like FreeBSD and Linux that I used on dedicated servers with software like Apache, BIND, MySQL, and PostgreSQL.

In the 2000's I started using Visual Studio and learned ASP and C# along with the rest of Microsoft's web stack. This lead me to work for a company who used this stack on AWS -- which was my first experience with cloud computing. Since then I've continued to focus on C# and it has become my choice for most tasks.

Video games have always been a passion of mine and around 2010 I pursued that by working on web sites and development tools for games as well as on commercial games themselves. During this time I developed software for a lot of interesting hardware. I also exhibited at trade shows, gave talks at major developer events, and participated in game jams where you or a team have to make a game in a short amount of time.

Now with over two decades of experience developing and managing a large variety of projects, I'm looking forward to finding new challenges to which I can bring my diverse set of skills.

Work History

Infinity Interactive http://iInteractive.com

Senior Developer March 2022- December 2022

A technology consulting firm that has been around since 1998.

  • Upgrade outdated Python code (including 2.7) to version 3.9.
  • Improved performance of MS SQL database by over 300%.
  • Help get development started on a community content sharing site using GraphQL, Node, React, and Tailwind CSS.

PESA Switching Systems, Inc. http://PESA.com

  February 2018 - August 2022

A global leader in professional audio/video hardware that is involved with major sporting events, television networks, government agencies, and Fortune 500 companies.

Cattrax Web

Cattrax is C++ Windows application that allows users to control various pieces of hardware. The web version is an ASPX instance designed to work with the C++ libraries of Cattrax.

  • Fixed various issues throughout the program.
  • Added the ability for users to login using LDAP and Active Directory.
XSTREAM C22

The C22 is an audio/video encoding/decoding device that supports RTSP. It has a web interface built around AngularJS that runs on a Node.js backend.

  • Modify the backend JavaScript code to change functionality of certain features.
  • Update the UI to reflect the changes.
Cattrax IP

Cattrax IP is a C# application that manages hardware on a large network for large scale KVM operations.

  • Engineered and built main program from the ground up.
  • Designed API protocols used by hardware throughout the system.
  • Created tools to help with testing of the overall system.

Undisclosed Casino Web Site

Developer November 2015 - December 2016

Due to security issues, I'm not allowed to disclose the name of the web site I worked on.

Online casino games for a company in Sweden. The goal was to replicate the casino experience online with social integration.

  • Created multi-user casino games JavaScript and Python where many players can play at the same game table -- for example, roulette.
  • Gamified the system by making it competitive with things like leaderboards to encourage more gambling.
  • Created a marketplace where players can get items back with their winnings if desired.

Tiara Gaming http://TiaraGaming.com

Developer & Engineer June 2015 - September 2015

Tiara Gaming is a game studio startup in Canada working on its first game called "Latch." The game was written in C# and uses Unity as an engine.

  • Created level generation system that created maze-like levels for the player to navigate through.
  • Engineered an AI to effeciently nagivate around the procedurally generated levels.
  • Setup Google Cloud instances and installed/managed Atlassian products like JIRA & Confluence to allow team to work together more easily.

ZampleBox, LLC http://ZampleBox.com

  Janurary 2015

ZampleBox is a subscription service for electronic cigarette products. Every month they will mail out a box of different products to their subscribers. They have tens of thousands of subscribers all over the world.

ZampleBox hired me to create the basic framework for a community website. We worked together for an entire month, and had a working prototype at the end.

  • Created a community web site with ASP.NET MVC and Razor.
  • Made views that allows admins to easily manage site content.
  • Added a way for users to rate and review products and share additional information (such as hardware setups) with each other.

MindGear Labs, LLC http://MindGearLabs.com

  September 2014 - June 2015

SMALLab is an interactive enviornment that uses an array of motion capture cameras and a projector to give users the experience of being inside of a video game. It can support up to three players and is focused towards being an interactive learning enviornment for schools.

Ramped Up

Ramped Up was created to teach students about physics. The player is presented with two ramps they can adjust, and a ball they can drop from a desired height. The goal is to roll the ball down one ramp and jump it off the other so it lands in the goal. Students can calculate the values they need then see if they're right by trying it in game.

  • Created a way for players to pick up the ball and positioning ramps.
  • Added a menu system with options for the game.
Lunar Living / M.I.C.E.

Lunar Living (also called Moon Indoor City Environment) was designed to teach students geometry by building lunar bases. The players are presented with a randomly generated lunar surface. Using their wands, they can scan the circumference of each crater. They can then touch their wand to the dome building robot and have it follow them to the crater. The player then has to raise and lower the wand to enter the area of the crater and swipe away to tell the robot to build a dome. Once there are multiple domes, the player can do similar actions to build tubes between each dome allowing small spaceships to fly between the different domes.

  • Created an algorithm to randomly generate a level.
  • Added programmed animations.
  • Developed a simple AI that would fly ships between the connected domes.
Bakery Bash

Bakery Bash is a game designed to teach students fractions by measuring ingredients for recipes. It can support up to three players and allows teachers to add new recipes through an XML file. It was created in Unity and uses SMALLab's SDK.

  • Helped create a system for picking up and moving objects.
  • Created a system for objects interacting with each other.
  • Made a recipe system that breaks all measurements down into milliliters for easy scalability.

Hypixel http://Hypixel.net

Webmaster July 2014 - Janruary 2015

Hypixel is one of the largest server networks for Minecraft. It consists of a large variety of custom game modifications created by the Hypixel team. The network can support up to 17,000 players in a single universe.

  • Interfaced the web site with the server.
  • Created online leaderboards based on player data.
  • Redesigned web site to create a cleaner and more modern look.

48Tools.com http://48Tools.com

  July 2014 - November 2014

48 Tools is a suite of web applications designed to expand upon the Infusionsoft marketing platform.

  • Engineered an ASP.Net web site that allows libraries to be added, removed, and upated without restarting the site.
  • Helped refactor and encapsulate old code into libraries for the new site.

Curse, Inc. http://Curse.com

Senior .NET Web Developer March 2013 - June 2014

Curse is one of the largest video game information properties worldwide, attracting more than 30 million unique visitors a month. It is comprised of community sites, tools, databases, videos, guides, live streaming, and eSports teams. Although I found the challenges of developing for large scale traffic enjoyable, overall I did not find the position challenging enough.

  • Used C# 5.0 to help create a web site framework that allowed users to share video game modifications with each other.
  • Helped make an online store where users can spend points and be e-mailed gift certificates.
  • Created a pastebin for users to share code with each other. Used Google Prettify to style it.
  • Overhauled a contest system and made it so anonymous users can enter.
  • Created a web page that would upload a large file in many small chunks instead of one large upload.

Permilia, Inc.

Full Stack .NET Web Developer October 2010 - November 2012

Permilia specialized in web sites dedicated to a single product and was often used by infomercials. The primary focus was to take orders and then send the data to fulfillment houses. They would also handle setting up the monthly payments. Permilia was eventually acquired by another company and because I was a remote employee, I was let go.

  • Helped design and create a C# 3.5 framework for web sites to use that was easy to adapt to each individual site's unique needs. The framework took advantage of LINQ for accessing the database and also used C# generics and Reflection.
  • Converted old ASP.NET web sites to Microsoft's ASP.NET MVC 2 Framework. This increased performance and made the web sites easier to maintain for both the developers and designers.
  • Used Prototype to create an Ajax shopping cart that allowed an online store to add and remove items without reloading the web page.
  • Created a product catalog with Prototype that used Ajax to go through a list of products without having to reload the web page.
  • Wrote software in C# 3.5 that sends the order information in the database to third party API's for fulfillment.
  • Created and maintained SQL scripts that sent reports to clients and data to fulfillment houses.
  • Maintained a database and two web servers running Windows Server 2008, Internet Information Services, and Microsoft SQL.
  • Managed 13 servers using Amazon Web Services.

Telifi, Inc.

Software Engineer April 2008 - August 2010

Telifi was a service that handled ordering products both online and by phone. They would then take the orders and send them to payment services and fulfillment houses. During a period of restructuring I was transferred to Telifi's sister company, Permilia.

  • Created a debug utility in C# 2.0 that sits between method calls and allows a debugger to see what data is being passed to the arguments of each method as well as the return value of the method. It also allows the debugger to edit the argument and return values as the software is running. This allowed debuggers to quickly and easily test software.
  • Created an error handling utility in C# 2.0 that used Reflection to log data being sent to all the methods in an application and sends this data to a central server when an error occurs. This allowed developers to quickly analyze and fix problems.
  • Created an application in Visual Basic 2005 for handling telephone orders in call centers. The application would provide the operator with a script that would change based on what input the caller provided. The application would also send the data to external web services.
  • Optimized and improved older software by rewriting old Visual Basic 2005 applications in C# 2.0.

Sideout Media, Inc. / Discount Direct, Inc.

Developer 2006 - April 2008

Discount Direct, Inc. (which later became Sideout Media, Inc.) gathered data from various housing websites and consolidated it into a central location to help visitors find a home at a good price. I was let go when the company went out of business.

  • Developed and maintained automated scripts that would gather data from web sites and other sources.
  • Parsed data to make sure it's valid and there's no duplicate information.

PoochieNet

Webmaster October 2001 - 2006

PoochieNet created and hosted web sites for small businesses in New York. They also built computers and did tech support on the side.

  • Maintained LAMP (Linux, Apache, MySQL, Perl) stack.
  • Created a framework to help develop web sites quickly in Perl.
  • Designed and developed web sites, including:
    • A site for a restaurant that allowed the owner to easily maintain the menu.
    • A site that allowed visitors to share cooking recipes with each other.

Other Freelance Work

  November 1997 - Present

I started out just doing web sites for myself, but it quickly turned into a career as the growth of the Internet increased in the late 90's and early 2000's.

  • Created back-end Perl scripts for web sites:
    • Contact Form
    • Application Form
    • Guestbook
    • Message Board
  • Designed basic content management systems for web site owners.
  • Made a system for companies to manage products and services.

Other Projects

Pixel: ru² http://Pixel.Game

  September 2010 - Present

Pixel is a fast paced 2D puzzle-platformer-shooter that was created in C#. The gameplay revolves around color and gravity manipulation.

  • Designed a level editor that featured a drag and drop logic system to allow users to come up with complex levels. It also has the ability to publish levels online to Steam Workshop.
  • Engineered anti-cheat systems for onlne leaderboards such as variables that continously check if they've been edited in the memory by a third party tool.
  • Organized promotional booth at several industry events, including nine times at PAX.

Train Engine

  September 2010 - Present

The Train Engine is a modular game engine written in C++/CLI and C/C++. It is designed to be scalable by allowing users to use only the modules they need for various components of a game engine. New modules can easily be created and added to the existing module selections.

  • Engineered framework allowing modules to be interchangable.
  • Created native C/C++ libraries for lower level operations.
  • Added support for stereoscopic 3D devices like the Oculus Rift and HTC Vive.

LEDL Project http://LEDL.io

  January 2015 - Present

LEDL (Light Emitting Diode Library) is a .NET library for controlling computer peripherals that contain RGB LED lights. The idea behind the project is that there are a lot of different devices and SDK's out there, but not a unified one for everything. This library is designed to fill that need.

  • Developed an effects library that allows developers to easily do fancy effects.
  • Reverse engineered the USB data for certain devices.
  • Designed a priority system that allows developers to prioritize different colors for certain lights.

qUIrKY

  February 2014 - Present

Quirky (written as qUIrKY) is a program that takes uses an XML file and a list of product keys to generates graphics for product key cards. The XML file contains the layout information such as where images go, what text should be on it, etc... The product keys can be a TXT file or a CSV file that contains other variables. Another feature is being able to generate a QR code for each key, handy for mobile products.

  • Created a recursive algorithm that will take data from an XML file and turn it into images.
  • Added QR Code support so users can also have those on their cards.

Ludum Dare http://LudumDare.com

Ludum Dare is a 72-hour game jam in which a team of any size has to complete a game within 72 hours. Those that enter the event act as judges and rate and review other people's submissions.

Make Sure You Don't Hurt Nobody April 2015

The theme for Ludum Dare #32 was "an unconventional weapon." We created a game where the player is immortal and has the ability to heal enemies. The player must keep the enemies alive while they hurt each other from friendly fire as they attack the player.

  • Created an algorithm that procedurally generated a city.
  • Added a leaderboard so players could compare results.
  • Designed a clean user interface.
Jingle Calls December 2014

  • Created complete dialog tree framework that revolved around lambda expressions.
  • Added basic desktop applications for the player to use, such as a functional notepad that contained the game's instructions.
Quilted Realms August 2014

The theme for Ludum Dare #30 was "connected worlds." We created a browser based game that created a small 2D world where a player can gather resources and build. They can then export the world as a QR code to allow other players to scan that world into their own connecting the two. This can continue on for a maximum of 64 worlds in total, after that the QR code will become too complex to scan correctly.

  • Helped organize a team for the event which included gathering people together and finding a place that would host us for 72 hours.
  • Created a simple 2D game engine in Javascript.
  • Researched QR code scanning limitations on various devices.
  • Designed an interface that would work with a keyboard as well as touch screens.
I.C.E.: Beneath the Cloud April 2014

The theme for Ludum Dare #29 was "beneath the surface." We decided to do a spy game where players would have to impersonate guards in order to navigate a base and move onto the next level. Levels were randomly generated and the game would go on until the player is caught. Although the idea seemed popular, we ran into issues with certain tools due to lack of experience and we didn't get the game finished by the deadline.

  • Helped organize a team for the event which included gathering people together and finding a place that would host us for 72 hours.
  • Took part in designing the game play, story, and mechanics of the game.
  • Programmed level generator and pathfinding in Unity with C#.

Genet

  September 2010 - Present

Genet is a web framework written in Perl that is designed for web site networks with many fronts but a single core. It supports typical community web site functions such as user base, blog, and forum.

  • Designed a template system allowing each site to have its own unique look while still keeping the same core functionality.
  • Engineered a Perl module collection inspired by LINQ to manage the database.

PC Gaming is Dead http://PCGamingIsDead.com

Co-Host November 2010 - Present

PC Gaming is Dead was a podcast about PC gaming and why it is not dead. The blog and podcast are currently on hold as we invest our free time into Pixel.

  • Helped gather news for the podcast.
  • Created widgets for the web site.

Megathron.com http://Megathron.com

  March 2008 – August 2008

Megathron was meant to be a social network for EVE Online. It allowed users to add all of their in game characters under one account and easily swap between them for networking. Users were able to have a blog and form groups based on in-game areas or common interests. The site integrated with the EVE API and was designed to work with the old in-game browser which only supported a primitive version of HTML. Megathron never took off and new services like EVE Gate have made it less useful today.

  • Designed a web site that worked within the EVE Online in-game browser.
  • Integrated the web site the EVE Online API to verify that users controlled certain characters in-game.

Link and Friends http://LinkAndFriends.com

  December 2003 – June 2009

Link and Friends was an old sprite based web comic that started out as a regular web site and evolved into a flash web site where users could create their own sprite comics with either the pre-made sprites or sprites they created themselves. They were able to upload and share these comics with other users to rate and review. The web site also featured a gamified navigation system where you could play a 2D platformer to navigate the web site if you desired.

  • Engineered a comic studio that allowed visitors to create their own sprite comics as well as sprites and palettes for them.
  • Had Flash call Perl scripts to allow users to share comics with each other, rate and review comics, and talk to each other in a forum and chat room.
  • Created a 2D platformer that could be used as the navigation system if desired.

Poochie's Adventure

  August 2002 – August 2005

Poochie's Adventure was a series of Flash games that were primarily written in ActionScript. The first two were created in Flash 5 and the third was Flash 6.

  • Created 2D platformer game engine in ActionScript.
  • Included dynamic audio that would pan to the left and right depending on the location of an entity on screen.
  • Used filters in Flash 6 to create in game effects.
  • Created an online leaderboard in PHP.

NannyMUD http://en.wikipedia.org/wiki/NannyMUD

  October 1999 – November 2004

NannyMUD was a MUD that was started in 1990 and is considered one of the longest running online games. Through playing NannyMUD I was able to become a content developer for it where I would program in LPC (an object-oriented programming language derived from C). Optimization and memory management were both very important for developing content for NannyMUD.

  • Created and managed two areas within the game. One area used procedural generation as a way of creating a frozen wasteland to explore.
  • Used advanced features in the LPC language to create four clubs based around competitive mini-games within the MUD. These clubs would encourage exploration among other content creator's areas.
  • Added to the main library of the game for content creators to use for their own creations.
  • Mentored other content creators in programming and content creation within the game.

Silicon Valley Garage #7793

  1998 - April 2001

The Silicon Valley Garage #7793 was a web site that I initially created for myself. It was a simple web site that focused on acting as a reference for anyone interested in creating web sites. It contained reference lists for HTML tags, CSS properties, color codes, character entity references, and other information that developers would want to quickly look up. The site was started on GeoCities (which is where the name comes from), but was quickly moved to its own domain name until it was hijacked.

  • Gathered useful resources and information from other locations on the Internet and aggregated it into a central location.
  • Created code in Perl and JavaScript for other developers to use with their web sites.
  • Designed a color mixer to help visitors understand hexadecimal color codes.

TFotA

  November 1997 - June 2003

An online role playing game built around the America Online chat room service using features from it such as being able to roll dice. The web site for it was written in Perl and had the following features:

  • A flat file database that stored details about members such as their class, level, and experience.
  • A threaded message board system that allowed members to discuss topics with each other.
  • A bank system that allowed members to transfer in-game currency to each other.
  • An in-game shop that allowed members to purchase upgrades.
  • An automated lottery and gambling system that would let members risk their in-game currency in an attempt to gain more. This often acted as a money-sink for the in-game economy.
  • The ability to parse data from chat room text to help moderators verify logs.
  • Custom web site themes that would change throughout the year and allow visitors to select their own as well. This was before CSS was common in web browsers and required back-end Perl programming to modify the HTML for each visitor.

Other Projects

Presentations

Educational Games Done Right http://YouTube.com/watch?v=N7wY2IncLEo

Southern Interactive Entertainment & Game Expo 2016 October 9, 2016

My partner and I did a presentation at SIEGE 2016 (a trade show for video game professionals in the southeast) about how to educate someone through a video game without it being overly heavy handed. There was a good amount of audience participation resulting in an in-depth discussion panel.

Intro to Video Game Development

Huntsville Public Library October 25, 2014

I did a presentation with my partner about getting started in video game development at the Huntsville Public Library. We covered topics from programming libraries and frameworks to other tools like 3D modeling software. We also talked about marketing a video game and promoting it at conventions.

IGDA Huntsville - Meet the Independents http://YouTube.com/watch?v=l8BymOyG0vA&t=84m5s

University of Alabama in Huntsville June 19, 2014

The Huntsville chapter of the International Game Developers Association had an event at the University of Alabama in Huntsville about the history of game development in Huntsville, AL and the current independent game studios. My partner and I did a presentation during it talking about our game Pixel: ru² and some of the technologies we used to create it.

How to Make Your Own Video Game http://YouTube.com/watch?v=x_LADNc5L7g

HamaCon June 6, 2014

At a regional convention my partner and I did a talk about tools people can use to develop their own video games. We asked people form the audience to tell us their game ideas and we did our best to point them in the right direction.

Engineering a Game Engine

ChargerCon at the University of Alabama in Huntsville October 27, 2012

This was the first panel I've done at a convention. We educated a room of programmers and engineers about the core programming concepts of creating a video game engine and how to optimize them. It ended up being the most popular panel at the convention.

Associations

International Game Developers Association - Huntsville Chapter http://IGDAHuntsville.org

Lifetime Member / Board Member May 2014 - Present

International Game Developers Association is the professional association for over 12,000 video and computer game developers worldwide.

Toastmasters - Research Park (Huntsville) Chapter http://RPTM.info

Member June 2019 - June 2020

Toastmasters International is an organization for the purpose of promoting communication, public speaking and leadership.

Makers Local 256 http://256.MakersLocal.org

Member July 2013 - September 2014

Makers Local 256 is a non-profit hackerspace in Huntsville, AL that is open to the public. I have been visiting their workshop since 2012 and became an official member in July of 2013.

Want to see a neat CSS trick?
Print this resume and compare the links with the ones on screen.