Fog Creek Software
g
Discussion Board




Working for Game Companies

Hi,

I was wondering if any of you have experience working in a game company, and are willing to share it? For example, do any of you know what it's like to work at Sierra, Electronic Arts, etc?

There is a pretty good chance I'll be working at a major game studio soon, and was wondering what it is like. (For example: How do they tend to rank on the Joel Test?)

I've only done engineering R&D type programming before (simulations of physical systems, performance analysis, etc). What skills should I pick up before I make the move? I know that's a broad question but any help or ideas would be appreciated.

Wannabe_Game_Developer
Tuesday, February 24, 2004

Generally, they are alleged to have wretched development methodologies.

Flamebait Sr.
Tuesday, February 24, 2004

"Generally, they are alleged to have wretched development methodologies."

That has been the experience of a good friend of mine who has worked at several in the last few years.

Exception guy
Tuesday, February 24, 2004

Anybody have specific horror stories to tell, in that case?

Wannabe_Game_Developer
Tuesday, February 24, 2004

I have a friend who is a development manager at one of the largest games companies that reckons he's doing well if he leaves the office before 2am in the months before the release.

r1ch
Tuesday, February 24, 2004

Here's the question you need to answer:

'Do you really, really love video games?'

Sassy
Tuesday, February 24, 2004

Actually "Do you really love video games" may be a good question to ask, but not how you think it is.  From what I've heard, if you really love playing video games you might be better off not working for a game company.  Lots of them work you to the bone and don't really pay comparable wages for the work

As for quality of code, one thing to note is that most games are one-offs.  After release the code is kept around for bug fixes but not really used for future products.  As you can imagine this probably leads to the code being not so great, as maintenance is not an issue. 

Of course this isn't always the case.  Some dev houses are better about using old code than others, and some games can build on previous games more than others.  Some dev houses will treat their employees much better than others.  As always, its all about generalizations.  You'd really have to investigate the specific companies you might be working for

MikeMcNertney
Tuesday, February 24, 2004

At least the mathematics of coordinate-space and projection transforms doesn't change.

K
Tuesday, February 24, 2004

"Do you really love games to the point where you will put up with nightmarish schedules, low pay, and backbreaking labor to produce them?"

Sassy
Tuesday, February 24, 2004

A friend of mine who worked for EA said that they tend to do stints of a few months or so, when they are in "ship mode" and are basically working as many hours as humanly possible.

However, I was also told that they then take a number of weeks off. Their top programmers make good money for this lifestyle.

That said, it's probbaly highly dependent on the specific project that you are working on.

Burninator
Tuesday, February 24, 2004

Quoth Sassy, "Do you really love games to the point where you will put up with nightmarish schedules, low pay, and backbreaking labor to produce them?"

Holy crap!?!?!  All this time I thought I was building a business application.

MacSqueeb
Tuesday, February 24, 2004

Low pay? Not sure about that, at least in my corner of the world. One of my colleages just moved to a game development studio and is now making 50% more than he used to make.

I supposed it's all relative.

Wannabe_Game_Developer
Tuesday, February 24, 2004

I've also heard that EA is a lot better than many others....

Sassy
Tuesday, February 24, 2004

One thing to think about is whether the studio uses a proprietary engine or uses a commercial game engine and/or middlewares.

I used to work at a place that used a commercial engine and a physics middle package.  NIGHTMARE!!!

I now work at a place that does most-stuff in-house. Reuseability is, of-course, a huge issue because creating a new engine for every game isn't feasible.  There's a dev culture, coding standards & practices, some documentation, and less of a "code cowboy" mentality. 

I'm not saying that usage of 3rd party commercial game-engines/middlewares is generally a sign of a bad studio (most do).  Just relating personal experience ...

Immature programmer
Tuesday, February 24, 2004

Immature programmer,

Where do you work? It sounds great, and I would definitely want to work somewhere like that.

