Introduce yourself! Who are you? Where do you work?
My name is Anna Tito I am a Technical Project Lead, Games Engineer and all round Technomage at Hipster Whale in Melbourne, Australia. I have worked on a wide range of mobile tiles, both here and in the U.S.A, including KIXEYE's VEGA Conflict, Gameloft's Ice Age Village, EA's Star Wars: Galaxy of Heroes and The Simpsons: Tapped Out. I have been a a 30 under 30 regular listed in both Develop Magazine's and Forbes 30 Under 30 list for games (2014 and 2015 respectively). I was nominated for the GDC Women in Games Rising Star in 2013 and 2014 and was a finalist for the 2018 MVC Pacific Women in Games Awards, Creative Impact category.
Who or what got you into game programming?
I was always intrigued by the digital landscape and interactivity. When I was in high school I picked up a couple of programming courses in my last semester, I really enjoyed exploring the potential of what code could do. I was discouraged from continuing programming in university by a number of people, both at the university and in my personal life, so I abandoned that plan. When my life exploded in my early 20’s I came back to it. I had been doing very basic old school style website support to support myself through my university studies and wanted to take it further. I found that I enjoyed the challenge of developing usable interactive experiences but I wanted to do more with it. Games felt like a natural evolution in that line of thinking. I enjoyed playing games, but I always felt they fell short of exploring the deeper sides to the human experience. I wanted to explore rich and meaningful narratives as well as look at the potential for games to explore what and who we are as human beings.
You’ve worked in large gaming studios and small, how do they compare? What should people consider when looking at game developer roles?
They are both very different environments and both pluses and minuses. In larger studios you generally have less overall autonomy, but you get to specialise. This means you are able to become an expert in a particular technology or or area of the game, which many people really enjoy. There also tends to be more structure in terms of career progression, mentoring, training etc. Bigger companies also often have teams that manage core technology, marketing, customer support etc so you tend to be fairly abstracted from those aspects of game development. In smaller companies you have to wear a lot of hats and depending on the size of the team and you may have to cover everything from engineering to marketing. This means that you tend to have a lot more autonomy, as well as the freedom to explore ideas and technology that me be new or under utilized. You also get to engage with many more aspects of games engineering things like build pipelines, gameplay, graphics, asset management, analytics, device and OS compatibility, performance optimisations, server programming/web services, tools, architecture, live service support and DevOps. Basically if it is needed for the game, someone has to do it, and with smaller teams more often than not it is you.
I’m not a game developer, but I develop other software, such as web apps or mobile apps - what’s the best way to get started with game development?
Generally the simple answer to this question is build games. In terms of how to do that, it really depends on what interests you. I started in modding (Neverwinter Nights, Neverwinter Nights 2 & Dragon Age: Origins), I find modding a useful way to start as it forces you to work within and around the constraints of the engine while still providing you with a sandbox to play within. If that doesn’t interest you, there are a number of industry standard game engines out there like Unity, Cocos2d and Unreal that are free to develop with and have a stack of free and paid online tutorials. If you are more familiar with the web space you can look at HTML5 Canvas game development, there are a stack of tutorials and plugins to help with that. You could also explore the various platforms own internal game libraries, I know Apple has a huge range of internal libraries for game development that are really interesting. If you are more interested one of the other aspects like networking, data analytics, security or server development, I would look at building tech demos that integrate with one of the above mentioned engines, it could not only be a useful piece of technology if you want to open source it, but it also proves your skill integrating with game technologies.
How do you think the gaming industry will change over the coming years, and how might that affect your role?
I am not sure we are going, though the growth in AR and location based gaming is interesting. We have hit an odd point with games where we have an incredibly high market saturation, especially in mobile. I hope that we are moving to a quality model, where those games that provide quality gameplay experiences will win out. At the moment however companies are still pushing out games that use manipulative and gambling style mechanics. I would like to see some regulation on these mechanics so that we can move away from them, especially those that have a real world monetary conversion e.g. loot boxes brought with a premium currency.
What has been your toughest lesson to learn in your software career so far?
No matter how good you are at your job as a woman in tech the fact that you are a woman will, at some point, affect your career. This can be anything from people taking credit for your work, assumed competence, mentoring feedback, career progression and reduced remuneration.
What would be your number one piece of advice for a successful game dev career?
Always keep learning, there is always new technologies new approaches. Also always remember that life outside of work is important, many games companies will crunch regularly and for prolonged periods of time. It is important to know where your boundaries are and that sometimes it is more important to walk away from a company than let them work you to death.
Have you got any hobbies outside of your job? Do you think they help your tech career in any way?
I have a lot of hobbies. I write, read, sew, crochet, felt, spin, make synthetic hair basically any fiber and textile art. It is important to have these hobbies as they are not screen based and it is important to be able to step away from the screens in our lives. Professionally my writing has allowed me to have a in depth understanding of narrative and narrative structure which helps when looking at building narrative technologies in games. In terms of my other crafts the largely contribute to my sanity, though I have not been adverse to making the occasional game character plush or amigurumi.
What books/resources would you recommend for others wanting to follow a path similar to yours?
Generally my first recommendation is don’t do what I did, I went a somewhat meandering route to where I am now.
If you are interested in the design side a good starting point is “Rules of Play”. In terms of narrative, “Hamlet on the Holodeck” is a classic that needs to be read even if you don’t agree. I am also fairly fond of the First, Second and Third Person Series (detailed below). Code can be a little more tricky. If you want to get into games engineering I recommend learning C++. If you want to go into gameplay programming I recommend exploring commonly used things like vector maths and path finding algorithms. “Game Engine Architecture” is a solid book, though the edition that I read didn’t go heavily into data systems or web based architectures that are becoming more and more important (this may change in later editions).
Rules of Play, Eric Zimmerman and Katie Salen
First Person: New Media as Story, Performance, and Game (The MIT Press)
Second Person: Role-Playing and Story in Games and Playable Media (The MIT Press)
Third Person: Authoring and Exploring Vast Narratives (The MIT Press)
Hamlet on the Holodeck, Janet H. Murray
Game Engine Architecture, by Jason Gregory
Finally, make your shoutout! What would you like the readers to go have a look at?
Feel free to follow me on twitter, @MythicalC, if you wish to keep up with what I’m doing.