User Interface Programmer
Few gamers may consciously appreciate this person as a contributor to their overall entertainment experience, but players will most certainly notice the exhaustive effort put forth by the user interface programmer—for better or worse. A bad UI is a game-killer, but an intuitive and consistent interface greatly supports the enjoyment factor and replay value.
This person is under the supervision of the senior UI programmer and user interface designer, and is responsible for writing and implementing code for the game engine. Processes vary by studio, but UI typically begins with graphic representations provided by the designer and translated into flowcharts that illustrate how the player will navigate menus in the game and on the front end. It is then the UI programmer’s task to produce the code that will enable navigation and function of menu options. The UI programmer may also be charged with porting graphic elements of the interface. He or she works closely with multiple departments, including art and sound, to apply features like volume control, video settings, and character costume selection. The UI programmer also works collaboratively to develop APIs (application programming interface), the methods by which components of software systems communicate and interact with each other. Part of the challenge is executing the design plan while maintaining robust, sustainable code that efficiently uses game engine processing power and is free of errors. The object classes and protocols must play nicely together and be flexible—or easily modified—to fit different operating systems and consoles. The UI programmer is expected to test and debug user interface elements during production and work closely with quality assurance testers to identify and devise fixes when necessary.
Skills & Education
Creating strong user interfaces requires an engineer who is both adept at programming and conscious of the player’s expectations. A college degree in computer programming, game design, or a related field is necessary; coursework in advanced mathematics, developmental psychology, and fine art or graphic design is highly recommended. A great UI programmer has the imagination to conceive of innovative interfaces and the technical expertise to implement them. You must possess proficiency in C++, XML, or Python, and game engines like Unreal, and you’ll be expected to have a strong knowledge of Scalefrom and Action Script.
What to Expect
To prepare for this job, play a lot of games. OK, so you’ve got that part down—now you have to start looking at the games you play from a new perspective. What UI elements do you find the most helpful? Which are the least user-friendly, and how would you improve upon the concept? There are prevailing theories of user interface design within each studio, and you’ll have to understand the differing philosophies, but also consider areas for improvement. At all times, keep the player in mind. To get a gig at a major studio you will need at least three years of programming experience on current-generation consoles and a strong background in object-oriented coding. However, work in any area of software engineering or game programming is excellent preparation for a lateral move or a step up to this role. Take an entry-level job or internship with your company of choice, then network and look for every opportunity to learn and demonstrate your skills and enthusiasm. Eventually you will find the opening to advance or make a move to another studio.
Have some feedback for our editors? Contact Us