(If you don't mind me asking, that is... we are anonymous, anyhow.)

Wannabe_Game_Developer
Tuesday, February 24, 2004

I worked at three studios over a total of six years. It's definitely a great experience if you're in your early-mid 20's, because the lifestyle tends to be an extension of college life. But once you're married and/or have other things going on, you get burned out quickly (which is why I eventually left).

The other main problem is because everyone's generally young and inexperienced, there's all the development pitfalls like everyone wants to rewrite, estimates tend to be way off, and passions and tempers frequently flare. So it can be a high-stress environment.

Also salaries tend to be low ($40-50K entry level, which is poverty in the San Fran area, up to maybe $80K with industry experience), and because most studios are barely solvent, it's typical to get laid off every couple years (or just jump ship).

The good of course is the type of work you might be doing, and the easy nature of most studios' cultures (which could also be bad depending on your priorities) -- come in around 10-11, take a 2 hour lunch, 1 or 2 hour Counterstrike break, one hour dinner, and go home at 11 or midnight.

But also realize a LOT of games nowadays are quick sequels and add-ons (so you'll be working with somebody else's spaghetti code); a LOT are based on licenses you probably have no interest in ("Ken & Barbies' Makeover"); and a lot are just crappy licenses you know nobody will want to play. It's rare you get to work on something original that YOU really want, so most programmers are just waiting for the chance to break off into their own studio and do their dream Game of All Games.

But still it was a fun experience, I'd do it again...

Cubist
Tuesday, February 24, 2004

Games companies score badly on the Joel test.

In many of them, but not all, development is run by people called producers or game designers, or by the art director.

Generally these are by definition people without development backgrounds, and the results are the same as those in business environments.

The developer is expected to be interuptable at any time. The significance of changes, or of devoting time to design, is not understood or respected.

As a result, architectures are often poor and there is a lot of spaghetti code. Even worse, the hacker that causes the worst disasters is probably the "coolest dude" and thus the most favoured by management and the producers.

A small minority of games companies are run by software developers, and those are superb environments.

Bumped and mapped
Tuesday, February 24, 2004

> In many of them, but not all, development is
> run by people called producers or game
> designers, or by the art director.

> A small minority of games companies are run
> by software developers, and those are superb
> environments.

I wouldn't say a small minority.  But yeah, my first experience in the game industry was much like what you said. 

Y'know artists complain about studios run by engineers.  CAN'T WE ALL JUST GET ALONG?!

Immature programmer
Tuesday, February 24, 2004

I'm not a professional, but I've read several books and articles on the game industry. There really is no consensus as far as a development process goes; when compared to other software industries, most game studios haven't caught up on software engineering practices. Check these out:

http://www.convexhull.com/sweng/GDC2002.html
http://www.convexhull.com/sweng/GDC2003.html

Those are summaries of sessions on software engineering held at the GDC (game developers conference) in 2002 and 2003. You can also read the postmortems on Gamasutra.com; you have to sign up to read the articles, but they are free and well worth the trouble. Another good resource is the igda web page, especially the web links on industry realities in their 'breaking in' site:

http://www.igda.org/breakingin/resource_links.htm

It is also true that software developers are paid 20% to 50% less than they would in other software sectors ate the same level of experience; they also work far more hours, which is why the turnover rate is very high in the game industry. This isn't to say that one cannot make money making games, just that you shouldn't expect to.

My two cents; sorry if I'm telling you stuff that you already know. :-)

blackmesa
Tuesday, February 24, 2004

I've met a lot of frustrated artist-coder types.  Apparently people get the opinion that games programming and computer special effects are the mecca for people who are both artistic and technical.

Which leads to endless problems because you start out most of those places as a grunt, where your suggestions aren't necessarily valued because you are doing somebody else's ideas, you work insane hours, etc.

Which ends up with you either artistically repressed, or spending lots of your non-existent free time making your art and getting even less sleep.

Flamebait Sr.
Tuesday, February 24, 2004

I work at EA and I would say this thread is largely accurate.  People have heard correctly, scores on the Joel test would be rather low.  Pay is medium (but the stock helps), and hours are long, crunch time is long, code is hacked-up beyond belief at times.

Work environment is pretty unprofessional even for a software house... not really a bad thing, but sometimes you get tired of old computers just sitting in the hallway for months at a time and stuff like that, your computer crashing all the time because of overworked IT.

Bob
Tuesday, February 24, 2004

No, what happens is that the artist genius or the producer sees an effect in a new game, comes over when he gets in and says we have to have that effect.

You tell him it would mean reworking the entire code-base and might introduce bugs. Plus taking two weeks. He grins and says he will buy you a coffee. A swell guy.

Two hours later the art director starts yelling because you haven't finished something he needs. He calls you incompetent because he himself has used several advanced authoring environments such as Flash and can do these types of things in 10 minutes.

You ask if you can work at home to get things done. The producer says you have to stay in the group so you're accessible. Eventually you post to JOS.


Tuesday, February 24, 2004

I've been interested to note a couple of the top Neverwinter Nights module authors are Web/DB monkeys by day (not unlike myself) - they've had offers from the games industry, and turned them down.

I suspect we can file them under "smart guys" ;)

