What is the interview progress for a junior gameplay programmer?
The process for hiring a programmer is fairly standard, regardless of the programmer’s specialty (gameplay, graphics, network, engine, etc.). It usually goes something like this:
1. We get your resume somehow (either from your submission or a recruiter or something) and decide we think you have enough experience doing the work we need someone to do. Those who we think have sufficient experience get called back. Those who don’t do not. We usually only have enough interviewing/team bandwidth for so many candidates, so we typically pick who we think are the best of the batch and discard the rest.
2. One of our recruiters/HR people calls you to see if you’re actually interested in the job and to ask a few basic questions - are you still looking for a job, your career goals, whether you’re willing to relocate, what kind of salary requirements you might have, etc. They’ll also answer your general questions about the job and working for the company if you have any. Not everybody wants to work for us - sometimes the job isn’t what they expected or they just have different career goals.
3. Assuming you want to move forward with the application, we usually then move on to the screening process. This is either a technical phone interview or a take-home programming test (sometimes timed) or both. The take-home test usually has some number of general programming and/or math questions and asks you to write some code. Our engineers will look over your test answers and judge them for correctness (whether your answer works), algorithmic complexity (whether your answer solves the problem quickly), and clarity (how easy it is to read and understand what your code is doing).
The phone portion of this step is where you begin talking to actual devs who are on the team, typically senior or lead team members who are there to assess your skills. We usually ask two kinds of questions at this point - questions about things on your resume like why you made certain decisions and specific things you did, and short-answer technical questions to gauge your practical programming knowledge - data structures, algorithms, familiarity with concepts, and so on.
4. After passing the screening process, we move on to the face-to-face interview portion - typically the last step before we decide whether to extend a job offer. Usually this involves meeting with the team and the leadership. You will usually be asked technical questions but from more of an architectural perspective - to determine how you design systems and arrange data, rather than the smaller nitty gritty implementation details. This typically involves solving whiteboard problems while other engineers observe you and answer questions about the problem you might have. The problems here tend to be more open-ended in order to assess how you approach problems and think about them.
It’s worth noting that the testing process for (and therefore criteria for passing as) a junior programmer is much more forgiving than a mid-level or senior position. That is how we usually assess results - after everything is said and done, we estimate what experience level we think you are and whether we think you’re a good fit with the team. If you do well enough in step 4 to demonstrate you’ve got the skill set we expect and that you can communicate with our team, you usually get an informal job offer from the company within a day or two. This is where you get to negotiate things like salary, benefits, start date, etc. if you wish. If you tell us you’re interested, you’ll get a formalized offer letter to sign and return within 24-48 hours, and then you’ll start working for us on your start date.
[Join us on Discord] and/or [Support us on Patreon]
The FANTa Project is being rebooted. [What is the FANTa project?]
Got a burning question you want answered?
- Short questions: Ask a Game Dev on Twitter
- Long questions: Ask a Game Dev on Tumblr
- Frequent Questions: The FAQ