You will work closely with software engineers, hardware engineers, compiler developers and other stakeholders to enable the most efficient execution of applications on a large scale, multi threaded and highly distributed system across multiple disciplines with a deep OS Internals point of view.
Responsibilities:
Work on design and implementation of new and enhanced features of the memory system for the Maverick accelerator.
Develop a high performance, low latency distributed unified virtual memory management system.
Work on system software support for the next generation Maverick system.
Define feature development scope and plan for successful product delivery.
Wide system impact through collaboration with software engineers, hardware engineers, compiler developers and other stakeholders.
MSc/BSc in Computer Science or other equivalent educational experience.
3-5 years of advanced C++ experience, with excellent coding skills.
Deep understanding of the internals of operating systems, IPC, and multi-threaded programming.
Familiarity with device and memory management in operating systems.
Experience in Linux kernel development.
Ability to work in a multi-task and dynamic environment.
Excellent communication and teamwork skills.
Strong problem-solving skills and the ability to analyze and debug complex issues.
Advantage – Familiarity with and passion for any of the following – machine learning, compilers, parallel programming, high-performance and massively parallel systems, processor and computer architecture.