Mediocre ASP Monkey
Tuesday, February 24, 2004

Three words for you: DON'T DO IT!

Mr Jack
Wednesday, February 25, 2004

Why, MrJack? I do not mean to start a debate, I'm actually curious as to where your statement comes from. I'm an aspirant game developer myself.

blackmesa
Wednesday, February 25, 2004

I interviewed at a couple of companies. Frankly I find it scary.

There was one (names omitted to protect the guilty) -- I was given a tour round the place, looking at their current projects and I was talking to the lead developer of one thing and said "so you're running all the stuff in the background with a finite state automaton?"

There's this pause in the conversation.

Lead developer of the thing turned out not even to have heard the phrase.

Very, very scary.

And they have ideas about code quality that frankly are only bettered by the banking industry. (Ahahahaha. Former employer has been making a pounding loss due to software errors. Still, on the bright side, having run up against the guy responsible, I know that although the code didn't work, it did have all the brackets indented properly...)

And the comments about the studios being run by the wrong people is sort of right. Here in the UK they all seem to be run by people who made their money in the 8-bit era, and they now don't do coding. They just can't see why a game takes longer than a weekend to write...

Katie Lucas
Wednesday, February 25, 2004

"He calls you incompetent because he himself has used several advanced authoring environments such as Flash and can do these types of things in 10 minutes."

HA!

That is perfect. I just had my first experience working freelance for an artistic-type this year. He wanted a stock trading mockup that would do specific things for scenes in his movie. That experience is filed under #352 in "Things I Will Never Do Again. Ev. Er."...

I think I learned a "Great Truth" though -- movie people are assholes.

Rob VH
Wednesday, February 25, 2004

"Low pay? Not sure about that, at least in my corner of the world. One of my colleages just moved to a game development studio and is now making 50% more than he used to make."

I would say that is highly unusual. Either that, or your colleague was making a pretty miserable salary to start with.

My friends in the industry make between 2/3 and half of what they could make if they worked in a corporate shop. They also work a great deal more of hours. They also have to be quite skilled with C++, physics and math.

I have lunch with one of them regularly and I get to hear about the poor development practices; although I suspect his employer may be better than most.

At any rate, from what I can see, being a game developer is for a very special type of person. A very talented person for sure, but also for someone who lives and breathes creating video games for a living and is willing to accept short schedules, low pay and long hours just to see their creation in the hands of millions of people.

Mark Hoffman
Wednesday, February 25, 2004

There are essentially NO development methodologies at game developers.  This is because there's are huge issues like "Is this actually fun?" or "Does this paper design make sense as a game?"  So game projects are constantly turning on a dime.

What's really needed is some form of agile development, but most game developers are decidedly old school, often still very afraid of ten year old technologies.

Junkster
Wednesday, February 25, 2004

Hi everybody,

Thanks for your comments.

Please, if you have any more concrete experiences at real companies to tell, I'd love to hear it.

Wannabe_Game_Developer
Wednesday, February 25, 2004

Go to www.gamasutra.com where there's a postmortem of a project to write an Indiana Jones licence. The team struggles valiantly against their schedule with too few staff for ages. When the staff finally arrive, they're fresh from a 2 year crunch to get the Buffy licence out of the door. After so long doing 7 day weeks they're too tired to really put in lot of effort...

Management tells them they just have to "make up the difference"...

Still want to go work for games companies?

Katie Lucas
Wednesday, February 25, 2004

OK, let me adress a couple of comments in this.

First off, I do work for a games company, and I like it. Having said that, yes, the environment is sometimes a bit backwards. I like tough challenges, so I'm trying to pull it forward a bit. Frustrating at times, but very rewarding, too...

It's a tough job, but it gives you a chance to really flex your mental muscles. I did quite a few other things before this, and nothing comes close, with the exception of embedded work.

-----
"I used to work at a place that used a commercial engine and a physics middle package.  NIGHTMARE!!!"

Funny. We do that here, too, and it saved a lot of headaches. Was working around 3rd-party bugs a pleasant experience? Nope. But it sure beats having to reinvent the wheel yet again, and repeating all the mistakes made hundreds of times in other projects.

----
"What's really needed is some form of agile development, but most game developers are decidedly old school, often still very afraid of ten year old technologies."

Never heard a truer word. On the other hand, there's a lot of experience backing that up. Once you've seen a couple of gung-ho, everything new projects explode because the new stuff has problems too, you tend to be cautious. The trick is finding the right mix.

As for the agile development - that's crucial. If your build takes hours, you can't tune a game.
-----
"Management tells them they just have to "make up the difference"...
Still want to go work for games companies?"

Yes - just grow yourself a spine, and say "no" to unreasonable demands. Working unreasonable deadlines is usually by choice, because everybody feared speaking up. Try saying what's on your mind from time to time...

Groby
Wednesday, February 25, 2004

Mandatory 12 hour days should be criminal - great for all the kids, but my wife would kill me.

Sassy
Wednesday, February 25, 2004

Projects based on a licenced character or movie are generally projects to avoid.

This is because they're started and run by people without the capability to create their own technology or ideas, and are essentially pure cost plays.

That is, they start with a fixed budget and then must get everything done for the lowest, usually very low, cost.


Wednesday, February 25, 2004

Not true, projects are usually funded by publishers who only green light what they think are going to make the most money for the least amount of risk. Handing a wad of cash to a bunch of 24 year olds to come up with something new and cool is hugely risky, and they're always monitoring for proof of progress to justify letting it continue... I'd avoid those if it's job security you're after. 

BTW one of the big industry lessons I learned was to spread out the introduction of new bitmaps evenly through the project, instead of putting them all in at once. You can make all kinds of progress on elegant subsystems, networking, physics, AI, etc, and the execs and even your team will just stare blankly. But have an artist throw together a few new menu bitmaps, and everyone will oooh and aaah at how much new progress you've made.

Cubist
Wednesday, February 25, 2004

Reasons:

The games industry is deeply, deeply fucked at the moment. As a sector games has a huge turnover - bigger than films - at the same time games development as a sector is loosing money. All the power is held by publishers (who are also loosing money) who have not the first clue about games and bring in their 'gameplay gurus' to 'help' and say things like 'it should be more like Tony Hawks' - which when questioned it turns out they've never played but think is cool.

Add to that an expectation that you'll work into the wee small hours, and through your weekends, and be happy that they give you pizza. Management that *might* have been good at managing two people in a barn but hasn't the first clue about how to deal with a twenty five man project with a one to two million pound budget attempting to produce a game across eighteen months. Programmers who say stuff like "I'm so glad we don't have to use that stuff we learnt at uni!" and generally don't have ANY grasp of how to put together a large project on a tight schedule. Games programmers are not the best in the world as much as they might like to think so - a significant portion are second rate bedroom hackers.

And then you get artists - who have an absurd rate of talentless prima-donnas to contend with (although it should be said that an equal portion are hard working, immensly talented and deeply abused). And designers - most of whom are good at the jobs, or would be if the management stopped treating them like shit.

Games development is soul destroying, burn-out city and a terrible place to learn anything except deep seated bitterness.

I left games about a year ago - best career move I ever made.

Mr Jack
Thursday, February 26, 2004

UK game developers:

I met an investment banker about a month ago who was working on a "roll up" of games development companies in the UK. Have you heard anything about this, and do you think it would improve things?

Rob VH
Thursday, February 26, 2004

Rob VH:

It would certainly improve the financial situation of the ones left standing. It will not do much for the overall artistic quality of games. Many game developers are deeply offended by that.

Me, personally? I'd rather do a blockbuster than an "artistic" project that sells 25K copies. It's a personal choice, and one that the game industry needs to learn, fast. Either you make money, or you make art.

So yes, a "roll up" (if it is what I think it is - consolidation) is certainly going to help.

Groby
Thursday, February 26, 2004

Cubist, precisely. Licence offshoots originate with "businessmen," who then hire the cheapest people they can find, so they can pocket a profit.


Friday, February 27, 2004

Amazingly enough, turning a profit is a rather good idea when you want to keep paying salaries....

Robert 'Groby' Blum
Friday, February 27, 2004

Here's a recent and interesting article:
http://www.acmqueue.com/modules.php?name=Content&pa=showpage&pid=114

Aaron F Stanton
Monday, March 1, 2004

I'm so glad I came across this discussion. I've spent most of the last 5 years employed as a console game programmer, and so many of the comments above, unfortunately, paint a picture of what it's really like. You don't know how much better it makes me feel to hear these complaints coming from other people.

It's true, software engineering practices at most game development companies are terrible. There's little up-front planning, scant consideration for modularity and reuse, and documentation is often an afterthought. Game programmers themselves tend to be a pretty undisciplined bunch, writing sloppy code and hardly bothering to comment it. The young ones just don't know any better, and many of the older ones are still stuck in the 16-bit days in their way of thinking.

Like working? Long hours are inescapable in this biz. Managers compensate for what's lacking in organization by making everyone work their asses off, and a lot of eager young newbies, who think it's cool spending all their waking hours in an office where they get to have lots of action figures on their desks and play Unreal Tournament at night, happily go along with this. Love playing games for fun? You won't have much time for it, and when you do, you may find you'd rather go for a bike ride than stare at a screen some more. If for some reason you get tired of working in a nerd sweatshop, well, there are always more eager young newbies out there to replace you.

Naturally, the cool factor of working on games is a big draw for people who want to get into the industry, but frankly, it's overrated (and becoming more so as teams get bigger). First of all, you'll be working on someone else's game, and secondly, as a programmer, you'll have little creative influence, anyway (if you wanted any). You'll spend months focused on little outside whatever specific system you've been assigned to. Eventually you'll realize that your job is not much different from working on any big piece of software, except for the fact that your hours are longer and the whole codebase is more of a sprawling mess. If you're really unfortunate, you'll get to spend endless hours struggling with the spaghetti code of some burned-out ex-employee, the key to understanding of which was "all in his head".

Then, of course, there's job stability, which leaves a lot to be desired. You could be stuck at one of the many places struggling to turn a profit with its games, and get laid off if the project you've labored on doesn't sell well. Or you could be at one of the top companies, where there is enormous pressure to beat the bar raised by the company's own previous games and big expectations are heaped on employees who have already worked their asses off. I've worked at both kinds of places, and it's the same grind even at the successful companies.

I suppose I sound pretty bitter here, but I'm not. I accept that the world's not always the way I want it to be. I had a good run in the industry, and it was the right thing to be doing for my early to mid-twenties. There were even some terrific highs along the way, a few shining moments of glory that would be hard to find elsewhere. However, at this point, all the glamour of working in games has been worn away for me, and what's left in it is just a soul-numbing grind. I was once an eager newbie, too, and it hurts a little to paint this picture for current eager newbies, but you ought to know that working in this business is nowhere near as fun as it's hyped to be.

Now I want to go someplace where I can work normal hours, feel appreciated, and maybe get to know my coworkers as more than stressed-out figures hunched over their monitors. Any of you ex-game programmers have any advice on good followup careers? :)

