Category Archives: Ask a Designer

Questions and answers about games, game design, the game industry, breaking in, and similar.

Q&A: Junior Positions, Experience Required

Most junior programming positions I’ve seen so far require 2 years experience, did you apply for jobs that expected more knowledge then you had at the time? If so, were you honest saying that you didn’t meet all the criteria?

First off, have you heard the joke about the job that asks for “5+ years of experience with the PS4” (or another, equally impossible, endeavor)? If you haven’t heard about this… well, it’s not just a joke – it’s something that actually pops up in job listings. Business people without knowledge of technical details and startups are particularly bad about listing qualifications that describe senior level responsibilities, but for a junior position. Beware of these. They are likely looking to underpay you, or have unrealistic expectations of the amount of work you can do.

Now that’s out of the way, let’s get to the details of this specific Q&A.

Two years of experience is not to much to ask for a junior position. The question then comes down to, “What counts as experience?”

Personally, I would consider upper-level coursework, internships, and time spent on personal (but substantial!) projects as experience. You need to be honest with yourself, though. If your programming reflects a couple courses taken over two years… that’s not two years of experience. If you graduated with a CS degree and did some independent projects that are directly related to game development (or to the position in question), then maybe that’s enough to qualify.

It does require some introspection. Take a look at all the other qualifications listed and ask yourself if you are actually able to do that kind of work. Don’t apply to a senior position if you are obviously not a senior level candidate. If a company asks that you’ve shipped a game on a specific console, you should probably only apply if you’ve done that since it means they are looking for specific experience. If a company asks for someone with a few years of C++ and all you took was a couple courses in college, you probably aren’t what they are looking for.

But “two years of experience” is one of the fuzzier job requirements. If it said “five years of experience” then they are looking for people who have worked in the industry previously as professionals. Two years is short enough that all it means is that they don’t want someone brand new and doesn’t know what they are doing. They are trying to weed out fresh-faced college grads that will apply to jobs in droves because the vast majority of them are terribly underqualified. If you otherwise fit the criteria for the job, then go ahead and apply.

Whatever you do, don’t admit you don’t meet the criteria. That’s like saying “I read the rules but decided they didn’t apply to me.” Just apply. Just remember to only apply to jobs that you believe you’re reasonably qualified for. If you aren’t, your resume may not just end up in the trash but also on a blocklist with a long cooldown timer.

(And yes, I applied to positions that I was not qualified for based on years of experience. I don’t remember if I ever heard back from any of them. Take that as you will!)

As usual, if you have questions about game development, feel free to email me. Sometimes I’ll ask permission to post a question to my blog anonymously if I think it’s something others may want to know.

Q&A: Twine as a Portfolio Piece

I noticed that your personal projects were all game jam entries, and looked like most of them were done in twine? How useful do you think twine is to getting a design job in AAA? Would you use twine to build a portfolio to get a job today? I just get the sense (from job postings) that AAA only wants to see Unity or Unreal projects, and so I feel that any work done on board games and card games is frivolous to the goal of “getting a job at a studio.”

So it’s true: I have a bunch of game jam and twine projects on my side bar as personal projects. However, my website is not really set up to get me a job because – fortunately! – I already have one. They are up here because this is just my website where I want to collect all my game development related stuff in one place.

If you look at my website, my actual portfolio is listed under Professional Work. These are my shipped games. I don’t think any employers, at this stage of my career, will really care about my game jam entries (unless they were deliberately offensive, racist, sexist, etc.).

I do not recommend using twine to build a design portfolio for a AAA job.

I say that with a broken heart, because I make no secret of how much I love the tool. But the work I do in AAA game development is very different than the work I do in twine. I don’t need my side projects to prove to employers that I can work in AAA because my list of shipped games does that already.

I go by the 80/20 rule on a lot of things. If you are a student with a collection of game projects in your portfolio and are applying to a AAA studio, 80% of those projects should be with AAA tools or content in mind, and 20% can be something unusual, unique, and different. That means out of 5 projects, 4 can be Unreal, Unity, or Source levels (or similar) and 1 can be a project that explores the use of economic game theory in a 2D shooter (to use one of my old portfolio pieces for an example). That also means that board games or card games are okay as part of that 20%, but you really need to support their inclusion (did they win awards? Were they showcased at conferences? are they published? can you write about their design in an interesting and engaging way?).

