Rare's Nick Burton on Getting Into Programming

By Jill Duffy [11.02.07]  Nick Burton is a senior software engineer at Rare Ltd., the studio that not long ago brought us Viva Piñata. He spoke recently at the Game Career Fair in London about having a career in game programming, and shared some of his advice about breaking into the field professionally.

Burton has been with Rare for nearly 10 years, a long stint seeing as many developers change jobs after about three or four years with a company. "Before [working at Rare], I trained as a computer scientist and did my time in university research, but now I do a lot of recruitment, interviews, things like that at the studios," he told the Career Fair audience. "So I think I've got some good insights for people like you."

Burton explained some of the basic principles of computing and core skills, and why they're important to the game programming profession. "Math and logic," he says, "are forever. But things like Visual Studio, Visual Basic, XNA ... they come and go. They're transient. So we want to concentrate on core skills."

Burton had some tips for students and young professionals who still need to either put together or polish up their resumes and CVs. The core skills a programmer applicant would want to emphasize, he says, are maths. "If you want to be a good software engineer, you have to have good maths," he says. "If you don't have it yet, take some remedial action."

Beyond math, applicants should list their software engineering training, logic and problem solving abilities, object-oriented programming knowledge, C and C++ competency, and experience working with data structures. "These all need to be on your CV as well," he says. Software engineering training may seem out of place on this list, but according to Burton, having the experience shows that the applicant can function in an environment that's at least similar to game development. "Software teams are from 10 to 40 people ... and have many lines of code. ... If you don't have some software engineering background, you're going to have trouble" because the game making environment will be completely foreign to you.

Depending on the kind of software engineer or programmer an aspiring developer is aiming to be, there are a few other skills and competencies that one would want to highlight on a resume or CV.  For example, AI programming (from an academic perspective); concurrent programming -- "not even the hardware, but concurrent programming from a basic point of view," adds Burton; graphics programming ("It also gives you a grounding for programming at a low level"); debugging techniques ("If you're taught debugging at university, pay attention because it's a difficult thing to learn"). 


 Programmer Skills: Core Competencies
Burton also came up with a list of skills that aren't core skills, meaning they are not necessary, but are helpful if you happen to have them. His list includes: C# or Java, which simply are not dominant programming languages in game development; Visual Studio, GCC, or XNA; program management, which is "nice to know, but as soon as you get into the industry, you will know how that works"; console experience ("I see time and time and time again students clamoring to get experience on a particular console ... It doesn't matter at all. Everything I need to know to be a games programmer I can do on this £500 laptop right here"); 3D modeling on 3ds Max or Maya. These things will look great on a resume or CV, but they are not the core skills. "You need to target where you spend your time," says Burton.

"One thing you may notice is completely missing that some of the universities have started to bang on about is soft skills," says Burton, referring to non-technical skills such as honesty, interpersonal skills, time management, written and verbal communication, humility, team work or collaboration, flexibility, respect, and leadership.

There are many people on a team, and developers typically spend between one and three years with them working on a project, often more than 40 hours per week. "People skills become as important as your technical skills," he says. "It's difficult to say that in a CV," but an applicant should stress these points using clear examples and anecdotes in an interview.

When it comes to actually working in a studio, Burton claims that the university experience can never truly prepare someone for what it will be like. The scale is larger, the resources are more plentiful, and the demand to create top-level work will be more evident.  However, the software environment is not too different in terms of working in Visual Studio, he says, "but you will be working on many many more lines of code." He adds, "But when you start out, the bit of code you'll be working on will be only maybe one object ... [At Rare], we take three to six months to ease you into this process ... and only when you're ready do we unleash you onto a game team."

Burton finished his talk with some tips for how to write a CV or resume, and what to do during the application and interview process.

 Nick's Top CV/Resume Tips

  1. Have good grades and put them on your resume.
  2. List the right skills. You must aim the right kinds of skills you have at the right developer. "If at first you don't succeed, try again and try for the right developer."
  3. Be concise. The person reviewing the resume may be reviewing a stack of them. Highlight your outstanding skills. "This is me; this is what I can do well."
  4. Relevant project work. Tell about the details of one project, and make it the one that's most relevant to the job you're being considered for.

Nick's Top Application Tips

  1. Target your application.
  2. Be honest.
  3. Provide back-up material (demo reels, portfolios). Highlight these in any applications.
  4. Include demo work. "There's lots of different kinds of demo work, but include your best work, and only a bit of it." As part of that, when showing a group project, identify what you did. "Make sure you include code samples and write a covering letter or FAQ with it."

Nick's Top Interview Tips

  1. Create a good impression. Show up on time. Turn up clean and tidy, but don't wear a suit. "I say this because people don't."
  2. Relax. "The most important thing -- I can't stress this enough; it should be in flashing neon letters -- try to relax. By the time you get to this interview, everyone wants you to do great in the interview." If you're in a firing squad-type of interview, bear in mind that you can ask yourself whether you really want to work with the kind of people who would put you through a tumultuous experience when they know you're likely to be nervous.
  3. Expect to be tested or given an entrance exam. "It's normal. It's normal for almost all developers to do this now. All we're trying to ascertain is whether what you've said on your CV is true." Brush up on your core skills, and review your math and logic.
  4. Be yourself. "This is of the utmost importance. We're trying to find out who you are. Don't try to be the person you think the interviewer wants you to be." You're not expected to be great right off the bat -- only to have potential.

Return to the web version of this article
Copyright © UBM TechWeb