About SirenOpt
SirenOpt helps manufacturers make better, safer, and more reliable micro- and nano-materials. These materials are the building blocks of critical sectors of the global economy such as batteries, computer chips, aircraft components, and power systems. But, surging material demand and growing complexity are pushing production to unprecedented scales and speeds, leaving manufacturers effectively flying blind. Small, undetected variations during production lead to wastage, lower performance, higher costs, and safety risks.
SirenOpt is changing this by developing a manufacturing intelligence platform that non-destructively probes materials during production, revealing critical internal information without damaging them. Using a novel combination of cold atmospheric plasma, physics-informed machine learning, and predictive analytics, SirenOpt generates unique, real-time material fingerprints that capture material signals not accessible through conventional measurement techniques. These insights give manufacturers unprecedented visibility into how materials behave as they are made.
We turn hidden data into actionable intelligence to help manufacturers reduce variability and thus increase yield and performance. The technology can be deployed as a standalone tool or integrated directly into factory production lines. SirenOpt is currently deploying early versions of its platform with some of the largest industrial manufacturers in the world across North America, Europe, and Asia.
About the job
Job Title: Staff Embedded Linux Software Engineer — Firmware Team
Location: On-Site (San Leandro, CA)
Job Type: Full-Time
Role Overview
SirenOpt is seeking an Embedded Linux Software Engineer to join a small, high-impact firmware team building the embedded software stack for a commercial bench-top scientific instrument. The platform is an AMD/Xilinx FPGA SoC (Zynq / UltraScale+) running PetaLinux, with a mix of userspace applications, device drivers, and real-time control interfacing with custom programmable logic.
You’ll work alongside an embedded systems architect who owns the Linux application layer, peripheral subsystems, protocol design, and hardware integration. Your core mandate is threefold: share the Linux application workload, own test automation infrastructure, and establish CI/build reliability. You’ll write production code and the tooling that proves it works.
This is a small, documentation-driven team, and you’ll be expected to write clear design docs and track progress in Jira/Confluence. The role combines hands-on lab work with prototype hardware and desk-based software development, following a sequenced release cadence (HDL → OS/drivers → embedded applications → system integration).
What You'll Do
- Develop embedded Linux application software in C (userspace, POSIX)
- Develop userspace and kernel-space drivers for internal and external devices (sensors, actuators, instruments)
- Implement and extend application-level command/control/data protocols over TCP/IP
- Implement communication drivers for industrial instruments (mass flow controllers, vacuum gauges, motor controllers) over serial and CAN interfaces
- Design, build, and maintain hardware-in-the-loop (HIL) automated test systems
- Develop host-side test tooling (Python GUIs, emulators, scripted instrument drivers)
- Establish and maintain CI/CD pipelines and reproducible build infrastructure
- Participate in hardware bring-up, board-level validation, and lab bench debugging
- Contribute to architecture decisions, documentation, and design reviews
What We're Looking For
- S., M.S., or PhD in Electrical Engineering, Software Engineering, or a related field, with 10+ years of relevant industry experience
- C for embedded Linux userspace, including threading, IPC, and POSIX APIs
- Python for test automation (pytest or equivalent framework) and scripted instrumentation
- TCP/IP socket programming on Linux (non-blocking I/O, connection lifecycle, streaming)
- UDP for discovery and lightweight telemetry
- Bus and serial protocols: UART, SPI, I2C, and CAN
- RS-232 and RS-485, including byte-level protocol implementation (framing, CRC, state machines, multi-device arbitration)
- Hardware bring-up and board-level debugging using oscilloscopes, logic analyzers, and protocol analyzers
- Producer-consumer and ring buffer patterns for real-time data flow
- Hardware-in-the-loop test development and execution
Nice to have:
- Linux DMA programming (scatter-gather, buffer pool management, AXI-DMA)
- CI/CD tooling (Jenkins, GitLab CI, GitHub Actions, Docker-based build environments)
- Yocto or PetaLinux BSP experience
- Unit test frameworks for C (gtest, cmocka, Unity)
- Familiarity with FPGA register interfaces (UIO, devmem, register maps)
- Performance profiling and network analysis (Wireshark, throughput characterization)
- Python GUI development for test/operator tooling (Tkinter, PyQt)
- Familiarity with scientific or process-control instrumentation
Benefits
- Equity and Salary compensation depends on experience
- Health, Dental, Vision plans provided
- 401k matching provided
- Time off: 20 days of PTO per year, plus approximately 15 paid US holidays per year
Skills Required
- Bachelor’s, master’s, or PhD in Electrical Engineering, Software Engineering, or a related field
- 10+ years of relevant industry experience
- C programming for embedded Linux userspace, including threading, IPC, and POSIX APIs
- Python for test automation using pytest or an equivalent framework
- TCP/IP socket programming on Linux, including non-blocking I/O, connection lifecycle, and streaming
- UDP for discovery and lightweight telemetry
- UART, SPI, I2C, and CAN bus and serial protocols
- RS-232 and RS-485 byte-level protocol implementation, including framing, CRC, state machines, and multi-device arbitration
- Hardware bring-up and board-level debugging with oscilloscopes, logic analyzers, and protocol analyzers
- Producer-consumer and ring-buffer patterns for real-time data flow
- Hardware-in-the-loop test development and execution
- Linux DMA programming, including scatter-gather, buffer pool management, and AXI-DMA
- CI/CD tooling such as Jenkins, GitLab CI, GitHub Actions, or Docker-based build environments
- Yocto or PetaLinux BSP experience
- C unit test frameworks such as gtest, cmocka, or Unity
- FPGA register interfaces, including UIO, devmem, and register maps
- Performance profiling and network analysis using Wireshark and throughput characterization
- Python GUI development with Tkinter or PyQt
- Familiarity with scientific or process-control instrumentation
What We Do
SirenOpt is accelerating sustainable and smart manufacturing of advanced materials by delivering a manufacturing intelligence platform that uses intelligent characterization and real-time decision-making to drive the creation of innovative, high-performance products that fuel the advancement of society. SirenOpt is pioneering a paradigm shift in materials manufacturing intelligence by leveraging cold atmospheric plasma, machine learning and predictive analytics to non-destructively create a uniquely distinctive, multifaceted material fingerprint in real-time. SirenOpt transforms measurement blind spots into rich multi-layered material insights, which enable intelligent performance-centric decision-making. SirenOpt thus accelerates R&D and process optimization, enhances product performance, and delivers higher production quality to maximize value in both in-line and off-line applications. SirenOpt’s manufacturing intelligence platform has demonstrated use cases across battery, aerospace, semiconductor, electronic and many other advanced manufacturing segments in both inline production and offline tool deployments. SirenOpt was founded in 2022 as a spin-out from the UC Berkeley Chemical Engineering Department. SirenOpt is supported by the UC Berkeley Skydeck, Lawrence Berkeley National Laboratory Cyclotron Road and Activate science-driven startup accelerator programs. For employment opportunities please visit our careers page: https://www.sirenopt.com/careers









