Followers

Tuesday, July 29, 2008

To Infinity and Beyond

Well, I've been crazy busy these last few weeks! I just spent about 2 week in iterator hell trying to rework some code and I can tell ya I'm not all that fond of the C++ implementation of iterators! It seems like no 2 iterators want to talk to each other.

If you've been reading my blog, then you just about know my life story by now! Thanks for taking the time. On a related not I also wrote an article for GameCareerGuide.com on how I broke into the gaming industry. Take a look at http://gamecareerguide.com/features/578/no_more_it_for_me_how_one_tech_.php. Don't know how long it will be there.

So, now that you know more about me that you ever cared to, how would you like to know about my son, Stephen. He is also a game programmer and know works for Other Ocean Interactive in Charlottetown, PEI, Canada. I won't go into too much detail (he'll be writing his own blog soon, I'm sure), but his tale is interesting as well.

About 5 years ago I remember Stephen coming to me and telling me he wanted to make a living off of video games. He had a magazine article that discussed the three main careers at the time (art, programming, and QA). I thought that was a great idea. As programmer, I knew he would be making a pretty good salary, and it was a perfect match for his love of gaming.

At the time he was still completing high school, so we begain checking into colleges. Previously, Stephen had checked out Full Sail Real World education in Florida because he was interested in their music program (Stephen is a drummer). Now, we started looking into their Game Development program.

Full Sail seemed like the dream school to attend for this field. They offered a Bachelor's degree in 2 years and were totally focused on game development. Of course, the cost is beyond beyond!

I would like to say, for potential students out there, that the jury is still out on degrees from game technical schools. In a way companies are still a little leary of such schools because it it unclear whether the education you receive is on par with a four-year college. Most of the research I have done indicates that a traditional Computer Science degree with some emphasis on game theory is still the baseline requirement.

The one thing schools like Full Sail do offer is that you come out of the program having written at lest a couple of projects. You also come out of a school like Full Sail with a "game career" work ethic, e.g. work until you drop or drop-out!

So we chose Full Sail because I wanted to go into debt for the rest of my life, er, I mean because I thought that it was the best fit for Stephen's goals. Also, I liked the fact that the program resulted in a B.S. Degree, not just a certificate. My advise would be to steer clear of programs that don't offer an actual Bachelor's program In just about every industry, tech school certifications are almost meaningless (but not totally...anything is better than nothing).

Anyway, just before he went to Full Sail, Stephen and I had a chance to go to E3 (what I refer to as "the real" E3). I was mesmerized. I'm not kidding when I say that E3 changed my life! I remember thinking, "I have got to get into this!" An here I am.

One more life lesson. Getting the degree isn't any guarantee of getting a job. Although some people get jobs right out of school, it is more common that it will take some time. It took until April before Stephen found the right match. After many interviews, tests, and "Thank you for your interest" letters, he finally got a job offer. In fact, it was 1 week after I had accepted my job offer. It was a happy day at the Madsen family! (I wonder if there are any other Father/Son game programmers out there?)

If you are trying to break in to the game industry as either a student or otherwise, it will take perseverance, hard work, and a tough skin, but my advice is to keep moving toward the goal!

Where to from here?

So, enough about me already! From here out I'm going to try to write about my experience as a game programmer rather than my experience getting here. Maybe I can share some useful tips and trick along the way. Feel free to come along for the ride. :)

Friday, July 11, 2008

Running The Gauntlet Part 3 - The Interview

I jokingly refer to my on-site interview the "six hours of torture." For six hours I stood at a whiteboard assailed by questions as small teams of programmers threw scenarios at me to solve. Some required actual coding (no IntelliSense on a whiteboard) and others required design. I was told at the beginning that the goal was to test the limits of my knowledge.

We started with the basics: C classes and object, copy constructors and related issues, pointers and dynamic memory. We covered 2D related game math: trigonometry and applications of vectors and matrices. Break. Next we covered inheritance, polymorphism, containers, STL. Lunch. State engines, lerping, timing, quantum physics, the nature of God and the Universe. 42. Break. Why are you here? End.

I believe two strategies are relevant to this type of interview. The first is to apply good problem solving. Even if I didn't know a specific technical demand, I at least tried to analyze the question and form an approach toward the solution. The second strategy is to know what you don't know and ask questions. If I reached a point where I simply didn't know what to do, I said so.

I'm not sure if MumboJumbo's approach is unique, but I definitely agree with it. At each point in the interview, I was told that my problem solving skills where more important than my technical knowledge. Every time I reached a hurdle that I couldn't cross, we worked through that hurdle together. My interview was a two-way process in which information flowed in both directions.

I am happy to report that I have been working at MumboJumbo for almost 3 months now and I am in programming heaven. Someone just asked me the other day if working in the game industry had lived up to my expectations and the answer was a resounding, "Yes!" I may be old, but I'm not too old to have that naïve kind of joy that I am finally doing what I always wanted to do (and getting paid for it!).

I hope my story inspires someone out there who, like me, wants to get into the game industry but feels it might be too late. The game industry is not just for twenty-something year olds just out of college. In fact, the industry is beginning to realize that there are important lessons that can be learned from traditional IT. As an IT professional, you have those skills.

The key to breaking into the game industry is twofold. First, prepare. Looking back, it took me five years of preparation (along with making a living) to come to a point where I was ready and marketable. Second, find the right company. Not every company will appreciate you or overlook your obvious lack of game-centric experience. But the right companies will. And you wouldn't want to work for anyone else.

In future episodes...

One thing I have learned about being a game programmer...I don't have a lot of time to blog! But I would like to continue writing about my experience and sharing tidbits of technical and other gaming wisdom along the way. Stay tuned.