C++ Software Engineer (Runtime Environment)

IL

Description

NextSilicon is reimagining high-performance computing. Our accelerated compute solutions leverage intelligent adaptive algorithms to vastly accelerate supercomputers, driving them forward into a new generation. Our new software-defined hardware architecture enables HPC to fulfill its promise of breakthroughs in all fields of advanced research. 

At NextSilicon, everything we do is guided by three core values:

  • Professionalism: We strive for exceptional results through professionalism and unwavering dedication to quality and performance. 
  • Unity: Collaboration is key to success. That's why we foster a work environment where every employee can feel valued and heard. 
  • Impact: We're passionate about developing technologies that make a meaningful impact on industries, communities, and individuals worldwide.

We are seeking an experienced and highly skilled Software Engineer to join our Core Software group to drive forward the development of the full software stack and architecture behind our revolutionary coprocessor. You will demonstrate creative and critical thinking capabilities and have a genuine passion for tackling complex low-level software issues.

As a part of the Runtime team, you will work on design and implementation of new and enhanced features of the runtime/embedded OS stack to support high performance computing and AI applications in the Maverick accelerator runtime environment.

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.

Requirements

  • 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
  • Experience with IPC, and multi-threaded programming
  • Experience with Embedded Linux environment
  • Excellent communication and teamwork skills
  • Ability to work in a multi task and dynamic environment
  • Strong problem solving skills and the ability to analyze and debug complex issues
  • Advantage - Deep knowledge of processor architectures—such as CPUs (x86, ARM, RISC-V), GPUs, DSPs, or TCUs
  • 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

Responsibilities

  • Work on design and implementation of new and enhanced features of the runtime/embedded OS stack to support high performance computing and AI applications
  • Develop the runtime environment for accelerating massively parallel applications execution and handle OS/device process and thread lifecycle
  • 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

NextSilicon is proud to be an Equal Opportunity Employer. We do not discriminate based upon race, religion, color, age, national origin, gender (including pregnancy, childbirth, or related medical conditions), sexual orientation, gender identity, gender expression, genetic information, status as a protected veteran, status as an individual with physical or mental disability, or other applicable legally protected characteristics. This policy applies to all employment practices within our organization, including hiring, recruiting, promotion, termination, layoff, recall, leave of absence, compensation, benefits, training, and apprenticeship. NextSilicon makes hiring decisions based solely on qualifications, merit, and business needs at the time.

Send us your CV
jobs@nextsilicon.com
Good luck!

For any questions please ask us at questions@nextsilicon.com