What does it take to be a Senior UI Tools Programmer on the God of War team? What key impact will this person have on developers building God of War?
Gullotti: For this role, there needs to be an equal amount of knowledge and passion. There are a lot of diverse challenges in a game studio, where the majority of the tools are either built in-house or are heavily customized. A high level of knowledge is required as a foundation, not only to approach every problem with a critical mind, but to deconstruct it to the fundamental elements, design a streamlined workflow and express it through a well-balanced user interface. Passion fuels the drive to experiment and get to the most efficient solution. The person in this role will need to persevere in testing and iterating multiple times, taking into account users' feedback and suggest best practices to improve their workflows.
Hagen: Games are also getting more and more expensive and complex to make. We need to think about that complexity and find ways to give our game programmers tools to help identify what to do as quickly as possible, allowing them to make changes as quickly as possible. Like Enrico mentioned, a potential Senior UI Tools Programmer needs to have a passion to make an impact; a want to make this change.
Gullotti: Also, in the studio, you can find extremely talented people in every kind of discipline. Well-designed tools and interfaces are meant to provide them with instruments that boost their productivity and the quality of their work, which directly impacts the final product. I personally enjoy seeing artists and designers use the tools I wrote without effort, coming up with ideas I never thought of and pushing the content creation to the limits. To them, the interface is the actual tool, and a great experience leads to excellent results.
There needs to be an equal amount of knowledge and passion. There are a lot of diverse challenges in a game studio, where the majority of the tools are built in-house or heavily customized. A high level of knowledge is required as a foundation to approach every problem with a critical mind.
What kinds of skills are we expecting a great Senior UI Tools Programmer candidate to have on our team?
Hagen: Skills that we're expecting include a strong technical acumen in C++. We also want them to be familiar with user interface building tools: things like QT or WPF. We want them to know what modern technologies are. But, on the other side of it, we also want them to have a certain level of people skills because UI is a very human effort. A Senior UI Tools Programer will be trying to help people interact with a toolset. We want this candidate to be able to talk to people and understand their needs; someone who is approachable, which is key to getting the job done. It's not necessary that you have to speak on a technical level, but we definitely want someone who enjoys working with people. Some of the people this candidate will work with may not know exactly what they're looking for, and it is part of the job to help them understand that.
Most of your time should be spent listening because it's a customer-driven role. You're building something for someone to use, so they're your boss. It is a leadership role in that it's a senior role, and you're developing something to drive towards solving a problem, but the actual role consists of listening to people, letting them tell you what they need and helping them understand what they actually want. Often times, people will ask for features or ask you to create something, but they didn't think about it all the way through or only understand parts of it. As a Senior UI Tools Programmer, your job is to be an arbitrator. You have to be the type of person who will be able to deal with all sorts of problems.