Ubisoft Graduate Program: Tips from our UbiGrads

Earlier this month, four Ubisoft graduates hosted a special Q&A event on Facebook and shared their experiences from the Ubisoft Graduate Program – a two year program designed to accelerate careers in the gaming industry. From details on their daily responsibilities to tips on how nail the interview phase, we took some of the most popular questions (and answers) from the Q&A event and posted them below.

On Programming

Can you tell us more about the position and what you have worked on?

Sebastien (Online Programming): As an online programmer, I deal with the network engine: How it runs internally and how it is used in the game by gameplay programmers. For example, in my team we solve issues related to object replication, voice chat, and bandwidth consumption… we’re involved with many aspects of the game, and small changes can have a huge impact on the game behavior! At the moment I’m developing a tool that checks online services. It means I need to learn a lot of different software and tools for compilation/deployment… all the while ensuring it works for consoles too, which involves many specificities. It’s complex and challenging work. I love it!

Zachary (Gameplay/AI Programming): So far, I’ve worked briefly on Watch Dogs 2, and a few titles that we’re super stoked about. I’ve worked on weapon systems (dispersion, fire pattern, modifiers, etc.), gameplay-level networking strategies, simple AI, pseudo-physics, UI, and core gameplay systems (like Watch_Dogs 2’s hacking system). I think it’s a better gig than 99.999% of the other jobs on this planet!

What was your degree and to what extend did it help you in your graduate program?

Zachary: I have a degree in Biochemistry, and a degree in Pure Mathematics. The first degree helps me eat right. The second degree was one of the best things I could have done. It’s just pure problem solving and critical thinking. Math is everywhere in computer sciences, and having a good basis in it allowed me to learn CS subjects without having to shy away from anything mathy. Video games lean even more heavily on basic math than most programming disciplines, so it’s been my way of creating a niche for myself.

On Project Management

grp_gp2_1

What was your background before joining Ubisoft? And what are the two most important skills that you acquired since you’ve joined the program?

Carlos: Before joining Ubisoft, I did an apprenticeship as a business analyst for a big tech company while finishing my Masters. I also had some internship experiences in market studies and media project management before that. I would say the two most important skills I have acquired are flexibility and delegation. It might sound trivial, but it really takes a while to get in a manager mindset, rather than contributor!

Nelly: My background is in animation, and I have both artistic and project management experience from working at animation studios. Before joining Ubisoft, I worked at Rovio Animation Studio’s for a while, both in Finland and Shanghai (internship). During this time I was also finishing my studies. I have definitely become more proactive while working at Ubisoft. Actions do have impact here, which is great. I have also become more confident in making decisions.

I’m concerned with my lack of knowledge in tech and creative topics. Did any of you had previous experience in game creation?

Carlos: Not many of us had previous experience in creative jobs, but that didn’t turn out to be a problem because the teams at Ubisoft are usually very available and people take the time to train you and explain what their jobs are. Also, you will be able to rely on leads who are there to bring you technical expertise for the teams that you manage, as well as your direct manager. In a nutshell, you will have a good onboarding and support all along the way.

Nelly: Agreeing with Carlos, here. During your first weeks, talk to everyone and ask what they do! I have a background in art, so I was very familiar with the artists’ tasks, but I didn’t have a clear idea of what exactly the programmers were doing and I learned lots just talking with people.

Selection Process – Programming

Can you tell us more about the selection process? What tests did you take?

Sebastien: The first step was a one hour technical test in C++, dealing with many aspects of programming: problems solving, debugging, optimization… Then I had a quick interview by phone, followed by a face-to-face interview in the Paris studio. It was with the technical director and an HR representative, so questions asked were to test both my tech and social skills. The goal is to see how you behave in a team, how you deal with issues, what your profile is (gameplay-oriented, tech/tools, low-level). My final interview was on Skype with an online programmer in Toronto, with further technical questions about online concepts.

What tips can you give us when preparing for the interview and technical questions, especially for Gameplay Programming?

Zach: Well, I’d go into it expecting that, on top of their interest/experience in video games, everyone applying is able to showcase proficiency in: a) programming in C, C++, or assembly; b) algorithms & data structures; c) operating system concepts; d) computer architecture & hardware; e) basic math. Make sure you have your bases covered.
As for the technical interview: Do every question in Cracking the Coding Interview by Gayle Laakmaan McDowell, and do them under time-pressure. Assume other applicants already have. This will point out any weaknesses that you need to focus on. In addition, you should brush up on your linear algebra, and be prepared to think about game-type questions. For example, strategy to detect a collision between a sphere and a plane. Hardware can set you apart (see Computer Architecture, Fifth Edition: A Quantitative Approach by David A. Patterson). Since I also get hugely anxious during interviews, I highly recommend doing a mock interview with a friend. The difference between answering a question by yourself vs. with someone else watching, is huge. Best to just be prepared!

I’m applying to the Gameplay Programming track: do I need to have a game to show?

Zach: It’s not mandatory, but definitely wouldn’t hurt your chances! When I applied, I had written 2 ½ games. I was never asked to showcase them or demo them. What I was asked about was the types of problems I encountered, and how I solved them. Realistically, I learned a ton from doing a small game from start to finish, and can’t recommend it enough. It gives you firsthand experience with the various systems, how they work together, and what issues creep up. For me, it was much better to try myself, make mistakes, and learn from those mistakes than being told, “Here are the systems, and this is how they work.” I’d highly recommend checking out www.handmadehero.org. – it’s an amazing intro to programming video games from scratch (no libraries, or engine). Also, I’d highly recommend trying to code your own small game from start to finish; even something like a Pacman clone (http://ubm.io/1aZCrte) to try and work out how the various systems work together.

Selection Process – Project Management

What advice would you give to impress the recruiters? Is it mandatory to have previous experience in the industry?

Carlos: I believe that showing the recruiters you have good knowledge of the video game industry is key to entering the program, and you don’t necessarily need previous experience in the industry for that. Just show that you are passionate and have done your research. On the other hand, it is important to show you have had previous experiences that helped you grow and I think that’s where you can turn your experience in other industries to your advantage! I didn’t have any experience in video games before joining the program but during my interviews, I showed that I knew the industry well and that my previous internships helped me have a fresh eye on things.

Nelly: Have examples of your experiences that strengthen those statements. If you say you work well under pressure, tell them why. Tell them what you think is important in managing a project and a team, and why you would be good at it.

Frequently Asked Questions

There’s no Ubisoft office in my home country. Am I eligible for this program?
You don’t necessarily need to live in the country of the office you are applying to, but you should think about your application carefully. The office you are applying to is the one you will come back to after your year abroad, so it’s likely to become your home for a few years at least!

How is the move to the second year studio decided?
Different options are discussed with the graduates, their studio HR, and manager to find the best fit and make sure that it will provide a full experience on the job. Criteria such as project and production stage are taken into account, as well as studios’ needs at the moment of the decision.

The limit of one year previous professional experience is as of when?
You can’t apply if you have more than a year experience at the time of your application. It is recommended (but not mandatory) to have less than one year experience when the program actually starts. However, this doesn’t include internships or student jobs.

Is it a paid internship or a full-time position?
The Graduate Program offers successful candidates their first job (it is not an internship!). This means that when they enter the program, graduates become full-time employees.

If you’re looking for more info on the new track in UX Design, keep your eyes peeled: there’s more to come on the Ubiblog soon! Visit our official website to apply: ubisoftgraduateprogram.com