Senior Software Engineer (Embedded / C++)

Overview

Hybrid
$140,000 - $160,000
Full Time

Skills

PCIe
Linux
Linux driver
C/C++
C++
embedded
programming
softeaere
hardware
ASIC
kernel
SoC

Job Details

JOB DESCRIPTION

  • The Senior System Software Engineering is a very high-profile, challenging and exciting role within Analog Inference.
  • We are looking for highly motivated individuals that participate in technical discussions within cross functional teams, architecting, designing, and implementing System Software components, such as embedded firmware, PCIe Driver, and low-level System programs, for a series of Inference Accelerator Engines implemented in Silicon.
  • Candidates for this role need to be highly motivated, self-sufficient, and possess strong leadership attributes.
  • Excellent technical and communication skills required; must be able to understand and articulate System Software technical requirements to a wide range of audience.
  • The position is full-time and presence in office for at least 3 days a week is required.

CORE RESPONSIBILITIES

  • Participate in the architecture of run-time System Software, and customer's application interface with Inference Engine Accelerator through PCIe Driver and embedded firmware.
  • Manage the build and minor customizations of Linux Kernel.
  • Design, implement, and maintain the PCIe Driver's DMA and MSI functionality.
  • Design, implement, and maintain the System Service program which manages data flow between customer's application and Inference Accelerator Engine.
  • Design, Implement, and maintain embedded programs in C for the management of SoC hardware in the Inference Accelerator, based on specified algorithms
  • Design, Implement, and maintain components of a Web Based Dashboard Program, for the remote management of Inference Engine's Host platform.

QUALIFICATIONS

  • S. in Electrical or Computer Engineering with 10 years of related experience, or Masters degree with 7 years of related experience
  • Good knowledge of C/ C++ programming and Assembly Language (any processor,)
  • Good knowledge of embedded programming in C, and the ability to collaborate with hardware engineers on matters related to ASIC hardware and System inner-working
  • Extensive knowledge of Linux, and ability to manage the build and minor customization of Linux Kernel
  • Extensive experience with PCIe, and PCIe Linux Driver
  • Experience or working knowledge of HTML