Mark McCorkle

Mark McCorkle

Who is This Guy?

This is the story of how a piano playing farm boy from south Georgia ended up building 3D experience prototypes and games in Unity in 2020.

đź’ Somewhere in the 1980s...

Somewhere in the 80s, my farming family of five was gifted an old upright piano along with one free tuning. I was so entranced by the internal hardware and process of tuning every string that I watched the tuner work for almost 2 hrs, and for a very young boy in the middle of a South Georgia summer, sitting still for that long was not the norm.

Weeks later, I heard a family friend play the refrain from FĂĽr Elise on that same piano and I was later able to pick it out and play back an approximation of it by ear. The family friend was impressed and recommended to my family that I focus on musical pursuits, but Georgia farm boys didn't dream of going to Julliard. But that experience did give me a very sure feeling that creating something which could evoke strong feelings like music was what I was going to do with my life.

đź’ Fast forward 5 years to the mid 80s...

Fast forward 5 years or so and I've been playing piano and tinkered with various other musical instruments, only to have another incredibly entrancing and complex device show up to my family's farmhouse. Through many former peers, my grandfather whom had retired from IBM had gotten all of the parts together to build multiple PCjr computers. After I had helped him assemble one of the computers, we took the remaining parts and assembled a second one that would go home with me and my family. One of those "extra" parts which made it into my family's first computer was a 300 baud modem. And after reading through all the manuals to figure out which floppy had the right software to use to dial anything with it — I immediately attempted to dial a long distance number to the first university BBS which I could find. My first long distance call lasted almost two hours and would show up about a month later on my parents phone bill and I had to learn that I couldn't do that ever again. I simply didn't know how to express it clearly at the time, but I knew that this thing where one computer calls another computer over the phone was going to be a big deal if only we could figure out how to not get charged long distance for all those calls all the time.

đź’ Now, lets jump to 1997...

Now, lets jump to 1997 where I am starting a family a little younger than I had planned for and I needed a job without having had the chance to get much of a college education. Thankfully the mass wave of consumer internet access had finally hit the south and I had continued to tinker with PCs hardware and learned enough Basic and Pascal to think of myself as a geek.

I landed my first job answering tech support calls and literally blind fixing all types of problems for regular dial up users because even if remote desktop had been common, dial up internet was too slow for it, and most of my calls were people who couldn't even get onto the internet at all. So imagine me looking at a blank screen and asking users with Windows 95 or 98 to open up their control panel and tell me what they see.

I got so good at it that I could make most of my customers happy with my eyes closed — until a random day in 1998, where by a fluke with our phone system, I was given the call for one of my company's corporate clients. Up to this point, only the cofounder of the business supported the corporate clients because most of the rest of us were college age geeks who didn't have enough telecom and global internet experience to support the more advanced customer needs.

