Senior Firmware Engineer
- Discuss this with your agent
- Open in Claude
- Open in ChatGPT
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Role details
Tech stack
+12 more
Job description
Job Responsibilities:Design and Maintain FTL ArchitectureDevelop 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 HandlingImplement 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 MechanismsPrevent 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 ProtectionDesign 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 OptimizationOptimize 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 ValidationDevelop 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. Minimum Requirements:Master’s degree in Electrical Engineering, Computer Engineering, Computer Science, or related fields.At least 3 years work experience in each of the following:Software/firmware applications engineeringExperience in SSD controller/firmware architectureStrong experience in C/C++ programming and data structureHands on experience with JTAG/ICE debuggersExperience with version control software like Git.Competent to work independently as well as in a small team collaboration environment.Must be willing to learn fast and execute as a team player.Good oral, written and presentation skills for communication and documentation.Ability to work independently with a minimum of day-to-day supervision.Preferred Qualifications:The ability to operate logic analyzer, oscilloscope and bus protocol analyzer is valuable.Familiar with SATA/PCIe (NVMe) protocolsFamiliar with NAND flash protocolsLinux system debug experience.Fluent in reading and writing Mandarin preferred. Work Location: Rancho Cordova, CA Estimated Base Pay Range (USD) for this full-time position is:$ 150,000 - $210,000, $ per annum The successful candidate’s starting base pay will be determined based on job-related skills, experience, qualifications, work location and market conditions. The expected base pay range for this role may be modified based on market conditions. SMI-USA: Compensation, Benefits, Rewards and CultureSilicon Motion believes that a company’s most important asset is their employees. That is why we make sure that we offer an excellent array of benefits to eligible employees and encourage them to find balance between work and life. We offer competitive compensation and reward superior performance. Employees are eligible to be recognized in the following ways:Highly competitive salaries differentiated by performance.Annual merit increasesYear-end bonusRSU for eligible employeesInvention and Patent Awards401(k) Employer MatchingLength of Service AwardsWe offer comprehensive health insurance plans for eligible employees and dependents. There are plans to meet the needs of you and your family. Job Responsibilities:Design and Maintain FTL ArchitectureDevelop 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 HandlingImplement 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 MechanismsPrevent 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 ProtectionDesign 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 OptimizationOptimize 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 ValidationDevelop 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. Minimum Requirements:Master’s degree in Electrical Engineering, Computer Engineering, Computer Science, or related fields.At least 3 years work experience in each of the following:Software/firmware applications engineeringExperience in SSD controller/firmware architectureStrong experience in C/C++ programming and data structureHands on experience with JTAG/ICE debuggersExperience with version control software like Git.Competent to work independently as well as in a small team collaboration environment.Must be willing to learn fast and execute as a team player.Good oral, written and presentation skills for communication and documentation.Ability to work independently with a minimum of day-to-day supervision.Preferred Qualifications:The ability to operate logic analyzer, oscilloscope and bus protocol analyzer is valuable.Familiar with SATA/PCIe (NVMe) protocolsFamiliar with NAND flash protocolsLinux system debug experience.Fluent in reading and writing Mandarin preferred. Work Location: Rancho Cordova, CA Estimated Base Pay Range (USD) for this full-time position is:$ 150,000 - $210,000, $ per annum The successful candidate’s starting base pay will be determined based on job-related skills, experience, qualifications, work location and market conditions. The expected base pay range for this role may be modified based on market conditions. SMI-USA: Compensation, Benefits, Rewards and CultureSilicon Motion believes that a company’s most important asset is their employees. That is why we make sure that we offer an excellent array of benefits to eligible employees and encourage them to find balance between work and life. We offer competitive compensation and reward superior performance. Employees are eligible to be recognized in the following ways:Highly competitive salaries differentiated by performance.Annual merit increasesYear-end bonusRSU for eligible employeesInvention and Patent Awards401(k) Employer MatchingLength of Service AwardsWe offer comprehensive health insurance plans for eligible employees and dependents. There are plans to meet the needs of you and your family.
Requirements
- Master’s degree in Electrical Engineering, Computer Engineering, Computer Science, or related fields.
- At least 3 years work experience in each of the following:
- Software/firmware applications engineering
- Experience in SSD controller/firmware architecture
- Strong experience in C/C++ programming and data structure
- Hands on experience with JTAG/ICE debuggers
- Experience with version control software like Git.
- Competent to work independently as well as in a small team collaboration environment.
- Must be willing to learn fast and execute as a team player.
- Good oral, written and presentation skills for communication and documentation.
- Ability to work independently with a minimum of day-to-day supervision.
Preferred Qualifications:
- The ability to operate logic analyzer, oscilloscope and bus protocol analyzer is valuable.
- Familiar with SATA/PCIe (NVMe) protocols
- Familiar with NAND flash protocols
- Linux system debug experience.
- Fluent in reading and writing Mandarin preferred.
Benefits & conditions
The successful candidate’s starting base pay will be determined based on job-related skills, experience, qualifications, work location and market conditions. The expected base pay range for this role may be modified based on market conditions.
SMI-USA: Compensation, Benefits, Rewards and Culture
Silicon Motion believes that a company’s most important asset is their employees. That is why we make sure that we offer an excellent array of benefits to eligible employees and encourage them to find balance between work and life. We offer competitive compensation and reward superior performance. Employees are eligible to be recognized in the following ways:
- Highly competitive salaries differentiated by performance.
- Annual merit increases
- Year-end bonus
- RSU for eligible employees
- Invention and Patent Awards
- 401(k) Employer Matching
- Length of Service Awards
- We offer comprehensive health insurance plans for eligible employees and dependents. There are plans to meet the needs of you and your family.
Apply for this position
This job is hosted externally. Click below to view the full posting and apply.
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Good distractions
Loading talks and stories from around this role…