Transition from non-game Industry to Games ?
by Nazareth · in Jobs · 06/26/2006 (8:38 am) · 9 replies
I've been doing industrial/commericial software for nearly 20 years and have a cushy job at the top of the technical tree, but have always wanted to do something more creative. Since I've also been a hardcore gamer for over 30 years, and am drawn towards the potential for cutting edge technology in games, I've been considering making a move to the games industry.
Does anyone have any experience with making this type of move? What are the issues/barriers that you faced?
One of the possible barriers I see is that in most game job ads they require N shipped titles. Now with the current explosion in games development companies and growing market, I would think that this isn't realistic or necessarily desirable, after all a little new blood couldn't be all bad. Do the folks who are hiring really consider this a requirement? I have extensive experience in many of the technologies they also request like threads, networking, performance, multiplatform, etc. along with unparalleled experience in OO/C++.
I assume I'd have to take a cut in pay, but this isn't really an issue for me. What value can you put on being able to do what you love?
Thanks in advance for any insight.
Does anyone have any experience with making this type of move? What are the issues/barriers that you faced?
One of the possible barriers I see is that in most game job ads they require N shipped titles. Now with the current explosion in games development companies and growing market, I would think that this isn't realistic or necessarily desirable, after all a little new blood couldn't be all bad. Do the folks who are hiring really consider this a requirement? I have extensive experience in many of the technologies they also request like threads, networking, performance, multiplatform, etc. along with unparalleled experience in OO/C++.
I assume I'd have to take a cut in pay, but this isn't really an issue for me. What value can you put on being able to do what you love?
Thanks in advance for any insight.
#2
"Game development is _nothing_ like software development."
Is this really the consensus?
I've played with OpenGL and DirectX a little, for someone that understands 3d space and has used countless third party libraries there was nothing particularly difficult. I expect there are nuances that a veteran user would avoid automatically that could stump an entry level programmer for a few days, but a very experienced software engineer with a decent reference and the resources of the web should be able to overcome these in a relatively short time.
I've gone through some of the "write your own engine" type books, have a library that probably rivals those of the major studios, and haven't seen anything game specific that would cause me concern. I've played with TGE and Unreal a little. I have an engineering degree, aced and tutored Physics, Statics & Dynamics so these aren't a problem. I've done some non-game related AI. I've scripted in dozens of languages, and most people agree that learning yet another language is trivial once you have a few under your belt.
Isn't most development done using licensed engines or by modifying those engines rather than writing one from scratch? Here I think that years of experience modifying and supporting someone elses code combined with moderate understanding of how engines work would be equal value to someone who was part of a team that released a couple games? And then again, a little "out of the box" thinking might be what's needed to make the next game that isn't just Unreal, Warcraft, or UO with different graphics. (No offense to any of these titles which I consider great games)
"Have you made a game?"
No, I haven't made a game. But I've worked on several teams that have made things that *noone* had ever made before. And that's the kind of game I'd ultimately like to work on.
I could see that getting the role of lead game logic programmer might be far fetched, but there are many ads for server/network, AI, Physics specific roles that I hoped to use to get my foot in the door. Would a game developer breaking into MMOG space want someone who tweaked the engine LAN code for a couple shipped FPS games over someone with extensive experience scaling distributed systems?
Doesn't writing and debugging a highly optimized messaging system present pretty much the same challenges regardless of the data payload? I understand that you can take some shortcuts in game physics that you might not be able to take in a robotic aircraft controller but isn't the bulk of the physics the same? Aren't the principles of OO design, writing reusable, readable, supportable, optimized code, the same regardless of the industry? Isn't the ability to write a usable design spec, translate marketing/customer requirements to real implementable engineering requirements, diagnose complex multithreading issues, analyze and remove performance bottlenecks, design a good and efficient database schema, sector agnostic? Is there any percieved value to a team member who can fill any of these roles as needed at various points in the release cycle instead having all niche gurus with alternating crunch/idle time? The ability to forecast, meet, or beat a schedule is rare in software and especially in games from what I hear, but that's one of the pluses of someone with "hundreds of years of programming experience" :). I'd like to think that someone out there in HR land would see that the benefits of generic experience could be an applicable tradeoff and that the man-months saved facing generic software issues would balance out in the long run with the relatively short ramp up time to pick up yet another scripting language or API.
And perhaps the most relevant question, are there enough _good_ programmers who have published games to fill the demand?
06/26/2006 (10:23 am)
Thanks for the feedback!"Game development is _nothing_ like software development."
Is this really the consensus?
I've played with OpenGL and DirectX a little, for someone that understands 3d space and has used countless third party libraries there was nothing particularly difficult. I expect there are nuances that a veteran user would avoid automatically that could stump an entry level programmer for a few days, but a very experienced software engineer with a decent reference and the resources of the web should be able to overcome these in a relatively short time.
I've gone through some of the "write your own engine" type books, have a library that probably rivals those of the major studios, and haven't seen anything game specific that would cause me concern. I've played with TGE and Unreal a little. I have an engineering degree, aced and tutored Physics, Statics & Dynamics so these aren't a problem. I've done some non-game related AI. I've scripted in dozens of languages, and most people agree that learning yet another language is trivial once you have a few under your belt.
Isn't most development done using licensed engines or by modifying those engines rather than writing one from scratch? Here I think that years of experience modifying and supporting someone elses code combined with moderate understanding of how engines work would be equal value to someone who was part of a team that released a couple games? And then again, a little "out of the box" thinking might be what's needed to make the next game that isn't just Unreal, Warcraft, or UO with different graphics. (No offense to any of these titles which I consider great games)
"Have you made a game?"
No, I haven't made a game. But I've worked on several teams that have made things that *noone* had ever made before. And that's the kind of game I'd ultimately like to work on.
I could see that getting the role of lead game logic programmer might be far fetched, but there are many ads for server/network, AI, Physics specific roles that I hoped to use to get my foot in the door. Would a game developer breaking into MMOG space want someone who tweaked the engine LAN code for a couple shipped FPS games over someone with extensive experience scaling distributed systems?
Doesn't writing and debugging a highly optimized messaging system present pretty much the same challenges regardless of the data payload? I understand that you can take some shortcuts in game physics that you might not be able to take in a robotic aircraft controller but isn't the bulk of the physics the same? Aren't the principles of OO design, writing reusable, readable, supportable, optimized code, the same regardless of the industry? Isn't the ability to write a usable design spec, translate marketing/customer requirements to real implementable engineering requirements, diagnose complex multithreading issues, analyze and remove performance bottlenecks, design a good and efficient database schema, sector agnostic? Is there any percieved value to a team member who can fill any of these roles as needed at various points in the release cycle instead having all niche gurus with alternating crunch/idle time? The ability to forecast, meet, or beat a schedule is rare in software and especially in games from what I hear, but that's one of the pluses of someone with "hundreds of years of programming experience" :). I'd like to think that someone out there in HR land would see that the benefits of generic experience could be an applicable tradeoff and that the man-months saved facing generic software issues would balance out in the long run with the relatively short ramp up time to pick up yet another scripting language or API.
And perhaps the most relevant question, are there enough _good_ programmers who have published games to fill the demand?
#3
Yes. That's why if you don't meet their requirements you won't get it.
From what you say you sound like you have a fairly good background in things. So my advice is to go make a game. Because it's one thing to say you know all the things you say and another to prove it. This industry is alot of all talk but no show, so until you have something to show you will be placed on the bottom.
This is where examples beats experience comes in. You may say you have experience but unless you have the proof to back it up no one cares. Also even then game companies are in the buisness of making games, so you better have made a few before applying.
I wish you luck but don't expect much.
06/26/2006 (11:02 am)
Really the only question I need to answer in that is, "And perhaps the most relevant question, are there enough _good_ programmers who have published games to fill the demand?"Yes. That's why if you don't meet their requirements you won't get it.
From what you say you sound like you have a fairly good background in things. So my advice is to go make a game. Because it's one thing to say you know all the things you say and another to prove it. This industry is alot of all talk but no show, so until you have something to show you will be placed on the bottom.
This is where examples beats experience comes in. You may say you have experience but unless you have the proof to back it up no one cares. Also even then game companies are in the buisness of making games, so you better have made a few before applying.
I wish you luck but don't expect much.
#4
The good programmers often quit the industry, go indie, or get to pick where they're going to work.
If you're an experienced programmer, and don't mind getting a job as kinda junior programmer, and the salary cut, you can probably find work quite easily, but the lack of shipped titles and gamedev experience is in all likelyhood going to prevent you from getting a lead or senior position from the get go.
Unless you're a specialist in a domain applicable to games : graphics, AI (game AI is still mostly very basic smoke and mirrors, but the latest academic research developments in the field are slowly percolating down to games), platform abstraction, tools, build systems (more and more studios look for dedicated build system engineers), etc.
As for needing to know DirectX or OGL, that's bull : only the graphic coders need to know that stuff on the average development team these days, it's absolutely not a necessary skill. I wouldn't focus my efforts on that, too many people wanting to break in the industry focus on getting flashy demos focusing on the graphics side of things, when there are experienced, seasoned specialists in that field from various backgrounds : some of them learned it in gamedev, others are from visual simulation backgrounds, and yet others from academic research backgrounds....
You could also take the path espoused by GG, and go the indie way, and start making your own game, or join an existing project and go the indie way : it might be more rewarding and less tedious than working at a mainstream studio where, be it on PC or current and next gen consoles, generally, the size of projects make you a small cog in a huge piece of machinery. Then again, if you've been working on huge software projects, with big teams, you might find your place in a mainstream studio.
Hope this helps,
Cheers !!!
06/26/2006 (11:28 am)
Erh, I beg to differ : there aren't enough good programmers in the industry, but plenty of inexperienced fresh out of college programmers ready to sell their souls to work on games...The good programmers often quit the industry, go indie, or get to pick where they're going to work.
If you're an experienced programmer, and don't mind getting a job as kinda junior programmer, and the salary cut, you can probably find work quite easily, but the lack of shipped titles and gamedev experience is in all likelyhood going to prevent you from getting a lead or senior position from the get go.
Unless you're a specialist in a domain applicable to games : graphics, AI (game AI is still mostly very basic smoke and mirrors, but the latest academic research developments in the field are slowly percolating down to games), platform abstraction, tools, build systems (more and more studios look for dedicated build system engineers), etc.
As for needing to know DirectX or OGL, that's bull : only the graphic coders need to know that stuff on the average development team these days, it's absolutely not a necessary skill. I wouldn't focus my efforts on that, too many people wanting to break in the industry focus on getting flashy demos focusing on the graphics side of things, when there are experienced, seasoned specialists in that field from various backgrounds : some of them learned it in gamedev, others are from visual simulation backgrounds, and yet others from academic research backgrounds....
You could also take the path espoused by GG, and go the indie way, and start making your own game, or join an existing project and go the indie way : it might be more rewarding and less tedious than working at a mainstream studio where, be it on PC or current and next gen consoles, generally, the size of projects make you a small cog in a huge piece of machinery. Then again, if you've been working on huge software projects, with big teams, you might find your place in a mainstream studio.
Hope this helps,
Cheers !!!
#5
I've worked for very large and very small companies and much prefer the latter, unfortunately the last few companies I've worked for have been bought out by the mega-corps. I'd definitely be targetting smaller or "independent" companies. (not sure I know where a company officially stops being an Indie? Perhaps thats a good fuzzy logic problem?)
I guess that's were I am at now, trying to decide whether to try to get my foot in the door at an intermediate level or working on an independent project for a while to get something to show. I'm not sure how helpful a demo project would really help, after all, anyone can claim to have contributed more to the project than they really did.
Also, after working on an independent project, I might not be happy at an industry job. Sometimes ignorance is bliss :)
I've started a few personal projects only to have someone announce/publish a similar concept shortly thereafter. And I've contacted some other projects, even went as far as signing an NDA for one only to have them just stop showing interest shortly thereafter. I see alot of these projects started with a lot of enthusiasm only to fade away - I'd hate to invest a lot of energy in one and not at least come away with a demo.
Another concern I have is that if I get my foot in the door as a specialist in one of the niche technologies, I might be forever stuck there. So far I've been able to keep my experience very broad because I see a huge value there that is currently overlooked in the software industry in general. We need people who can see the forest and the trees, preferably someone who can shift between the two as needed, unfortunately the trend has been heavily towards specialization.
06/26/2006 (1:06 pm)
Thanks for the feedback.I've worked for very large and very small companies and much prefer the latter, unfortunately the last few companies I've worked for have been bought out by the mega-corps. I'd definitely be targetting smaller or "independent" companies. (not sure I know where a company officially stops being an Indie? Perhaps thats a good fuzzy logic problem?)
I guess that's were I am at now, trying to decide whether to try to get my foot in the door at an intermediate level or working on an independent project for a while to get something to show. I'm not sure how helpful a demo project would really help, after all, anyone can claim to have contributed more to the project than they really did.
Also, after working on an independent project, I might not be happy at an industry job. Sometimes ignorance is bliss :)
I've started a few personal projects only to have someone announce/publish a similar concept shortly thereafter. And I've contacted some other projects, even went as far as signing an NDA for one only to have them just stop showing interest shortly thereafter. I see alot of these projects started with a lot of enthusiasm only to fade away - I'd hate to invest a lot of energy in one and not at least come away with a demo.
Another concern I have is that if I get my foot in the door as a specialist in one of the niche technologies, I might be forever stuck there. So far I've been able to keep my experience very broad because I see a huge value there that is currently overlooked in the software industry in general. We need people who can see the forest and the trees, preferably someone who can shift between the two as needed, unfortunately the trend has been heavily towards specialization.
#6
It doesn't have to make millions (or even anything at all), but it does need to be able to show "design through production to publish"--THAT is what the difference is between you and Joe Schmoe game coder that entered at the bottom and got onto a team that published.
06/26/2006 (1:14 pm)
Given your background and obvious "jack of many trades" expertise, I honestly think your best route is simply to follow Nicolas' advice: make a game. Any game (doesn't matter if someone else already announced something similar, etc.---WoW is just a 1st generation MMO with polish taken to the extreme, and a brand applied).It doesn't have to make millions (or even anything at all), but it does need to be able to show "design through production to publish"--THAT is what the difference is between you and Joe Schmoe game coder that entered at the bottom and got onto a team that published.
#7
And yes, the jack of all trades coder is in a weird spot these days in the mainstream vidgame industry (and IT programming at large I'm sure), going from my personal experience : we have a wider perspective, don't buy in to the latest trends in software engineering, programming languages, etc just for the sake of it.
We'll take what we think is good and leverage it, but we're usually not the type to buy things wholesale, in block.
Alas, the mainstream industry being what it is (both first hand experience and the grapevine), with mostly management that have no clue about the software development or content development processes, that buys in to the latest trend, leads with less shipped titles than guys with half their time in gamedev, etc. ( I could rant on and on about this, without going into the office politics thingy, which definitely can play a role, depending on your personality), generalists tend to be frowned upon...
Anyhow, don't let my bitterness drive your decision, I know I tend to be a bad fit to work in corporate office environments :)
But consider that in some ways, the corporate culture in gamedev is worse than in more established corporate domains : more immature, more cuthroat in some ways, etc.
As I said, might a better chocie for you to start on a more indie path, as a serious hobby, more than an alternative to your job. Seriously.
Cheers !!!
06/26/2006 (3:14 pm)
Naz, i hear you and being a generalist myself (without a BCS diploma to boot), I can relate : it's a great quality but also a bane, especially as you will be quite older than most of your coworkers, and your lack of speciality can (I'd say will) be used against you in office/corporate politics shenanigans...And yes, the jack of all trades coder is in a weird spot these days in the mainstream vidgame industry (and IT programming at large I'm sure), going from my personal experience : we have a wider perspective, don't buy in to the latest trends in software engineering, programming languages, etc just for the sake of it.
We'll take what we think is good and leverage it, but we're usually not the type to buy things wholesale, in block.
Alas, the mainstream industry being what it is (both first hand experience and the grapevine), with mostly management that have no clue about the software development or content development processes, that buys in to the latest trend, leads with less shipped titles than guys with half their time in gamedev, etc. ( I could rant on and on about this, without going into the office politics thingy, which definitely can play a role, depending on your personality), generalists tend to be frowned upon...
Anyhow, don't let my bitterness drive your decision, I know I tend to be a bad fit to work in corporate office environments :)
But consider that in some ways, the corporate culture in gamedev is worse than in more established corporate domains : more immature, more cuthroat in some ways, etc.
As I said, might a better chocie for you to start on a more indie path, as a serious hobby, more than an alternative to your job. Seriously.
Cheers !!!
#8
07/04/2006 (7:05 pm)
Well as you can see there is a giant gap between someone who has experience but has never worked on a game and finding work in this industry. Many students are finding this gap quite large as well. I started our company, Forever Interactive, in hopes to close this gap. We accept people like Nazareth who have the background but not the shipped game. We see potential were mainstream companies see liabilities. The Indie Game movement is your only hope to finding real work in this stagnant Marketing driven game industry. Read alot of what Greg Costikyan is trying to do for this industry, open your eyes. I currently have a boring hotel job and can't quit work to become a tester for $10.00 hr in hopes of landing a real position in an already saturated workplace. I have a 3D Animation Degree!! with no experience creating an actual game. So like everything else in life I'm doing myself and trying to make a difference. If you are interested in our endeavor please visit us www.foreverinteractive.com We would love to add another HIGHLY qualified programmer to our team. /bow
#9
However my job just turned into a chore, day after day I found myself being bored. I wanted more, something more creative, something to keep my mind active on what I love doing. . . . . games.
So this year I made the jump and put together a portfolio of my 2D and 3D stuff and applied to VFS, I was not only accepted, I was also awarded a scholarship. As of Feb 2006 I will be attending VFS 3D Animation & Visual FX course. After I graduate, I will be looking into working in Games or Film.
Just when I thought that age caught up to me and I was past changing careers, thank god I was wrong.
The gaming industry is not a get rich quick career, it is a long and tough road, however you have to have the mindset "Stop talking and take action" grab it with both hands, job oppertunities WILL NOT come to you, you have to hunt them down, even when you might feel like there is no end to the tunnel. NEVER take the defeatest attitude that where I am is all there is. . . . Taking that attitude will seal your fate. So be ready to fight to get what you want, but if you have the drive, like you say you do . . . the love of the game, then you will have no problems getting to your goal.
I am leaving a mundane and crappy career, and moving to something I love, and to be honest I am excited and ready for all it throws my way!
I wish you the best of luck in any life changing choices you make. The game indusry is a kick ass place to be, Just be ready to work your ass off :)
07/04/2006 (9:27 pm)
I was in a simular situation, I have been a computer tech for 14 years. I have always had the passion for game development, 3D animation and visual FX. Over the years I have been making independent games, 2D with MMF, Mods e.t.c. However my job just turned into a chore, day after day I found myself being bored. I wanted more, something more creative, something to keep my mind active on what I love doing. . . . . games.
So this year I made the jump and put together a portfolio of my 2D and 3D stuff and applied to VFS, I was not only accepted, I was also awarded a scholarship. As of Feb 2006 I will be attending VFS 3D Animation & Visual FX course. After I graduate, I will be looking into working in Games or Film.
Just when I thought that age caught up to me and I was past changing careers, thank god I was wrong.
The gaming industry is not a get rich quick career, it is a long and tough road, however you have to have the mindset "Stop talking and take action" grab it with both hands, job oppertunities WILL NOT come to you, you have to hunt them down, even when you might feel like there is no end to the tunnel. NEVER take the defeatest attitude that where I am is all there is. . . . Taking that attitude will seal your fate. So be ready to fight to get what you want, but if you have the drive, like you say you do . . . the love of the game, then you will have no problems getting to your goal.
I am leaving a mundane and crappy career, and moving to something I love, and to be honest I am excited and ready for all it throws my way!
I wish you the best of luck in any life changing choices you make. The game indusry is a kick ass place to be, Just be ready to work your ass off :)
Torque Owner Ben Versaw
Though all that experience is nice and good, you have never worked on a game (at least from your post that what I'm getting). Game development is _nothing_ like software development.
First some questions that you better be able to answer yes to before you have much chance of getting hired
1) Do you know either OpenGL or DirectX _very_ well?
-If you don't learn it now otherwise you are not much use to a game company regardless of anything else you know.
2) Can you program a graphics engine? Physics engine? AI? Game logic? Use scripting languages and know how to intergate them into a game engine?
-Almost none of your application programming skills will be of any use on these.
And the last and most important question
3) Have you made a game?
-If you haven't made a game, you just plain won't get a job in the industry. We make games, not software. A portifillo full of fun games is better than hundreds of years of programming experience.
Note that "N shipped titles" doesn't always equal "mega successful hits" it just means shipped titles. Otherwise the other option for you is to work your way up... game programmer is _not_ an entry level position in the industry and you are entry level at the moment.