Embedded Software Engineer

Johnson & Johnson Johnson & Johnson · Pharma · Yokneam, Haifa District, Israel

Embedded Software Engineer role focused on firmware and driver development for FPGA-based systems, specifically for the TRUPULSE generator. Responsibilities include developing embedded firmware in C, maintaining BSPs and drivers, integrating software with hardware peripherals, and debugging system-level issues. Requires strong C programming skills for embedded systems and experience with bare-metal or RTOS-based systems.

What you'd actually do

  1. Develop embedded firmware in C for FPGA-based systems
  2. Maintain and extend BSPs and low-level drivers
  3. Integrate software with hardware peripherals
  4. Debug system-level issues across firmware and hardware
  5. Collaborate with hardware engineers

Skills

Required

  • Strong C programming skills for embedded systems (pointer usage, memory management, fixed-point / bit manipulation)
  • Experience with bare-metal firmware or RTOS-based systems (task scheduling, interrupts, synchronization)
  • Experience writing and debugging device drivers (UART, SPI, I2C, GPIO, timers, ADC/DAC)
  • Hands-on debugging skills: JTAG, serial consoles, GDB or equivalent debugger
  • Version control experience (Git / TFS — branching, pull requests, basic workflows)
  • Basic electronics knowledge: reading schematics, voltage levels, signal basics

Nice to have

  • Familiarity with Nios II architecture, toolchain, and runtime (BSP, Eclipse-based tools, cross gcc)
  • Practical knowledge of FPGA toolchains (Intel/Altera Quartus, Platform Designer / Qsys)
  • Experience with debugging tools such as logic analyzers or SignalTap