The Role
Job Description
You will be joining our Performance Tools team, who design and develop the tools that games developers and application developers use to profile and debug their work for optimum performance, enabling the next generation of mobile games and other innovative graphics applications.
Are you passionate about mobile gaming, interested in building tools that help developers improve the efficiency of their games, or do you have an interest in the processes used in the development of graphics for applications? Then this role is for you, allowing you an in-depth view of the processes used by developers to create to graphics in applications and a role in shaping the tools those developers are using.
We are looking for a strong graphics API developer to join our team working on our newest graphics tool.
Working collaboratively as part of the Performance Tools team to extend, develop and maintain our suite of tools or to contribute to the design and development of new profiling tools
Responsibilities:
1. Understanding the processes used by the developers using our profiling tools
2. Contribution to the development of new features, including work planning, feature design, and consideration of User Experience / work flow
3. Design and development of new profiling tools and methodologies
4. The creation of automated tests, contributing to our DevOps pipeline to maintain the fast cadence and high quality of our releases
5. High quality engineering through approach reviews, code reviews and following modern agile software development process
6. Mentoring and coaching of junior team members
7. Documentation of designs / implementations
Required Skills and Experience:
8. Strong expertise in Vulkan or other similar graphics APIs
9. A strong understanding and practical experience of modern C++ programming
10. Strong abstract reasoning skills with an ability to focus on key concepts at all levels of detail.
11. You should be motivated, an independent problem solver, technically versatile, willing to be flexible and accept new challenges.
12. The ability to identify risks and propose mitigation strategies
13. Effective verbal and written communication skills
14. The ability to work alone as well as in a team
15. The desire to take ownership and accountability at work
16. Experience with scripting, in a language such as Python, and using the Linux command line.
"Nice to Have" Skills and Experience:
17. Experience developing games using Unity, Unreal, Godot or similar engines
18. Understanding of different computer graphics techniques and understand the associated tradeoffs
19. Exposure to ML / AI
20. Experience with OpenCL / Cuda style compute solutions
21. Android development experience
22. Experience working cross site
Do you think you could contribute to our team? Even if you don't meet all these requirements we would love to hear from you!
In Return
With offices around the world, Arm is a diverse organisation of dedicated, innovative and highly talented professionals. By enabling a vibrant, inclusive, meritocratic, and open workplace, where all our people can grow and succeed, we encourage our people to share their unique contributions to Arm's success in the global marketplace.
We are an Equal Opportunity Employer and do not discriminate against any employee or applicant for employment because of race, color, sex, age, national origin, religion, sexual orientation, gender identity, status as a veteran, and basis of disability or any other federal, state or local protected class.
We will ensure that individuals with disabilities are provided reasonable accommodation to participate in the job application or interview process, to perform essential job functions, and to receive other benefits and privileges of employment. Please contact us to request accommodation.
#