Unknown Company

Senior Firmware Engineer

san jose, ca • Posted 4 days ago
Onsite Full Time Software Architecture & Engineering

Innogrit is aworld-leading storage company. We are looking for a Senior Firmware Engineer to design, develop, debug, and validate firmware for high-performance storage and embedded systems. The ideal candidate has strong hands-on firmware development experience, preferably with SSDs, NVMe, NAND flash, PCIe, or other storage-class devices. Experience developing firmware for embedded systems, hardware devices, or SoC-based platforms is highly desirable.

This role requires strong low-level programming skills, solid understanding of hardware/software interaction, and the ability to debug complex issues across firmware, hardware, and system software.

Key Responsibilities

  • Design, implement, debug, and optimize firmware for SSDs, memory subsystems, and storage-class devices.
  • Develop firmware modules for storage controllers, device initialization, command processing, error handling, power management, and performance optimization.
  • Work with SSD-related technologies such as NVMe, PCIe/CXL, NAND flash, FTL, wear leveling, garbage collection, bad block management, and error recovery.
  • Bring up new hardware platforms and support firmware integration with ASIC, FPGA, controller, or board-level designs.
  • Debug firmware issues using tools such as JTAG, logic analyzers, protocol analyzers, oscilloscopes, crash dumps, logs, and trace tools.
  • Collaborate with hardware, validation, software, ASIC, and manufacturing teams to resolve cross-functional issues.
  • Develop and maintain firmware test utilities, diagnostics, and validation support tools.
  • Analyze performance, reliability, and failure data to improve firmware robustness and product quality.
  • Support product qualification, customer issue reproduction, root-cause analysis, and firmware release activities.
  • Create technical documentation, design specifications, test plans, and debug reports.

Required Qualifications

  • Bachelor’s or Master’s degree in Electrical Engineering, Computer Engineering, Computer Science, or a related field.
  • 5+ years of firmware or embedded software development experience.
  • Strong programming skills in C and/or C++.
  • Experience with low-level firmware development, device drivers, boot code, real-time systems, or hardware control software.
  • Good understanding of embedded system architecture, memory-mapped registers, interrupts, DMA, timers, and hardware/software interfaces.
  • Experience debugging firmware on real hardware platforms.
  • Strong problem-solving skills and ability to analyze complex system-level issues.
  • Familiarity with scripting languages such as Python, Bash, or Perl for automation and debug support.
  • Ability to work independently and communicate clearly with cross-functional engineering teams.

Preferred Qualifications

  • Experience with NVMe, PCIe/CXL, NAND flash, SATA, eMMC, UFS, or other storage technologies.
  • Knowledge of SSD architecture, including FTL, garbage collection, wear leveling, bad block management, ECC, power-loss protection, and thermal management.
  • Experience with embedded RTOS or bare-metal firmware development.
  • Experience with ARM, RISC-V, or other embedded processor architectures.
  • Experience using JTAG, protocol analyzers, logic analyzers, oscilloscopes, and firmware trace tools.
  • Experience with Linux device drivers, kernel debugging, or user-space test tools.
  • Experience with product bring-up, validation, qualification, and customer issue debugging.
  • Knowledge of security, secure boot, firmware update, or device lifecycle management is a plus.
#J-18808-Ljbffr
Back to Job Search