Principle Duties / Responsibilities: (Summary list of typical duties and responsibilities of the job / essential functions)
Develop and maintain SCE tools to assist in the development, debugging, and analysis of games, with an emphasis on the GPU aspects.
Work on the user interface / experience by integrating into data sources provided by the back-end graphics developers on the team.
Coach other team members regarding good UI & UX choices and WPF development techniques.
Provide second-level support to game developers; fixing bugs and giving advice as appropriate
Work with the documentation team to create user documentation
Work with the CPU PA/Debug team to ensure a strong integration between CPU and GPU tools
Required Knowledge / Skills: (Lists out the job skills that must be met to perform the position (i.e. Managing subordinates; Knowledge specifications)
Strong C# and WPF development skills.
A solid understanding on good user interface design
Knowledge of graphics APIs and technologies (such as DirectX or OpenGL)
Knowledge of game development, tools used, and the game development pipeline a strong positive
Prior experience with debuggers or performance analysis tools a strong positive
Qualifications: (Lists out the experience, qualifications and education required and preferred)
Required Experience / Education:
BS in Computer Science or related field
6 years experience working on user interface development
1 year experience using C# and WPF for production quality tools
Preferred Experience / Education:
MS in Computer science or related field
Formal training in UI / UX design
7+ years experience working on user interface development
2+ years experience using C# and WPF for production quality tools
Job Specifications: (Required for internal classification - Freedom to Act (what level of autonomy or judgment are freely made in the position; sign-off or budgetary responsibility, what level direction is given from management); Problem complexity in role; and Level of impact the role has to business unit or company)
Freedom to act: (What level of autonomy or judgment is freely made in the position; sign-off or budgetary responsibility and/or what level of direction is given from management)
Engineer is expected to be able to prioritize own tasks but work within the context of a team.
Engineer is expected to take ownership of tasks and seek clarification in areas that are unclear or may require interface to other parts of the system.
Sometimes our priorities and deadlines are influenced externally; for instance, some requirements and deadlines do not come from within our group, but rather come from other parts of the client..
Problem complexity: (What type of complexities are faced in the role)
Engineer will often face inquiries from licensees urgently seeking a definitive answer in order to ship a title under deadline. Often this will result in discussion among engineers, which this engineer must facilitate toward conclusion.
Engineer will gain a very deep understanding of the performance characteristics of our system. In some cases, implementing tools to debug or troubleshoot performance issues will be challenging due to the complexity of the system. Engineer will work with the team to discover solutions to these problems.
Level of impact: (What is the level of impact the role has to business unit or company)
Games are most often judged first by their visual appearance.
Our GPU debugging tools are essential to developers targeting our platforms and are extremely frequently used.
Our GPU performance analysis tools are essential to make sure that games that target our platform are competitive.
Game developers have very high expectations of our graphics tools, just as gamers have very high expectations of our platforms.
Peak Technical - 16 months ago