It takes a great number of individuals working together in various disciplines to make any commercial enterprise function.
The mobile games industry is certainly no exception, offering dynamic and diverse roles to thousands the world over.
As such, PocketGamer.biz has decided to celebrate this with a regular series of interviews where each week we chat to a mobile games industry professional from a different field - be it game design, art, or PR - to learn about how they bagged that job in games.
Obviously every career path is different, but the goal is to give a picture of the sorts of skills, qualifications and ambition one might need to find themselves in such a role - and how we can all learn from it.
This time, the spotlight is on Aras Pranckevičius, Graphics Programmer at leading 3D engine and tools firm Unity Technologies.
PocketGamer.biz: Tell us a little about your current role and what it entails.
Aras Pranckevičius: I'm a graphics programmer at Unity Technologies, which means I work on the graphics engine that powers all Unity-made games.
The actual job varies between something like a Technical Director, where I try to come up with plans, roadmaps, engine architecture and advise other people or teams on graphics related things, and a Code Monkey where I just type in a lot of code on the keyboard.
It's probably 50/50 split right now between talking, planning, code reviews and just programming.
How did you first get into this job?
I was hired into Unity about 11 years ago. I think they hired me because I did some graphics tech demos, had a website and a blog, and was active on some game technology mailing lists.
I joined back when Unity was just a handful of people, and at that size everyone does everything.Aras Pranckevičius
'Blogs' and 'mailing lists' are things that used to exist 11 years ago!
This was back when the company was just a handful of people, and at that size everyone does everything.
So while my main starting tasks were "programming graphics" and "everything related to Windows", I also did things like checking whether the website works on Internet Explorer 6 and fixing it if it does not.
As the company grew, I started specialising more into graphics-only areas.
I tried being a graphics team lead, but both times did not like it at all and instead became sort of a mix between a programmer and technical advisor.
The latter just means answering bazillions of questions on Slack.
Is it something you ever imagined yourself doing?
Kind of! Ever since I got my first computer I wanted to do some programming related to computer graphics.
So here I am. I certainly did not imagine working on graphics technology that ends up being in a billion devices out there.
Imagining a thousand or a million is possible, but billion is just too large of a number.
What did you study (if anything) to get your role? What courses would you advise for aspiring professionals in the area?
I did study computer science at university, though I don't think it was very useful or influential, actually. Perhaps my university was just not very good.
It was definitely useful for learning some math, but almost everything relating to programming or computer graphics I somehow learned myself from books, the internet, etc.
Practical experience is way, way more important than formal education.Aras Pranckevičius
Instead of taking some courses, I would advise trying to do something with a group of friends. Make a game, or a technical demo, or write an engine, or do whatever you want to do.
Then make another one, and another. Learn everything that is needed to get there.
And then, once you notice any particular gaps in your knowledge that are hard to "just learn", start looking for courses and similar formal programs that might fill in these gaps.
Is there anything about the job/industry you wish you would have known when first joining?
I did not know how little formal education matters (at least in places that I've seen).
Practical experience and having something to show (can be anything really; it does not have to knock anyone's socks off) is way, way more important.
What other advice do you have for someone looking for a job in this profession?
If you're interested in computer graphics programming, just start doing it.
Read some books, read some material on the internet, write some code.