If you know me, you know that I love game development, and I quite like that I’ve built the reputation as being “that GameDev guy” in the company. GameDev isn’t the only thing that defines me; in the last few years, I’ve tried my hand at a handful of hobbies and retrospectively realised it had had quite an impact on my career. From GameDev to Rock-Climbing to Sim Racing and Gaming. I’ve invested a substantial amount of time into each, and they’ve all taught me something.
A Career Path was Chosen
GameDev is a hobby that started up mostly because my significantly younger self, about eight years old, saw a game made by my cousin, who’s almost ten years my senior. It was liberating knowing that a “normal” human being can make games, and I decided that I want to do that for a living.
I was lazy as a teenager, and I believed I did not have enough resources to pursue the hobby early in life. It was only later in high school that I picked up tinkering with some code. I continued to study computer science and even had the opportunity to make a game as our project for a module in my final year. I graduated and ended up at Entelect, with me now working at Entelect for more than six years.
Many people have different stories of how they picked their profession, but I can pinpoint mine to a passion and hobby that has come with me for decades.
Taking the Stage
I didn’t realise I had a passion for public speaking, but it was ultimately an urge to share my love for a hobby that got landed me on the DevDay 2016 stage as my first public speaking gig. I remember excitedly submitting a talk on the topic of Game Jams and then realising that I’d have to get up on stage in front of 200+ of my peers if it gets accepted.
I think it was a massive success as a first go, and I’ve had many subsequent opportunities to present on other topics I’m passionate about, from irrigation in agriculture to a dojo on some advanced concepts in .NET. The lucky benefit was that my passion for a hobby outweighed my fear of public speaking just enough to dip my toes and get hooked on the experience. Heck, here I am at it again, putting together another talk less than a week after my last presentation at Entelect.
Unique Technical Challenges
Let me make one thing clear. Game development and specifically game programming is nothing like building enterprise applications. There’s an element of “embrace the jank” present that allows developers to make some concessions in the game’s architecture. Looking at problems from the perspective of game development architecture has been very valuable to me. The approach has given me a different perspective on some of the issues I face daily.
In 2017 I worked on an investment app that would handle micro-investments daily—the main idea being helping people save. Some brilliant software engineers built the initial implementation of this investment and payment system. As the popularity of this application grew, we started experiencing scaling issues and were layering a few hacky solutions to remedy the problems.
During this time, I learned about a little thing called “Data-Oriented Design”. Its primary focus is understanding how your application data is structured and transformed and builds processes that fit these structures and transformations instead of creating complex abstractions. It allowed for a different perspective, and we unearthed some extra domain knowledge once we applied it to our payment and investment process. Don’t get me wrong; this wasn’t all me. It was just the ability to bring a different perspective to my team that stimulated a deeper discussion.
Grit & Perseverance
I’ve focused more on my GameDev hobby until now, but it’s because it’s one of the biggest passions in my life. I want to pivot to how some of my more recent hobbies have contributed: sim-racing and rock-climbing. I’m not as avid a rock-climber during the pandemic, but it has taught me a lot in the area of perseverance.
Climbing is a game of patience and precision: it takes spending a bit of time figuring out how to contort your body best and leverage yourself into a position to complete a complex move. It can be frustrating if you’re not strong enough or struggling to hold a specific position, but often persevering and training your body is what yields results.
The same applies to my sim-racing. There’s a certain finesse required in finishing a race. Anything can happen during a race, and it’s important not to let incidents on track get the better of you. If you’re trying to improve lap times, you have to do the work and dig into where you are losing time by looking at replays of a lap and comparing it to a replay of other drivers' quick laps.
Seeing my perseverance in these hobbies has made me adopt them to my approach to work. There are different elements in each:
- Brute-force training my body to be stronger
- Patiently practising climbing moves and trying to “break down a problem.”
- Not throwing in the towel when I feel like losing all hope after a crash; keeping my head down and pushing to finish a race.
The key lies in looking at my work the same way and finding ways to keep at it. It’s not always easy, and “progress” can be pretty muddy, but it’s helpful knowing the approach works and motivates me to keep going.
A different perspective on other people
My last takeaway is how GameDev specifically changed my perspective on people. I used to believe that these “programmer gods” made games and that it’s the only way to get into game development. It confused me at varsity when people told me they weren’t studying computer science to make games. The shock was even more significant when I started working and discovered how few people want to make games.
I also learned that game development also consisted of so much more than just programming. Consisting of concept artists, sound effects artists, music artists, level designers, game designers, engine programmers, and gameplay programmers, to name a few of the significant disciplines I know. It has made me realise how a diverse team of people with different strengths has to work together to create a game; the same is true of our profession.
If I have an elitist view that being a “L337 H4x0r programmaaar” is the key to success, I won’t have a high opinion of my colleagues. It has been crucial in my career to see the designers, business analysts and project owners as my peers. We are all working to build great products, and we need to rely on one another’s strengths to succeed.
People often get caught up trying to turn a hobby into a side-hustle. I still dream of being a game developer, but I’ve found it necessary not to get caught up in all that nonsense. I have found that hobbies add value to other aspects of my life, but more importantly, there are lessons learned by practising a hobby that can add value to your career. We are all unique individuals and what we do in our free time contributes mainly to how we define ourselves.
Skills development is essential in our careers, but there’s only so much time I can spend before skills development isn’t “fun” anymore. Find a hobby you enjoy and continue enjoying it. Pay attention to how it shapes you, and maybe you can find it adds something valuable to your career.