Ever since I first touched a computer, I was absolutely in love with the idea of someday becoming a video game developer.

As a kid—and partially as an adult—I spent a large amount of time playing video games.
It’s funny to say, but some of my fondest childhood memories and nostalgia involve video games,
especially the NES and Super NES. And I can’t forget all those awesome Sierra games like Space Quest and King’s Quest.
Ah, those were the days.
I can pretty much say that the aspiration of being a video game developer was the main motivating force—at least early on—in my becoming a programmer at all.

There is a decent chance that either you, too, wanted to become a programmer because you wanted to make your own video games or that as a programmer now, you have at least some interest in the field of video game development.
If not, feel free to skip this chapter, but if you are interested in the wide world of video game development and are curious if it might be right for you, read on.

I’ve gotten so many requests for information about this topic that, even though video game development isn’t necessarily something you need to know about as a software developer, I decided to include it anyway.

A WARNING I think that no discussion which seriously entertains the idea of someone becoming a professional game developer is responsible if it doesn’t first start out with a warning about why you should not become a video game developer. So let me try to dissuade you from the crazy notion altogether.

Video game development is not for the faint of heart. It’s an extremely difficult and demanding line of work, and the rewards are not nearly as great as you might think.

I have to admit that my experience on the topic is somewhat limited since I’ve never been a professional video game developer myself, but I have created my own games, taught courses on video game development, and know plenty of professional game developers, so I at least have some idea of what I am talking about.

First of all, you should realize that video game development is extremely competitive.
Think about it. Who doesn’t want to become a video game developer?

If you are going to program something, why not video games?

I would guess that at least 70 percent of professional programmers have fantasized about becoming video game developers at some point in their lives—hell, I’m fantasizing about it right now.

So, you should be prepared to face a huge amount of competition for every single job that you apply for if you decide to embark on this road.
Not only is the competition stiff, but the hours are extremely long, especially for Triple-A studios.

Creating and releasing video games takes a huge amount of work, and a ridiculous amount of money could be invested in a single title.

As a result, video game developers are often expected to work extremely long hours.
I would be prepared to work no less than 60 hours a week, if you seriously want to entertain this career choice.

Finally, the pay is fairly low for the most part—definitely not what most people expect.
True, independent video game developers with a very successful title can make a fortune, and even experienced video game developers working for a studio can do fairly well if they have some successful titles under their belt, but those are the outliers.

When you further consider the insane amount of hours typically worked, the pay doesn’t seem quite that high compared to a regular job.
If you really want to make money as a software developer, go work on Wall Street.

If you absolutely love video games and can’t see yourself doing anything else— and you don’t care about the cost or the money—perhaps… perhaps, video game development might be for you.


Even though I said that you can become a software developer without a degree—and I definitely believe you can—for video game development, I would recommend getting a degree or at least going through some kind of vocational training program.

Because video game development is difficult. Really difficult. There is a large amount to learn and so much of it is art.

You can easily get in way over your head, where you don’t even know what you don’t know or what is important.

You can certainly teach yourself video game development (I did), but are you going to teach yourself how to make video game graphics, how to design a story and level, 3D modeling, how to use the latest graphics engine, and all the other countless areas of specialty that are required to build one of the complex video games of today?

It’s not that you can’t learn all that stuff. It’s more that to be a video game developer, you need to know the basics of all those things and more, and it can be quite useful to have a prescribed path to follow and to have some guidance along the way.

If you are creating small, one-developer games which you are going to release independently, you might be able to skip all that, but if you want to get a job with a major game development studio,
you are going to want to have a more complete education.
Even now, I’m tempted to go to school to learn video game development. I think it would be a lot of fun.

Fortunately, there are actually quite a number of schools which actually specialize in video game development.

For the longest time, I wanted to go to Digipen University and Full Sail University because those were the two major schools that actually taught video game development.

Today, however, there is quite a large list of schools which either offer video game development programs or specialize in video game development completely.

Rather than list all of them here, you can check out an updated list on


Now that I’ve talked you out of video game development by telling you how hard it is, how crappy the pay is, and that you’ll need to go to school for four years at an expensive game development university, it’s time to really give you a kick in the nuts by telling you that you’ll need to master C++.

Ha, I’m just kidding—sort of.
The truth is there are quite a few skills that you will need to become a video game programmer,
skills that other types of programmers can get away without.

Let’s start with C/C++.
I was only partially kidding when I said you needed to become a master of C++.
It is certainly possible to develop games without knowing C++. Plenty of games are written in all kinds of programming languages.
However, many of the larger game studios, the ones who release massively processing- intensive games, still rely on C++ as one of the main languages of game development.