The particular client on my line had a T1 line, a Linux server, and an office work group, where no new orders had come in for almost 48 hours and he had realized that no one at his entire company could get or send their email. After quietly asking a lot of questions around the office and doing many Altavista searches (as Google and stack overflow hadn't been invented yet), I was able to solve the customer's problem and get their server back online — and that became my new job on the spot. I was sent home with a Mandrake Linux CD to install on my very old personal 386. I have used Linux in one form or another every day since.

đź’ Now we can fast forward all the way to 2006...

Now we can fast forward all the way to 2006 and I am working at a company where our goal was to build an image merge and photo-printing on-demand service for the internet. The result was like Instagram with custom backgrounds meets an online Polaroid camera with overnight shipping. Once we had completed the technology for that project, I discovered that the same tech I was using to build the front end for that photo-merge (Adobe's AS3 language) was also being used to build multiplayer online games with Flash.

After a quick proof of concept and some research into the most basics financial opportunity numbers, I was able to convince a former Disney animator turned locally famous ad illustrator to start a new company with me so that we could make online games for our kids whom were both on the cusp of being tweens. Our goal was to give them a safe place to interact online with other kids their age. We expanded the idea to allow the players to be able to create their own homes, configure the environment around their homes, mix and match dozens of parts of their outfits, apply a constantly evolving set of dance moves, and eventually even to make their own basic experiences for other kids to play. We had a lot of fun and built some cool tech for the time, but we were not able to reach profitability before we ran out of runway, and were not able to raise a second friends-and-family round so that ended my first dive into the gaming industry.

What I did get from that experience is that I loved working in media, and I was very passionate about working on the big picture architecture and bringing all the pieces together. I also saw many of the workflow limitations on the tools we had available. I decided to take the next 5 or so years honing my skills around media and the business tooling around it, but being gun shy from my first startup, I chose to stay with safer media jobs such as working in ad-tech, exploring audio and video encoding and enhancing, as well as building teams of people, defining business processes, and learning about lean business and agile software development.

đź’ Now this brings us to early August of 2012

Now this brings us to early August of 2012. I was practically fresh off the boat into New York City and a friend whom happened to be working at Kickstarter at the time had forwarded me a link to the Oculus VR campaign. I obviously wouldn't know the kind of impact it would make then, but I put my money down immediately. I was completely confident in that product changing the world based on both John Carmack's recommendation and my knowledge of how interactive media experiences had been evolving . I had previously tinkered with with the Myo, Leap Motion and the Kinect controllers, and I knew that gesture controls would be key to the future of better computer/user interfaces, but once I saw the possibility of also using head and body tracking along with the user's two primary senses being plugged strait into the user experience — I knew that this was going to be just as big as that 300 baud modem I had back in the 80s.

As a side note, I was so excited about VR and the future of that whole industry at the time that I burned a deep impression into my high school aged son's psych. Since then, he was able to attend Fullsale's fledgling Simviz program and to graduate with both game dev and VR skills and he now makes VR training simulators for some part of the military which he is not allowed to tell me about.

Over the past few years I have been active in multiple game dev meetups and groups, and have had many awesome conversations with the wants and needs of indie game developers around New York City. I also been running multiple online persistent game universes with various configurations and optimizations on my own servers to study how real world uses behaviors affects game performance, modding in my own content and experiences when I had the time. I have even gone so far as to pitch an e-sports total conversion for a survival sandbox game which won me a job offer from the company I had pitched to, but their requirement that I move to Prague and take less than 1/4th of my current salary wasn't going to cut it while my son was in college.

đź’ So that finally brings us up to the last 11 months...

So that finally brings us up to the last 11 months where I've put a much large amount of my time into learning C# and Unity while doing some consulting to pay the bills. I've built almost two dozen proof of concepts to help me learn the ins and outs of the Unity 2018, 2019, and 2020 tech stacks. I still have a ton of things to learn, and I would very much like to focus in on specific parts of the tech stack which are directly connected to my passion, but I am ready to get started building tools and processes to take ideas all the way through development, to a tested and shipped product, and to then bring back the measurements and feedback to inform that next great ideas for online games and real time 3D apps.

🎛️Skill Matrix

đź—Ł
Each skill below is rated 1-5, with 1 being I have used it once, and a 5 being that I am confident in planning with it, using it, and teaching it to someone else. Any skill rating with a + (plus sign) following it is a skill or tool I am actively using and that I would like to continue to use it in my career going forward.

Tech only

Unity 2018. 2019, 2020 2+ Jetbrains Rider 2+ VSCode 2 Visual Studio 2 Linux 5+ Git/Github 5 Plastic SCM 2+ Unity Cloud Build / Collaborate 4 Cloud (AWS) architecture for compute, storage, db, and orchestration 5+ Docker 4 Virtual Machines (vmware, virtualbox, hyper-v) 5+ Serverless (Lambda) 5+ Datacenter power ping and cooling 5 Physical server assembly, operating system, configuration, tuning, operations 5 Python 5+ C# 2 Javascript 4 Html/CSS 4 PostgreSQL 5 MySQL 5 Redis 4 MongoDB 4 Hadoop (big data) 5 Full stack WEB (html, javascript, REST APIs) 4 API Service Integrations 5+ Media Encoding (HLS, MPG, AAC, MP4) 5+

Process and Business

Fund Raising 3 SaaS Sales 2 SaaS Customer Success 3 Lean Business 4+ Agile Software Development 4+ Scrum Master 3+ Software Peer Reviews 5 Continuous Integration, Continuous Deployment 5+ Feature Branch/Feature Flag/AB Testing 5+ Business continuity and disaster recovery 5 Unity Unit testing (playmode and edit mode) 3+ Human QA 3+ Automated Integration Testing 5+ Customer support and issue resolution 5+

Cloud And Operations

Monitoring and 24/7 operations 5+ Global, Multi-cloud, multi-service deployments 5+ LiveOPS with per user tuning 3+ User behavior analytics 3+ Cloud saves (serializing to json + a backend) 3 Persistent Processes (sharding, monitoring, load balance) 3+ Integration with federated login 2+ Integration with APIs 4+

Misc

FLStudio (music production, mixing, mastering) 4+ Piano 4+ Music composition 3+ Drums 3+ Guitar 2+ Audiacity (audio editing) 4+ GIMP (the open source photoshop) 3+ Blender 2 UI/UX Wireframes, Mockups, and Research 3+ OBS/Streaming 4 Asset importing, optimizing, compiling 3+