Embedded software engineer [h1.location_city]
[job_alerts.create_a_job]
Embedded software engineer • hayward ca
Embedded Software Engineer - Platform & Firmware
Pivotal SystemsFremont, CA, US- [promoted]
Software Engineer
VirtualVocationsHayward, California, United States- [promoted]
Sr. Software Engineer, Factory Software
TeslaFremont, CA, United StatesFlink Software Engineer
Epro Infosystems, LLCFremont, California, USA- [promoted]
Sr. Software Engineer :
AkrayaFremont, CA, United StatesEmbedded Software Engineer
NeuralinkFremont, California, United States- [promoted]
Software Engineer I
SynergisticITFremont, CA, United States- [promoted]
Principal Software Engineer
Cloud Software Group, Inc.San Ramon, CA, United StatesSr. Engineer, Software
Alamar BiosciencesFremont, California, United States- [promoted]
Software Engineer 2
Mattson TechnologyFremont, CA, United StatesSenior Embedded Firmware / Software Engineer
Brooks AutomationFremont, California, USEmbedded Tester- Software Integrated Testing (SIT)
DMS Vision, Inc.Alameda, CA, United States of AmericaSr. Software Engineer, Clinical Software
PersonalisFremont, California, United States- [promoted]
Senior Software Engineer
Phenom PeopleFremont, CA, United StatesSr. Embedded Software Engineer
AbbottAlameda, California, United StatesSenior Software Engineer
Five9San Ramon, CA, USSoftware Engineer - Flutter
CXApp US, Inc.San Ramon, CA, US- [promoted]
Senior Software Engineer
ArtechSan Leandro, CA, United States- [promoted]
Sr. Software Engineer
Keylent IncSan Ramon, CA, United StatesEmbedded Software Engineer - Platform & Firmware
Pivotal SystemsFremont, CA, US- [job_card.full_time]
Job Description
Job Description
Salary : $100,000 - $130,000
Embedded Software Engineer (Platform & Firmware)
Overview :
We are seeking an Embedded Software Engineer (Platform & Firmware) to design, develop, and test software that interfaces directly with hardware, such as microcontrollers and processors in embedded systems. This role focuses on foundational software development, including drivers, bootloaders, and firmware, using C, C++, and assembly to manage system resources and optimize device performance.
You will need a deep understanding of computer architecture, hardware-software integration, and low-level debugging. As a core member of our software engineering team, you will collaborate closely with embedded software and hardware engineers to deliver high-performance, reliable systems.
Key Responsibilities :
Develop Low-Level Software : Write and maintain firmware, bootloaders, and device drivers for embedded hardware platforms.
Optimize Performance : Ensure code efficiency and performance on resource-constrained systems (limited memory, CPU, power).
Hardware-Software Integration : Collaborate with hardware teams to validate and troubleshoot system-level issues.
Debug and Test : Use tools like oscilloscopes, logic analyzers, and in-circuit debuggers to identify and resolve issues at the hardware / software boundary.
System Resource Management : Implement low-level system features such as power management, memory allocation, and communication protocols (SPI, I2C, UART, etc.).
Required Skills and Qualifications :
Proficiency in C, C++, and assembly language for embedded development.
Strong understanding of microcontrollers, processors, and memory management.
Experience with device trees, real-time operating systems (RTOS), and device driver development.
Skilled in using low-level debugging tools : oscilloscopes, logic analyzers, JTAG, ICE, etc.
Excellent analytical and problem-solving skills to address complex hardware / software integration issues.
Bachelors or Masters degree in Computer Engineering, Electrical Engineering, or Computer Science.
Preferred skills :
The ideal candidate will also have :
Experience with EtherCAT technology
CAN ecosystem Software : DeviceNet or CANopen stacks
Embedded Linux Platform Software : Device tree, init / system services, userspace
deamons, kernal Diagnostic tooling : Python utilities for log parsing and packet / trace inspection
PLC familiarity : (software and hardware)