Help deciding upper-level CS electives

<p>(summary below)</p>

<p>I'm actually years away from actually taking these upper-level courses, but I enjoy thinking about the future now. Anyway....</p>

<p>I'm at the University of Michigan in the CS program. I'm trying to think of 6 upper level CS electives to choose. I'm pretty sure on four of the courses. I'm not to sure on the next two though. I'm interested in Artificial Intelligence, but I'm not sure how useful it will be. The other unknown course is going to be the big "Major Design" course during my Senior year; it's apparently going to have a big project. I'm not sure if I want to take the Software Engineering course or the Video game Development course.</p>

<p>My ideal goal upon graduation would be to get a job as a video game developer (If I'm going to be developing software, I figure it might as well be doing video games). My dream would be to start off as a software engineer/programmer (whatever they're called) and work my way up to become important enough to design the mechanics of games, but that's just a dream. Maybe I'll just make my own games on the side.</p>

<p>Anyway, my problem comes from the fact that I'm not too sure how much opportunity there is in the video game industry, in comparison to software engineering in general. In particular, I'm worried if choosing the Video Game course will somewhat limit me to a potentially unstable Video Game industry. On the other hand, would taking Software Engineering course lower my chances of getting into the Video Game industry? The state of the game industry will also effect my choice to elect Artificial Intelligence.</p>

<p>too long; didn't read:</p>

<p>I want to be a Video Game developer ideally, but I would be happy with any software engineering job. I'm curious how much opportunity there is in the video game industry. If there is much opportunity, then I'll take the Video Game class and AI class to maximize my appeal for the industry. Otherwise, I'll go safe and take Software engineering (and maybe cryptography?) and hope to sneak in the gaming industry. Or will it not even matter much whether or not I pick the Video Game class & the AI class, if I want to get in the gaming industry?</p>

<p>Thanks</p>

<p>Have you looked at the job postings by the leaders (EA?) in this industry? I think that you will give you an idea about the kind of skill set they look for. Good luck!</p>

<p>Game developers will find many of the courses with generally useful concepts to be useful in their specialty:</p>

<p>algorithms and complexity (you want your program to use time and memory efficiently)
operating systems (every computer program interacts with the operating system, or is the operating system)
networks (many programs, including games, are networked)
databases (many programs, including games, store and use lots of data)
security (important in many contexts; games need security against cheating)
software engineering or project course(s) (games can be large projects)</p>

<p>Topics somewhat more specific to games:</p>

<p>graphics
artificial intelligence (the computer players)</p>