Senior Embedded Software Engineer

Recogni
Apply Now

Job Description

As a senior member of Recogni's embedded software team, you will be responsible for implementing the software that runs inside a high-performance and low-power convolutional neural network accelerator ASIC that forms the core of the company's flagship perception module product for autonomous driving applications.

Running in the ASIC, this software orchestrates the computational accelerators and system interfaces to form an end-to-end vision perception module that achieves record-breaking computational performance at low power, interfacing with an autonomous vehicle's central path planning system from multiple points on the vehicle. Your responsibilities will be wide-ranging and and run the gamut of full firmware lifecycle including design, development, debugging and ongoing sustaining engineering.

Responsibilities

  • Work as a principal technical contributor in the definition, design, implementation and verification of the embedded software of a high-performance AI-based camera and perception module for ADAS systems.
  • Utilize formal design processes to develop embedded software that meets the high-reliability and functional safety requirements of the the perception module.
  • Contribute to the selection, integration and debug of real-time operating systems (RTOS).
  • Integrate (or develop where necessary) low-level I/O drivers (e.g. Automotive Ethernet, USB, GPIO, etc.).
  • Implement cryptographic integrity checking, secure boot (with hard time-to-operational requirements) and over-the-air update lifecycle functionalities for the embedded software.
  • Collaborate with hardware engineers designing application-specific integrated circuits (ASIC) in the selection of embedded CPU cores (e.g. ARM, RISC-V, etc.), as well as supporting functionality variants of those cores (e.g. MMU, MPU, VLIW vector units, etc.).
  • Perform system bringup, debugging and testing.
  • Perform requirements analysis and author high-level and detailed requirements.
  • Troubleshoot software issues and fix defects.
  • Write test specifications and integration tests.
  • Architect and maintain automated software build flows, integrate with continuous integration (CI) systems, and author scripts and utilities.

Qualifications

  • B.S. (M.S. preferred) in Computer Science, Electrical or Computer Engineering or a related field.
  • 3+ years of experience developing embedded software.
  • Excellent proficiency in C/C++ programming coupled with a genuine passion for embedded software development.
  • Experience with low-level RTOSes (QNX, vxWorks, ThreadX, etc.) and developing device drivers for them.
  • Experience with embedded development IDEs and debuggers (gdb, lldb, etc.) and JTAG-based debugging.
  • Experience with embedded development tool-chains and cross-compilation methodologies.
  • Experience with multiprocessor-based embedded systems.
  • Experience with software architecture, development and testing best practices.
  • Experience with automated software testing systems for embedded systems.
  • Experience with with standard hardware blocks and protocols (MIPI, PCIe, USB, GPIO, I2C, SPI, UART, MMU, DMA, etc.).
  • Some experience working with safety critical systems with exposure to DO-178C or ISO 26262 preferred, but is not a must.
  • Demonstrable proficiency with test equipment relevant to embedded product development (JTAG, logic analyzers, scopes, etc.).
  • Ability to comprehend hardware specs and schematics.
  • Familiarity with version control systems (expertise in Git is strongly-preferred).
  • Self-starter and highly-motivated to work in a dynamic start-up environment.

Reasons to consider joining Recogni:

  • Ground floor opportunity with the team; be part of shaping one of the most exciting new companies.
  • Learning and development opportunities from a highly diverse and talented peer group, including experts in a wide range of fields, from Artificial Intelligence & Computer Vision to Systems & Device Engineering.
  • Competitive benefits package including 401k, Medical+Dental+Vision+Life insurance, and Short+Long Term Disability coverage
  • Perks including meals, snacks, drinks and us!
  • Sharp, motivated co-workers in a fun office environment
  • Employee Stock Plan
  • Flexible work hours & generous PTO policy

Recogni's culture was built on the following values that are equally important to us as business:

  • Put people first. We only succeed when our people succeed.
  • Ethics and integrity always; Being open, honest, and respectful of everyone.
  • Think Big. Be ambitious and have audacious goals.
  • Aim for excellence. Quality and excellence count in everything we do.
  • Own it and get it done. Results matter!
  • Make Each Person Better together than they would be as an individual.
  • Embrace each others’ differences.
  • Embrace that there will be differences.

Company Info.

Recogni

The automobile industry has arrived at a crossroads. The transition to electric vehicles (EV) and the vitalized development of fully-autonomous vehicles (AV) has placed a big burden on fitting extraordinary amounts of computational power for artificial intelligence within the energy budget of batteries without affecting range. While battery technology is improving slowly, advances in compute efficiency have stalled as mere Moore's Law scaling of

  • Industry
    Computer hardware,Autonomous technology
  • No. of Employees
    200
  • Location
    San Jose, CA, USA
  • Website
  • Jobs Posted

Get Similar Jobs In Your Inbox

Recogni is currently hiring Software Engineer, Embedded Jobs in San Jose, CA, USA with average base salary of $160,000 - $240,000 / Year.

Similar Jobs View More