Post Job Free
Sign in

Senior Embedded Software Engineer

Company:
Volley Automation
Location:
South San Francisco, CA, 94080
Posted:
April 20, 2024
Apply

Description:

Job Description

Volley is seeking a Senior Embedded Software Engineer to lead the development of embedded software across the platform.

The ideal candidate will be an experienced software engineer with solid C/C++ skills. Constrained settings (memory, compute resources) with real time needs is a comfortable environment for you where you select compute architectures and software design choices (e.g., RTOS vs. baremetal) based on experience and careful requirement gathering.

You are familiar with modern development practices, and are comfortable owning your portions of the system. Overall you love to prototype and build things, find robust and simple solutions to complex technical problems, and want to ship software to make a real-world impact.

Responsibilities

Implement new features and isolate existing software with real time needs. Identify the compute architecture and OS (RTOS, which RTOS, or bare metal), communication & serialization protocol, gather requirements and compute performance metrics. Make incremental progress (bench test, ship increments where possible) and perform test automation, plus implement bootloaders (OTA) to update every aspect of the embedded software we control

Collaborate with the team (electrical, mechanical, software, networking) on architecture and infrastructure choices on cross functional features such as reliable full garage emergency stop functionality

Support system integration, test, and debug; participate in demonstrations and pilot deployments

Requirements

Proven experience designing deterministic (real time) software within constrained resources (memory, processing)

Experience with the design of redundant hardware and software systems

Strong knowledge of Embedded C/C++

Experience with Ethernet based communication protocols and IPC mechanisms

Experience with communication protocols such as RS232, RS422, I2C, SPI, JTAG

Experience with CAN bus systems and associated tools

Experience with data serialization protocols for embedded systems

Collaboration with Linux (and similar) application stack (i.e., define common interfaces, tests) and excitement to dive into more of the “higher-level” general and robotics software when needed.

Strong communication skills (e.g., requirements management)

Nice to have

Experience with Safety Critical Embedded Systems

Experience with Real time operating systems (RTOS)

Test automation like Hardware-in-the-loop (HIL) systems

Experience with different types of sensors and environmental sensing systems

Experience with ROS or other robotics middleware platforms.

Knowledge of bootloaders and implementation with various communication protocols

Familiar with FMEA process

Applicant must provide proof of his or her eligibility to work in the United States if selected for hire.

Volley Automation is an equal opportunity employer to all, regardless of age, ancestry, association with a member of a protected class, bereavement leave, color, disability (physical, intellectual/developmental, or mental health/psychiatric), exercising the right to family care and medical leave related to serious health condition of employee or family member, child bonding, or military exigencies, engaging in protected activity, gender identity or expression, genetic information or characteristic, marital status, medical condition (cancer or genetic characteristic), military and veteran status, national origin (includes language restrictions), pregnancy, childbirth, breastfeeding, or related medical conditions, Pregnancy Disability Leave (PDL), race (includes hairstyle and hair texture), religious creed (includes dress and grooming practices), reproductive health decision making, sex/gender, and sexual orientation.

The target base salary range for this position $150000 - $220000 annually.

Powered by JazzHR

z1zZmjp9gk

Apply