🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

Game Programmer - Expectation

Started by
15 comments, last by Tom Sloper 12 years, 5 months ago
Breaking into a game industry as a game programmer basically a Junior Programmer. What industry expect ?
I have only one question that whether they mainly focus on programming knowledge and programming skills in eg C++ or they also want the strong knowledge about API's like DirectX/OpenGL etc.
Here I am asking about only Junior Game Programmer.
I they expect then on which API should I focus in game programming?
Advertisement
They will expect you to have first and foremost very strong c++ skills.
This will include knowledge of various design patterns, clear and readable code, maintainable code and strong debugging skills.
Knowing a few APIs is useful, but not crucial. What however is crucial is the ability to self educate. The ability to learn about any new API on the spot.
Knowing what you don't know is crucial here. You don't know enough about the field if you can't mention quite a list of things you don't know.

Generally you'll be working with existing code, even on new projects.
They'll expect you to educate yourself regarding this codebase and expect you to be able to adapt and program according to their standards and guidelines.
If you're asked to implement new features using an API you're entirely unfamiliar with, they expect you'll educate yourself on the subject without assistance.

Essentially: Strong c++, strong debugging, strong google-fu.

That's for the technical part.


Another thing that can't be mentioned enough: communication.
It's incredibly important to be a good communicator. This involves solid written and verbal skills.
But it also involves being able to communicate clearly with different professions.
You'll be talking to designers and artists on a very regular basis. You'll need to explain concepts in terms they can understand.
You also need to be a good listener, have the patience and be able to understand what other professions are telling you.


Another important thing is math.
You'll need to know how to work with vectors, matrices, quaternions, etc. These are absolutely essential to any game.
Math in general is quite important and any knowledge in this field will make you a better programmer.
Remco van Oosterhout, game programmer.
My posts are my own and don't reflect the opinion of my employer.

Breaking into a game industry as a game programmer basically a Junior Programmer. What industry expect ?


A CS degree and a strong portfolio.
That you live within easy daily commute distance.
That you don't smell bad, and you wear clothes, and they're clean.
Read FAQ 27 (click back out to the Breaking In forum and look in Getting Started at upper right).

-- Tom Sloper -- sloperama.com

A good folio is much, much more valuable than the degree, unless it's from a particularly excellent school.

A good folio is much, much more valuable than the degree, unless it's from a particularly excellent school.

That may have been true 15 years ago, but not today.

No degree == no job at the entry level.

There are plenty of pages in the stack with BOTH degrees and some evidence like a portfolio.

The only way a portfolio would trump the lack of degree is if the portfolio included sufficient games to put you already in the industry.



You are not competing in a vacuum. You are competing against everyone else who applied. At the entry level there are typically a lot of applicants. Most have a degree, many have a degree and portfolio.

They will expect you to have first and foremost very strong c++ skills.
This will include knowledge of various design patterns, clear and readable code, maintainable code and strong debugging skills.
Knowing a few APIs is useful, but not crucial. What however is crucial is the ability to self educate. The ability to learn about any new API on the spot.
Knowing what you don't know is crucial here. You don't know enough about the field if you can't mention quite a list of things you don't know.

Generally you'll be working with existing code, even on new projects.
They'll expect you to educate yourself regarding this codebase and expect you to be able to adapt and program according to their standards and guidelines.
If you're asked to implement new features using an API you're entirely unfamiliar with, they expect you'll educate yourself on the subject without assistance.

Essentially: Strong c++, strong debugging, strong google-fu.

That's for the technical part.


Another thing that can't be mentioned enough: communication.
It's incredibly important to be a good communicator. This involves solid written and verbal skills.
But it also involves being able to communicate clearly with different professions.
You'll be talking to designers and artists on a very regular basis. You'll need to explain concepts in terms they can understand.
You also need to be a good listener, have the patience and be able to understand what other professions are telling you.


Another important thing is math.
You'll need to know how to work with vectors, matrices, quaternions, etc. These are absolutely essential to any game.
Math in general is quite important and any knowledge in this field will make you a better programmer.


I make stacks of cash never having touched C++ or anything more then basic math in my entire professional game making career. Not that those aren't good skills to have but the 'C++ or die mentality' that infests hobby programming is slightly out of touch. Give the incredible rise of mobiles its a very real possiblity you will find yourself just doing Java everyday. Its more important to be able to pick up new languages in a short amount of time them to be an 'expert' in any one of them. Maybe if your job is being on the C++ standards board. I never touched ActionScript before my current job but because I had experience in a wide variety of lanuagues from hobby, school, and work I was up and running in a couple of days.

My current job is just a startup more or less and unless you are recommended by somebody working there they probably won't even look at you if you don't have a degree. I'm sure they have lost out on some really good hires doing this but the HR guy has better things to do then look through portfoilos all day unless he is serious about doing an interview. As frob already said, this isn't 10-15 years ago when there was a much smaller talent pool. Today there are tons of other people with degrees and portfoilos trying to get the same job.
For context, I work at a startup tech company and conduct interviews and review applications during scheduled time. This is the responsibility of programmers, not non technical HR staff. Almost all applicants have degrees. A vanishingly small fraction of applicants are hired, mostly because we cannot justify their competence to ourselves such that we could hire them.

A high quality folio is rarer than a degree, and seems to be a better indication of competence. YMMV
Fine but I have to make carrier. I have to focus on certain path.
That is I have to learn some particular things in game programming.
There are enormous and different different stuff available in game programming. I have to learn some specific of them and have to be perfect on them.
So that is my question. I got very good answers ,Thanks u sir. But still want to explore more about.

Give the incredible rise of mobiles its a very real possiblity you will find yourself just doing Java everyday


This may be true of certain apps/games, but you'll find a lot of developers using C++ even on mobile. On iOS you can use Objective C with C/C++. On Android there's a Native Development Kit in which you can follow a hybrid Java/C/C++ approach with JNI, or you can write your Activity class in C/C++ code. That being said, "C++ or die" is just silly. There's a lot of games we think of as "C++ games" which use a scripting language for gameplay code. Use what you need to make your game. If you can get by with Java or a similar language, great! This may save you a lot of time.

Fine but I have to make carrier. I have to focus on certain path.
That is I have to learn some particular things in game programming...
So that is my question.


Well, keep on studying. But also make some games. That's really the only way to learn and build a portfolio.

-- Tom Sloper -- sloperama.com

This topic is closed to new replies.

Advertisement