views:

293

answers:

6

I've been working in C++ in embedded environments for a number of years, developing navigation applications. There is a gaming company in my hometown that I like the look of, but I don't have game development experience. You could consider a navigation app as a type of game, depending on who you are running from.

My question is, what steps should I take to enter the industry? Is it a bad idea to enter the industry at this stage (I'm 30)?

+3  A: 

I'd suggest you start trying to write some games in your spare time. Having some demos is always a good start when you go to an interview and it'll give you some insights into what your job is going to be.

Gamedev.net has an excellent set of tutorials to work through to get a grip of a lot of game-coding concepts.

Do they have any job offerings? If so, look at what they ask for in the CV and start educating yourself in those concepts / technologies.

Contacting them and asking if they have any jobs for an excellent software engineer can't hurt either :)

Jon Cage
The demos certainly won't hurt, but they'd more benefit a graduate or inexperienced programmer looking to make themselves stand out.
tenpn
If you've never worked in game design, I would think this might be a good place to start to learn the basics though?
Jon Cage
+10  A: 

Being 30 doesn't really matter, you can enter the games industry at any age assuming you have the drive and ability.

  • Start reading about gaming topics, and game development websites (gamedev, gamasutra etc.)
  • Start writing games. Clones of games you like, your own original ideas, tech demos, anything that you can point to and say "I wrote that, and along the way I learned these things, and solved these problems."
  • If there is a specific area of interest to you, AI, Rendering, Frontend, Tools & Pipelines, Audio, focus on building game/demo/sample projects that challenge you in that area. "Yeah, I've done that" sounds a lot better in an interview than "yeah I've heard of that".
  • Get to know people in the industry if you can, through online forums, friends of friends, etc... One good contact can do more for your chances than weeks of demo coding or months of sending resumes out. Game companies may have open houses or job fairs.
  • The "entry level" jobs in game development are likely to be Frontend or Tools. If you've done navigation apps, sounds like that might be a decent fit for you. If that has included more low level work and optimization on embedded platforms, you might also look at Systems roles.
Brook Miles
Good advice, thanks.
MM
These are great suggestions. I would definitely emphasize point 2. Write your own games. (Good) Game companies want people that are honestly passionate about games. Few things demonstrate your passion better than projects undertaken on your own time.
Quintus
+1  A: 

"game industry" is a broad question. There are:

  1. AI programming
  2. Graphic programming.
  3. Sound programming.
  4. Tool programming.
  5. Scripting.
  6. Physics programming.
  7. Network programming.

You probably already can deal with #7, #5 and #4.

As for the rest - mostly it is a dealing with some kind of API, plus you need a very good understanding of 3D math (unless you make 2D game, that is).

For 3d math I cannot help you. I picked info in various non-english sources, and most of them aren't available anymore. However, I think this resource might contain info of interest.

For general 3d graphic info you need to study DirectX SDK and NVidia SDKs (both DirectX and OpenGL), plus there are OpenGL books you HAVE to read:
1. Francis s Hill, "Computer Graphics using OpenGL".
2. OpenGL programming guide aka "Red Book"
3. OpenGL shading language (aka "Orange Book")
4. And you might want to take a look at OpenGL reference manucal ("Blue Book")

I'm talking about OpenGL because while it doesn't offer same level of control for hardware resources, it is easier to get started with than DirectX, and available on larger selection of platforms and have a same power as DirectX. Plus GLSL isn't that different from HLSL (except that GLSL doesn't have remnants of assembly shader programming like HLSL), close enough to C++, so it is relatively easy to get started.

One important thing - if you seriously want to deal with 3D, you have to be able to easily imagine 3d operations in your mind. I.e. how to rotate object, scale object, move object, what matrix means, what is reflection vectors, how to cut polygon with planes, how to find intersection of two meshes, etc, and you should have at least basic understanding of more complex thing like boolean operations on polygonal meshes. I have no idea how to develop this skill (it is very close to "mechanical drawing"), but you'll get a lot of difficulties without it.

SigTerm
I have a mathematical background (computer vision/image processing), so the 3d maths doesn't phase me too much. More the experience. Thanks for the info.
MM
+1 for great OpenGL books. Those are the best for actual learning the API.
Sanctus2099
+1  A: 

Just putting "experienced C++ dev" on your CV will probably get you in the door. The (UK at least) games industry is dominated by graduates and inexperienced programmers - the older ones either burn out or get promoted into management.

A lot of games programming is just programming - the skills are entirely transferable. And your navigation software experience probably puts you in for an AI-related role.

If someone with your background applied to me, I'd certainly give them an interview.

tenpn
+2  A: 

I see you already accepted an answer, but I'll throw in my two cents:

If the company does console (e.g. Xbox360, PS3) or handheld (e.g. DS, iPhone) games, you should definitely emphasize the embedded aspect of your resume. A few anecdotes about how you optimized the memory layout of a class, or sped up some code by taking advantage of an obscure feature of the chipset will show that you can think like a console programmer. Also, if you did any sort of AI for the navigation apps (e.g. A*, Djikstra), it's good to mention that.

A few people recommended writing games - that's not a bad long term plan if you know you want to get into the industry, but I don't think you should let that stop you from applying to this particular company in the meantime. However you should definitely pick up a copy of one of their recent games, play it for a few hours over the weekend, and be able to say what you liked about it.

As for websites, I second the Gamasutra recommendation, along with Kotaku.

Good luck!

celion
A: 

Well I started at 16 with (paid) game development. Search for jobs on websites. Make your own low-budget games and then publish them in a way or another.
If you are good people will search for you, otherwise you have to struggle a bit.

Sanctus2099