Senior Firmware Engineer
Role details
Job location
Tech stack
Job description
Responsible for the design, development, and maintenance of embedded firmware for solid-state storage systems, including Flash Translation Layer (FTL), NAND flash management, I/O data path, and system-level integration to ensure performance, reliability, and data integrity., * Designing, developing, testing, and maintaining embedded firmware for SSD controllers and related storage hardware platforms.
-
Developing and optimizing firmware for I/O data path and control path operations to enable efficient storage system performance.
-
Implementing and maintaining Flash Translation Layer (FTL) components, including logical-to-physical address mapping, garbage collection, and wear leveling.
-
Developing firmware-level error handling and data integrity mechanisms for NAND flash-based storage systems.
-
Developing firmware supporting power-on initialization, power-loss handling, and recovery processes to ensure data consistency.
-
Developing and optimizing low-level firmware for SoC-based storage controllers, including hardware initialization and system bring-up routines.
-
Implementing and supporting NVMe and PCIe storage interfaces in compliance with industry specifications.
-
Performing debugging, root cause analysis, and performance profiling using hardware and software development tools.
-
Conducting firmware validation including stress testing and corner-case verification to ensure system stability and reliability.
-
Collaborating with ASIC, hardware, validation, and customer engineering teams on system integration and issue resolution.
Requirements
- Master's degree in Computer Engineering, Computer Science, Computing and Technology, or a closely related field.
- 2-year experience as Firmware Engineer in the field of embedded firmware development for SSD products.
- Require knowledge of flash memory components such as garbage collection and wear leveling, NVMe SSD firmware development, and multi-core or multiprocessor SoC architectures.
- Require programming language in C/C++ for embedded systems.
- Require skills in debugging tools such as GDB, and software development and collaboration tools including Git and Jira.
Benefits & conditions
Salary: $187,075.00 - $188,000.00 per year