Senior lecturer Ellen Guon Beeman can distinctly remember the moment in her game development career when she became a fervent believer in the power of code samples. It was the early 2000s, and Beeman had recently joined Monolith Productions as a producer for The Matrix Online, a massively multiplayer online role-playing game.
“We were interviewing a lot of junior programmers, and I knew nothing about DigiPen at that point,” Beeman says.
While sifting through résumés, she came across the application of Nate Cleveland, a DigiPen student from the BS in Computer Science in Real-Time Interactive Simulation degree program. Beeman was awestruck, but not because of the résumé itself. Rather, she was taken aback by the sample programming code that was included with said résumé.
“It was the A* pathfinding algorithm, written in Python, and he had done the research. He knew we were using Python on The Matrix Online, and so he wrote a code sample that was just perfect,” Beeman says. “I just looked at it and thought, ‘This is gorgeous! We have to interview him.’ And that really was the moment for me, because we’d had a lot of applicants come through — not many with code samples.”
Similar to an online portfolio for a digital artist or published writing samples for a writer applying to a writing job, a software developer’s code sample is a brief example of their work — intended to showcase to an employer that they know how to solve problems through clean and efficient programming.
After acing the interview, Cleveland got the job and would eventually go on to an illustrious career, first at Monolith and now as a technical director for King — makers of Candy Crush Saga — in Stockholm, Sweden. Beeman, of course, would go on to join the DigiPen faculty in 2014 to help teach new generations of aspiring game developers how to chart their own paths to career success.
Though Cleveland’s code sample has been lost to time, the memory lives on in part through a new book titled Code Samples: The New Professional Programmer’s Guide, authored by Beeman and filled with tips and best practices on how to impress prospective employers through well thought-out code snippets. As someone who has written for classic video games and TV shows, as well as four well-regarded sci-fi novels, Code Samples is Beeman’s first technical book — albeit one that a reader could reasonably get through in one sitting.
The book contains helpful insights from industry veterans at studios like PopCap Games and ArenaNet, as well as from DigiPen alumni such as Christopher Onorati (2018), Justin Riccardo (2016), and Cal Reinhard (2016).
“I’m fortunate that I have a lot of wonderful industry colleagues who were happy to help on this,” Beeman says.
For employers, getting to examine the programming applicant’s code samples and question them on their methods and decisions during an interview is no minor thing. It can be crucial to avoiding disaster, or as Beeman describes in her book, “The Nightmare Programming Hire” scenario. She goes on to cite one example from previous experience of an untested programmer who made it through the hiring process and went to work on a high-profile project — only to have their terrible habits and lack of skill be detected well after the fact. It resulted, she writes, in almost a year’s worth of that programmer’s work being scrapped from the codebase.
“And I wish I only could cite one in my career, but I could tell you more nightmare programmer stories of people who just didn’t think things through, didn’t communicate, didn’t test their work, and caused us huge problems,” she says. “The one that I cited in the book is actually kind of a best-case scenario, in that we only ripped out a year of his work. There’s another one where it tanked the project.”
Despite having some experience working with and contributing code in previous jobs, Beeman admits she’s not a professional programmer. In fact, she notes in the book, it’s just as important to make sure that a code sample looks good to a non-programmer as a programming expert, because the first person to examine the application might be someone from human resources or, as in Cleveland’s case, a producer like Beeman.
“I review a lot of students’ code samples for their portfolio websites,” Beeman says. “And I’m not capable of saying you picked the best possible physics solution or the best algorithm for solving this problem, but I can sure tell you that the typos need to go, that your comment ratio is insufficient, that it’s hard to follow what’s going on, or that your variable names could make more sense — they’re a little obscure. Stuff like that is what the non-technical recruiters are going to see.”
Fortunately, Beeman knows from experience just how capable a DigiPen-educated programmer can be by the time they graduate. With the book, she hopes to give those soon-to-be graduates an extra boost to help them stand out even more.
“My whole goal with all of this is that, ideally, one of our alumni gets to the point where the company has looked at their portfolio website and said, ‘We want to hire this person! We just have to actually interview them,’” Beeman says. “The company already knows that they want you, and then the interview is more of a formality.”