Position : Senior Firmware Engineer(FTL)
Location : Rancho Cordova, CA, 95742 - onsite
Interview : Video
Experience : 8 (Min) - 15 (Max)
Job Description:
Looking for a Senior Firmware Engineer(FTL). Please review the below description and let us know if you are interested.
Prioritized Must Have Skills for the Senior Firmware Engineer(FTL):
- 3+ years of experience in SSD controller and firmware architecture, including FTL development.
- Strong C/C++ programming and data structures experience in software/firmware development.
- Hands-on experience with FTL algorithms, including Garbage Collection, Wear Leveling, bad block management, metadata handling, and NAND error management.
- Hands-on experience with JTAG/ICE debugging and firmware debugging, validation, and root-cause analysis.
- Strong understanding of NAND flash and SSD technologies, including PCIe/NVMe or SATA protocols and power-loss protection/recovery.
Responsibilities of the Senior Firmware Engineer(FTL):
Design and Maintain FTL Architecture
- Develop and maintain the Flash Translation Layer (FTL), including I/O flow, Garbage Collection, and Wear Leveling algorithms to ensure data integrity and maximize NAND endurance.
Block Management and Metadata Handling
- Implement bad block detection, isolation, and data migration mechanisms to manage block lifecycle.
- Design robust metadata structures to support fast mapping table reconstruction and system boot.
Error Handling Mechanisms
- Prevent and mitigate NAND-related issues such as read disturb, program/erase failures, and retention loss.
- Implement RAID encode/decode flows to guarantee data reliability.
Power-Loss Protection
- Design and implement power-loss protection algorithms to maintain data consistency and metadata integrity during unexpected shutdowns.
- Verify and optimize power-loss recovery flow to ensure fast and reliable system startup.
Performance and Resource Optimization
- Optimize channel/die/plane access scheduling and parallelism to improve throughput and reduce latency.
- Enhance DRAM/SRAM usage efficiency and reduce Write Amplification for better endurance and performance.
Debugging and Validation
- Develop and analyze FTL traces and logs for performance profiling and issue root-cause analysis.
- Conduct stress testing, mixed workload testing, power-fail tests, and corner-case verification to ensure firmware stability and reliability.
- Collaborate with Validation, Hardware, and ASIC teams to resolve cross-functional issues and ensure system robustness.
Requirements of the Senior Firmware Engineer(FTL):
- Master s degree in Electrical Engineering, Computer Engineering, Computer Science, or a related field.
- At least 3 years of experience in software/firmware applications engineering.
- At least 3 years of experience with SSD controller/firmware architecture.
- Strong experience in C/C++ programming and data structures.
- Hands-on experience with JTAG/ICE debuggers.
- Experience with version control software such as Git.
- Ability to work independently as well as collaboratively within a small team.
- Must be willing to learn quickly and work effectively as a team player.
- Strong oral, written, and presentation skills for communication and documentation.
- Ability to work independently with minimal day-to-day supervision.
Preferred Qualifications
- Experience operating logic analyzers, oscilloscopes, and bus protocol analyzers.
- Familiarity with SATA/PCIe (NVMe) protocols.
- Familiarity with NAND flash protocols.
- Linux system debugging experience.
- Fluency in reading and writing Mandarin preferred.
Benefits of the Senior Firmware Engineer(FTL):
- Medical Insurance
- Dental Insurance
- 401(k) - Employer Match
Regards,
Adam Jones (Azam)
Direct: 5 5 1 2 6 4 7 2 4 9
Email: Adam (@) pullskill (dot) com