I’d still hesitate to use twine as part of that 20% unless there’s something very complex going on with it (such as developing a system for dynamic narrative) or you’ve gained recognition for that project (as an IGF finalist, for example). Twine MIGHT be okay if you’re applying for a story-focused game company that is a bit untraditional like TellTale Games or Quantic Dream (but I don’t work there or hire there, so I can only guess). But if you are applying to a traditional RPG studio, using a tool like Skyrim’s creation kit or Unreal or Unity will get you a lot further.

Remember that a design portfolio is not just to showcase that you are a good designer, but that you have the technical skills to work in game development. For a AAA studio, that means you absolutely need to show off your design skills using AAA tools.

I’m trying out a new thing where instead of responding to emails about game development privately, I’ll be posting some of the questions – with permission – and answering them here.

Q&A: Which tool?

I am a student in Belgium. My friends and I have decided to create a video game to understand the process and learn to code better.  We are planning to create a RPG, kinda like the early Zelda games with the top-based view, and mix it with movie pieces […], and get a sort of crafting system integrated.  The problem we are having is that we don’t really have a idea what engine / framework has the most functionality to complete our quest to create our first game!

Do you have any tips / frameworks / engines that could be more of use for us?

This is a pretty common question – the specifics change, but it boils down to “What is the best tool in order to make the game I want, considering the skills I have?”

I am a designer, so when I look at frameworks or engines, what I am really looking for are tools that get me as close as possible to the finished game without needing to create a lot of basic behaviors or systems from scratch. A designer may accept a more rigid tool with fewer options if it’s easier and faster to use and gets them close enough to their goals. A programmer may want a tool they can highly customize so they can get exactly to their goals even if it takes more time.  There’s trade offs with both directions, and any given tool is going to give more or less of each.

One person might cut a feature like playing movie-clips (from your example) if it means they could use a much easier toolset to implement the core Zelda-style gameplay. Someone else might decide to use a more difficult tool that they can customize to play those movie-clips, at the cost of cutting some of the puzzles and levels. What choice you ACTUALLY make depends on how core the feature is to your game, how much time you’re willing to spend making it, and whether you have the technical skills to implement it.

Now I started off talking about designer vs. programmer considerations with tools because students have asked me, “What’s your favorite tool for making games?”. The answer is Twine, but I’m unlikely to recommend it to a computer science student because it would be ill-suited to their goals and the technical challenges they want to pursue when making games. Unity 3D is an amazing, versatile engine but I’m unlikely to recommend it to a game design student who has no experience programming because it’s extremely complex and relies on a lot of technical knowledge with no ramp-up that the student may not possess.

Now to answer your specific question about a Zelda-style game with a crafting system –

    • For a designer: Construct 2, for the best ease of use for 2D games, excellent visual scripting language (but no coding, so it can be inflexible), lots of features, lots of tutorials, output to several platforms with a couple clicks (iOS, web, download).
    • For a designer-programmer hybrid: Gamemaker, for a combination of an easy-to-use tool for 2D games, lots of examples and tutorials, and a scripting language (code) allows much more customization.
    • For a programmer: Python and PyGame, as a very popular scripting language for making your own games, fully customizable, with lots of information and tools out there for it. If you, or your team, are mostly programmers or computer science students, this is what I’d recommend (caveat: I am not a programmer!).
    • For an experienced programmer: Unity 3D, though I have no experience with their 2D tools, is fully customizable. If you’ve never made a game before and are just starting out, Unity 3D can be a bit overwhelming. However, it’s surprisingly close to the tools used by AAA devs and a lot of really good, professional independent games have been made in it.

As your very first game, I highly recommend either Construct 2 or Gamemaker – both have free versions with enough features to evaluate them, and both can definitely be used for the style of gameplay you want. I am not sure which is better for a team project when multiple people want to work on it simultaneously: Python might be a better choice for that, so it’s worth keeping that in mind. Again, if you guys feel comfortable with code, then head toward Python and PyGame, but remember that you’ll spend more time laying down the groundwork that a tool like Construct or Gamemaker have already created. (Like I said – lots of trade-offs!).

I’m trying out a new thing where instead of responding to emails about game development privately, I’ll be posting some of the questions – with permission – and answering them here.