Ryan
Thursday, March 25, 2004

I thought I'd comment on a few statements from above...

------------------
"There are essentially NO development methodologies at game developers.  This is because there's are huge issues like "Is this actually fun?" or "Does this paper design make sense as a game?"  So game projects are constantly turning on a dime."
------------------

The issue of whether or not a game idea is basically fun should be addressed by prototyping and proof-of-concept at the beginning of a project. Yes, a game design almost always changes through the course of development, but it can and should be mostly nailed down by the time production begins. At that point, reasonable amounts of planning and design can and should be applied to technology.

Good methodology aims for flexibility, for building code that's reusable and adaptable. It's also a discipline that you apply throughout a project, in harmony with design alterations, not one that becomes invalid the moment they occur. Game programming is hardly the only kind of software development where requirements change is an issue, and methodologies that work in other places can work in the game industry, too.

If a project is "turning on a dime" eight months in, then that's an indication of very poor management decisions.

------------------
"Yes - just grow yourself a spine, and say "no" to unreasonable demands. Working unreasonable deadlines is usually by choice, because everybody feared speaking up. Try saying what's on your mind from time to time..."
------------------

I do agree with this statement, but sometimes there's only so far you can go at standing up to management's bad decisions before they decide you're a "bad egg". For instance, I had objected a couple times to the lack of documentation and planning at a previous company I worked for, and received a stern closed-door talking to from the old school lead programmer and the boss for my trouble, basically a "we're the best because we work hard, don't mess with what ain't broke" speech. I even stood up for my ideas by writing a clean, easy-to-use, well-documented system that the company is still using and expanding upon a year and a half after my departure, but they still don't get it. Sometimes, the only way to deal with unreasonable demands is to vote with your feet, and leave.

Also, I've seen managers bully people in situations when they knew they had those individuals by the balls, e.g. these guys had just bought a house, or were working to support a family. In these kinds of circumstances, it's not easy to fight back.

Yes, long hours are sometimes more the fault of employees themselves. You have to discipline yourself to go home at the end of the day, so you can recharge and be productive the next day. Some game developers push themselves too hard, too soon, and wind up exerting an upward pressure on hours, because others start to feel like they're slacking if they don't stay late, too.

Ryan
Thursday, March 25, 2004

*  Recent Topics

*  Fog Creek Home