Hello, I'm currently in High School and looking for a career in programming, and my dilemma is this: Game programming or Software Engineering? I have heard the horror stories of terrible hours and bad job security in game programming. But I haven't heard much about software engineering. Please enlighten me. If anyone is in the industry, salary figures would be good too. :P
"I have heard the horror stories of terrible hours and bad job security
in game programming."
Its nothing compared to the joy one gets when making games (not to be Cliché).
You don't say where you are in High School but hopefully you are in Honors classes because without them you'll be on the Community College tract. Times change. In the early days of programming you could get a job programming games if you had skills, or knew someone. These days its a competition. There are I.T. schools teaching Game Development.
Unless you are somehow very fortunate you will not be making games all your life. As you get older there will be more and more fellow employees much younger then you, and if you can't stay at the top of your abilities (keeping in mind those younger kids have no family little obligations and you may have a family to support) you'll be pushed out of the industry, and then what. No degree, you'll find yourself and your family out in the cold. Same goes for an I.T. game school. You get your 'programming' degree making games but then what doors are open to you in the non-game industry?
The best path is to get a Bachelor's Degree or Higher in Computer Science (preferably higher) with a minor in Game Development or Graphics. This will open many doors to you. Later in life you need to find open doors, not closed ones. Companies higher those the most qualified, thus you need many tools on your toolbelt!
I'm sure many will post contrarily but this is the facts. I'm still in the game industry that I started in almost 30 years ago but its a constant job of retraining on new tools, new libraries, new techniques, and those in management positions telling you how long your tasks should take when they really don't have a clue!
It's the problem of Multi-million dollar budgets and the minimization of risk.
Hmm, so your saying if I want a job when I get older, don't go into game programming? A nearby University offers a masters in Software Engineering, and ComputerSci. From what I've gathered about SE, you use a lot of .NET, am I correct? SE sounds right for me. Are you saying that job security is terrible for game programmers and Software engineers, or just game programmers, thanks.
BTW, I'm in honors science and math
Good for you. Stay on Honors Science and Math all the way through High School, get your Calculus and Physics wrapped up so you can slide right into a University Engineering program. You'll then need to decide to go Computer Science, or Computer Engineering, or other Enginnering fields such as Electronics. If your school has a Robotics Club such as Vex, join it! It will help puff up your University admissions.
Game programmers really don't use .NET, we use GNU for Sony, and the .NET Visual Studio but not .NET architecture. That is more for system application development.
Being very very good is semi-job security in game development, but there's always someone better. While you're bogged down writing a game to get out the door, technology advances and then you're behind trying to catch up. You have to resort to leap frogging technolgy waves to technology waves.
What I'm trying to say is having a Bachelors degree from an Academic University more doors will be open to you throughout your life. Don't jump school early to get into games because 15 or so years later you'll look up and find it difficult to try to go back to school and finish your degree. There is stigma attached to Academic degrees versus I.T. degrees. Game Development vs Engineering.
Whats the difference between computer science, computer engineering, and electric engineering? The latter is self explanatory I guess, but thanks anyways. My main goal is to do something with programming because I love it, and math and science, but I didn't think electrical engineering had anything do to with it.
If you aren't interested in building electronics projects that involve programming and embedded microprocessors with digital electronics designs then stick with the Software Engineering.
Almost anything you touch nowdays has a micro-processor in it. In essence designing and building something like that.
So you are saying electrical engineers still program, but focus on hardware too?
I wasn't the perfect student in highschool, but the I.T. field still seemed really cool, there wasn't to many techy kind of people in my school but the computer is where i spent a lot of my time, I now go to a Community College, as a part time student looking to get a computer information science's/system degree, where i can take that and use it to go to any college/university within my state. I am not really interested in going into a career through game programming at all, i think that would be totally "kick ass" seing that i play games, but i dont think it would be for me, unless I took the time to really dig deeper into c programming and more..(c is the class i am currently taking so i am a newby programmer). I'd rather invent my own programs online or write programs for car/household eletronics..that is if i was to become a programmer.. but the I.T. field is so big and growing, its really hard to grasp what you really want to do in it.