Yesterday I read a great article by Valve employee Michael Abrash (and I suggest you do the same). I noticed it thanks to a tweet by Jeri Ellsworth who recently started working at Valve, too, so I thanked her:
@jeriellsworth Great post, thanks! Reinforced my wish to join you after university. Looking forward to the "what we look for" post, too.
The "what we look for" post I'm referring to is an upcoming post Micheal Abrash talked about in his article, but you should already know that, having read it as I suggested. Right? Anyway, she promptly replied:
@mrwonko We don't require degrees here. <wink>
Which made me think about whether I could join Valve today. What exprience do I have? What projects have I done?
First of all: I'm going to continue studying. The second semester has just started and I'm learning a lot. On Thursday I started programming in Assembler and I'm also learning about Finite State Machines and all kinds of other interesting things. I'm pretty sure I'll profit from this.
That didn't keep me from thinking about my portfolio and my résumé though. Let's go back and look at what I've done in a roughly chronological order.
Aside from some strategy game map making I'm pretty sure I started modding in 2003 (or maybe late 2002) with Jedi Knight 2, creating custom maps. I switched to Jedi Knight: Jedi Academy when it came out in 2003 and eventually got into coding in C through its SDK.
Well, let's note that when I say coding I mean changing some constants here and there, and when I say eventually that means march 2005, if the time stamps on the source files are to be trusted. Still, I started coding and by February 2006 I had done some of NeHe's tutorials on OpenGL and coded my first game, Suckman. It was supposed to be like pacman, but I knew it'd suck, hence the name. I actually still have binaries. Hell, after some more digging I found out I even still have the source code!
I also started coding in PHP sometime back then, I can't pinpoint the exact time, but I have some files dating back to may 2005. I can pinpoint the time of my first modelling attempts though: Apparently I looked into creating Jedi Academy playermodels with a 3D Studio Max trial in March 2006.
And then Oblivion came out, only days later. I got it on release and played for hundreds of hours, literally. And I also looked into modelling. That was around May 2006 and I was using the free modelling software Blender by then, which I still use today. I don't think I ever released any of my Oblivion mods, they were mostly me messing around. As so often I had ambitious projects that I didn't finish.
In September 2006 I joined 3D-GET, the 3D Game Engineering Team, a group of Jedi Academy modders that were working on a new singleplayer campaign. Initial momentum had died down after over 3 years and they were hoping to finish the mod soon, but it's still unreleased to this date, although we (i.e. the 3 remaining team members) would love to see it finished. Most levels were visually done but lacked gameplay/scripting - which was partially my responsibility and is mostly done by now - as well as cohesion; They were built by separate people with only a loose story to tie them together. There was also barely any playtesting so far, which is bad. Here's hoping we get it released, too much work went into it for it to just die. Still, so far it's just another ambitious project I haven't finished.
Around that time I started really getting into coding as well, thanks to a C++ coding club in school. I had read a little about OOP before but it wasn't until then that I truly understood classes. So I worked on quite some projects in the following years, notably a Latin vocabulary trainer in September 2007 and a console-based Tetris in May 2008. (Fun fact: In order to not have to do last semester's coding exercise I had to write a console-based Tetris in Pascal.)
I also started doing Case Modding in Summer 2007. That included dabbling in electronics and programming some microcontrollers. The peak and turning point was my participation in the Games Convention Casemod Masters at the 2007 Games Convention (the last one), after that it died down.
I can't think of any remarkable projects in the following years... I briefly evaluated several engines like Ogre3D, irrlicht and Newton Game Dynamics and somehow got into Python and Lua, the latter possibly through modding Supreme Commander.
Pretty much all my remarkable projects (and some unremarkable and/or unfinished ones) since 2010 should be be available either on this website or on my github page. I started doing Ludum Dare games and some other small projects, but my most ambitious project so far is what will eventually be a Jedi Academy recode, Jedi Academy: Renaissance. Until then, it's going to be a series of games reusing the same components and built with future use for Jedi Academy in mind.
So I have quite some experience but lack big projects to back that claim up. Is it enough to get hired by Valve? I doubt it, but honestly I don't know. Michael Abrash promised to write an article on what they're looking for in people, that should give me a better idea of how good a fit I am, as well as some pointers to how I should improve.
I'd really like to work at Valve.
I actually forgot the Ace I've got up my sleeve. My video for the Midnight Riders music video contest. It got an honorable mention for best use of black and white so a lot of Valve employees have already seen one of my works, which is probably a good thing.