Software Developer / Embedded Software Developer

GrAI Matter Labs (www.graimatterlabs.ai), a fabless semiconductor company specialized in brain-inspired technology, designs and develops fully programmable ultra-low power neuromorphic HW for sensor analytics and machine learning. The company has offices in Eindhoven (NL), Paris (FR) and San Jose (USA) and has strong relations with top-ranking research groups on neuroscience, human vision and natural computation.

We are looking for Software Developers and Embedded Software Developers to join our Application team based in Paris. As Software or Embedded Software Developer at GrAI Matter Labs, you will develop the software stacks that will drive and exercise the revolutionary AI engines embedded in our product Systems on Chip (SoC). Your software will bring to life ultra-low-power devices in the remotest corners of the internet-of-things.

The Application team is involved throughout the development life cycle of the Neuromorphic Processor, from architectural concept to application deployment in the field. As a member of this team, you will work closely with our system architects, hardware designers, and tooling developers and product managers. As such, you will

  • Contribute to the validation of our Neuromorphic processor architectures,
  • Support the HW design phase by providing test applications,
  • Contribute to the requirement definition of the SW development tools (compiler, IDE, …) for the Processor
  • Support our ecosystem with sample code and libraries.
  • Define and develop real world applications in selected business verticals.

Responsibilities

You will be responsible for run-time software development in the broadest sense, ranging from end-user applications to operating system kernels. You will cover drivers, neural networks, and neuromorphic processor firmware.
Your software and firmware will be applied in the development of end-to-end applications of artificial intelligence SoCs, in various high-growth markets. Our run-time environments will also be used by customer teams to develop end-to-end applications running on our artificial intelligence SoCs.

Requirements

  • Sc in Computer Science, Electrical Engineering, Neuromorphic compute, or related field;
  • Excellent programming skills and knowledge of coding languages (e.g. C++, Python) and development frameworks/systems (e.g. Jira, Git)
  • Experience with software architecture, design and development in a test-driven environment
  • Experience of parallel computing (eg., multithreading, hyper threading, GPU, …)
  • Familiarity with Agile development methodologies
  • Ability to learn new languages and technologies
  • Excellent communication skills in English (both speaking and writing).
  • Excellent problem analysis skills, resourcefulness and troubleshooting aptitude
  • Attention to detail
  • Team player with good interpersonal skills

Nice to have

  • Working knowledge of artificial intelligence, deep learning, and/or neuromorphic computing;
  • Knowledge of one or more of the following fields: video analytics, virtual reality, imaging, natural language processing, digital signal processing;
  • Experience with common requirements management practices;
  • Understanding of hardware development practices and some competence in VHDL and FPGA