Which level of programming detail is best?

Started by
9 comments, last by slynk 11 years, 11 months ago
Hello there,

I would like to know what level of programming detail is recommended to build a portfolio in that will land a job in the game development industry

Example levels being: hardcore C++ and DirectX; a somewhat more friendly library like SMFL; an engine like Unity; or a mod SDK like Source
The lower levels typically have greater difficulty and grant more control the programmer
While the higher ones typically produce more content at a quicker rate and are more straightforward

Basically, I don't know how much weight is placed on having creative designs executed well compared to having solved programming problems personally and having a greater understanding of how the games run
I'd imagine that an employer would appreciate the time and effort spent in a lower level environment when considering someone for a programming position; but would be more interested in the more finished and content rich products of higher level environments when a design position is involved
Personally, from what I've read and heard about the inner workings of studios, I'd prefer a programming over a design position although I find both quite intriguing in different ways
So, which type of environment should I spend most of my time such that I would have an attractive portfolio in the future, based on this information?

Thanks
Advertisement
There isn't really a 'best'. Different employers will value different things (for different roles at the same employer even).
I'd say it depends on what kind of programming role you are looking for.

Game programmers come in all kinds of flavors, from the low level "hardcore" guys who optimize the engine, to people scripting behavior for the next title, with everything in between.

If you want a job at a small company it is good if it shows some versatility, because there are usually very loose roles in small teams.

Your portfolio should reflect what you are good at, and what you want to do.
I guess it also kinda depends on what area of programming you want to focus. If you want to become a graphics programmer, the best course of action will most likely be to take up C++ with DirectX and/or OpenGL and show that you grasp that with various demos. Whereas a gameplay programmer might benefit more from showing his skills in actual gameplay programming and thus you don't need to show of your Graphics programming skills. This also varies a bit of course, bigger studios might "want" you to be a C++ programmer and although Unity3D with C# will give you the understanding of gameplay programming, it might not fit the C++ requirement.

What might be an interesting thing for you to do, is to check out hiring studios, look for positions you would like and see what they're asking for.
I didn't realize it would vary that widely between individual positions
In light of that, a better question might be: would the experience gained through working with C++ and DirectX be the most useful in comparison to the other levels?

Basically, the lowest level I described would grant experience mostly in detailed programming while more abstract aspects such as AI behaviors or gameplay mechanics would receive less concentrated time and energy
And the ratio between detailed and abstract concepts would progress in that way on up the ladder
At least, that's the relationship I'd imagine exists

However; the real question is what environment would grant the most flexible portfolio, favoring either extreme or directly central?
Being aware the fact that I made those levels up with about 30sec of thought, a preferable response would also include a few examples of the type of environment that answers the question

Thanks so much for your contributions this far
C++ is definitely the industry standard and you will have no real way around it, but it's always good if you know some exotic languages like Haskell which can have very direct applications to C++ idioms like template metaprogramming.
It's important to remember that you will likely be showcasing your portfolio to a HR manager, not a project manager. In which case it's probably a lot more impressive to see more "visible" kind of work, rather than to have less "visible" work that's in a lower level, but more job-appropriate language.

Of course it would be nice to have at least one low-level project to showcase just in case you get someone who actually wants to see how your low-level stuff works, but I think the majority of your portfolio should be flashy stuff that would impress someone who doesn't really know much about what goes on behind the scenes.

It's important to remember that you will likely be showcasing your portfolio to a HR manager, not a project manager. In which case it's probably a lot more impressive to see more "visible" kind of work, rather than to have less "visible" work that's in a lower level, but more job-appropriate language.

Of course it would be nice to have at least one low-level project to showcase just in case you get someone who actually wants to see how your low-level stuff works, but I think the majority of your portfolio should be flashy stuff that would impress someone who doesn't really know much about what goes on behind the scenes.


Are successful big game companies really that sloppy in how they hire?
I have no real experience of that process from either end (work for a small player) but I'd imagine they would have someone in the process that would actually be competent in evaluation your work....
Sure, something flashy catches the eye, and increases your chance to get to round 2...

But I still think the most important question is: what do YOU want to do?

I think you should mainly fill your portfolio with whatever you enjoy programming, because when you enjoy what you do, you increase the chance of it actually being any good...
And that is what you want to work with right? Things you enjoy.
Filling the portfolio with things you think "should" be there, but you don't enjoy doing is not very likely to land you a job you enjoy...

I don't think it has to be any more complicated then that.

Are successful big game companies really that sloppy in how they hire?


Big video game companies suffer the same issues as normal companies. There are HR people who have no idea what they're doing. There's a few who do. I would expect the HR guy at Valve or Dice for example to know their shit a lot better than an HR guy at EA or Activision.

I'm not saying that every video game HR rep is an idiot, but based on my experience with HR people who hire for any kind of technical job, many of them don't actually know what they're looking for in a new hire other than making sure they fit the job description.

Your results may vary.
HR is just the front line, and only assesses general suitability.

It's up to your technical divisions to assess a candidate for a technical position.

This topic is closed to new replies.

Advertisement