This could change in the future, or even by the time you are reading this book, but I doubt it.
Why do I doubt it?
Because video games are always cutting edge, pushing whatever the current hardware is to the extremes.

That means that even if C++ stops being used, some other, close-to-the-metal language is going to take its place in order to get the maximum performance on the hardware the game is running on. 

(Perhaps quantum computers will solve this problem.) Another really important skill for video game developers is experience with a video game engine.

Right now, at the time of writing this book, Unity 3D is one of the most popular video game engines out there, so it’s not a bad idea to develop some skills with this game engine.

There is also the slightly more complex Unreal Engine, and a few others that you might want to be familiar with.

Most complex games today use some kind of game engine rather than writing their own, so having a skill set and experience in at least one game engine is pretty critical.
Finally, I’ll say that math is also an extremely important skill as a game developer.

Most programmers can get away with a rudimentary amount of math, honestly.

But video game developers have to understand how to do matrix transformations and all kinds of other complex calculations—especially if you are working with 3D games.

Yes, the game engines can handle some of this for you, but you still need to know what is going on.

There are, of course, a whole list of other skills you’ll need as a game developer, but I wanted to point out what I think are the three most important ones that other types of programmers would be much less likely to concern themselves with.


There are two major career paths for video game developers: you can work for a big studio or you can be independent.

Working for a big studio is what I’ve really focused on in this chapter since most video game developers who actually want to make a living will be going down this road at least at some point in their careers.

This option is going to make sense for most video game developers because it is going to guarantee them a paycheck, and they are going to be able to be a video game programmer and focus on the programming aspect of video game development rather than having to know how to do all the other things related to releasing a video game.

That doesn’t mean this is the best choice.

Certainly, there are going to be major drawbacks.
You might not be able to work on the cool parts of the game you’d like to work on.

You might instead have to work on one simple aspect of the game that seems pretty boring to you.

For example, you might be assigned the task of coding the collision detection algorithm to determine when a sword makes contact with an enemy, which might just involve a bunch of complicated vector math.

You might work really long hours and find that video game development doesn’t feel like playing and creating video games, but just like work.
You do, though, have the opportunity to be part of something very large.

By working for a studio, you can work on a massive game that you could never develop completely on your own.


What about virtual reality?
I’m actually all-in on virtual reality.

I Got an Oculus Rift pretty recently and I was amazed to find how far virtual reality has come along since I had first encountered it with the Virtual Boy, way back when.

Surprisingly, it’s also one of those emerging areas of game development where a single game developer or small team still has a chance to make a big splash since there still seems to be a bit of a gold rush and much of the work needed to make a 3D game a VR game is actually pretty easy.

I’ve had the chance to talk to a few VR game developers and they basically use the same tools that you would use for a normal 3D game, like Unity 3D, but it is rendered as VR.

The key is creating a good VR gameplay experience and utilizing the unique control options for VR games.

I would say that VR is definitely an area that is worth looking into, especially because the skills needed to create VR games are going to carry over to many non-game, commercial applications as well.

I can see all kinds of learning platforms and training simulations taking place in the world of VR.


I thought I’d end this chapter by giving you a few suggestions and resources you can utilize if you are interested in learning more about game development.

Now, I haven’t been a professional game developer myself, so take my suggestions here with a grain of salt, but I have learned how to program games and have taught some courses on it. All of my game development experience is self-taught.

With that said, I’d highly suggest that if you are pursuing game development that you start by creating a large number of games.

Start with some really simple games and then try to create more complex games.

Instead of inventing your own original games, try to make copies of existing games that are progressively more and more difficult.

For example, the first game I made when I was teaching myself game development was Pong.

Then, I tried creating a simple space shooter game.

Not only is this a great way to develop your game programming skills and learn about making games without having to come up with brilliant ideas and get stuck in the design of games, but it will also
help you create a portfolio of games you can show if you apply for a game development job.

So many programmers I talk to really want to be game developers but don’t know where to get started. My answer is always, “Start making games.” As for resources, one of the best ones I know of is a site called Gamasutra.

This site is probably the best on the internet for finding information about game development, game development news, and for hearing real stories from game developers.

Gamasutra also has some sister sites in their network with more focused topics and an excellent collection of resources.

If you are interested in checking out my courses on game development, you can check out these Pluralsight courses I created:

Beginning HTML 5 Game Development With Quintus Building Your First Game For Android And The PC Using Java Introduction to 2D Game Programming with XNA Cross Platform Game Development with MonoGame Good luck and have fun. Perhaps I’ll join you someday.

/* If you want to remove footer link visit here and contact me bruus */