Alan Abram - Job Title: Programmer - Works In: Games
9 years ago

What is your current job role? Can you describe it in a few sentences?

My current role involves me analysing code for its performance characteristics, memory footprint and how scalable it will be across a variety of platforms and looking at methods to improve each of these.

What do you enjoy most about your job?

The best thing about my job is working with groups of like-minded and incredibly talented people working towards the common goal of creating something amazing. My job is always keeping me on my toes and learning new things.

What are the most important skills and attributes for a person in your job?

The most important things I would say for someone in my job is to be extremely analytical, you’ll be given many problems that require a lot of thought and will make you develop interesting solutions. It’s also a must that a person should understand how different platforms operate differently to each other, and how one piece of code can run fast on one and slow on another.

What are the top three things that you suggest anyone wanting to do your job learns?

I would suggest that anyone wanting to do this job would learn a variety of programming languages and have a solid foundation in C/C++. I would suggest that they have a working understanding of a basic graphics engine written by themselves. Finally, the games industry is a rapidly evolving industry and as such the person should never stop learning and always keep experimenting.

Alan has worked in the games industry for over 5 years on a variety of products across numerous platforms ranging from small titles to AAA titles. He’s performed many roles, including acting as a lead.

What inspired you to get into the games industry?

I’ve always enjoyed programming ever since an early age, but what made me move over towards the games industry was that fact that when a game is released it’s released for a specific piece of hardware which has been predetermined. The normal adage of “just get a better machine” doesn’t apply here, so the products have to be more tightly created to push these machines to their limits; working inside tight constraints to make the best product possible that is what inspired me to get into games.

Did you pursue this career through any educational routes?

I studied a Computer Games Programming degree, during that time I took the classes which helped develop my understanding of how different platforms worked.

What kind of private study did you undertake in addition to any educational programs?

I’ve spent a lot of time reading over many different subjects relating to the games industry. One of the best methods I’ve found of really absorbing information is to try it out for yourself! As such I’ve written a number of games which use my very simple game engine. I’ve written other nongame programs which have helped my understanding of different algorithms and techniques.

How did you start in the industry – what was your first job and how did you get it?

My first job in the industry was during my placement year of university. I managed to secure the role by talking to local games developers who had requirements for new staff members.

What was the biggest thing you immediately had to learn in your first role?

The biggest thing I had to learn straight away was how to interact within a larger team with people of other disciplines. It’s completely different to how you interact with peers during education as you won’t have the same knowledge of the same subjects and you need to work closer to create a combined understanding of the tasks at hand and the best ways of developing solutions.

Do you have any skills that make you stand out amongst your peers?

I think what made me stand out against my peers at university was my attention to detail regarding the more technical aspects of development. I’d pay attention to how well code would perform and how to make it better, instead of going for the first solution which worked.

How did you progress in your career – where there any skills that you had to learn to support your progress?

How did you progress in your career – where there any skills that you had to learn to support your progress?

I progressed through my career by frequently trying new things and assuming more responsibility where it was available, even when it meant leaving my ‘comfort zone’. One of the skills which I had to learn which isn’t inherently taught, is how to work with other code and having to gain the bigger picture based on the specific sections you’re working on.

In retrospect, was there anything you would have done differently to get into the industry?

In retrospect, was there anything you would have done differently to get into the industry?

All in all, I think my entry to the industry was a fairly decent one. If I were to do it again I would probably go through a more mathematical route as I feel it’s one of my weakest areas which I have had to spend the most time bringing up to speed.

What are the top three things that you suggest anyone wanting to get into the industry learns?

I would suggest that anyone looking to get into the industry should:

• Gain an overview of the processes involved in creating a game and how different functions interact with each other.

• Spend time keeping up with the latest developments in the industry

• Spend time developing their skills outside of academia

Related Case Studies