Senior Firmware Engineer

HireEazy
  • Rancho Cordova, California
  • $150,000–$210,000 Per Year
  • Autofill and Review
10 days ago

Job Description

Job Responsibilities:

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.

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 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.

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 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.

Numbers & Facts

LocationRancho Cordova, California
Salary$150,000–$210,000 Per Year

Skills

  • ASIC (Application Specific Integrated Circuit)unmatched
  • Adobe Flashunmatched
  • Algorithmsunmatched
  • Analysis Skillsunmatched
  • Bootingunmatched
  • Boundary Scanunmatched
  • C Programming Languageunmatched
  • C++ Programming Languageunmatched
  • Communication Skillsunmatched
  • Computer Engineeringunmatched
  • Computer Firmwareunmatched
  • Computer Scienceunmatched
  • Cross-Functionalunmatched
  • DRAMunmatched
  • Data Migrationunmatched
  • Data Qualityunmatched
  • Data Structuresunmatched
  • Debugging Skillsunmatched
  • Debugging Toolsunmatched
  • Documentationunmatched
  • Electrical Engineeringunmatched
  • Error Handlingunmatched
  • Gitunmatched
  • Input/Outputunmatched
  • Linux Operating Systemunmatched
  • Logic Analyzerunmatched
  • Mandarin Chinese Languageunmatched
  • Metadataunmatched
  • NAND Flashunmatched
  • Oscilloscopeunmatched
  • PCI Express (PCI-E)unmatched
  • Patentsunmatched
  • Performance Tuning/Optimizationunmatched
  • Presentation/Verbal Skillsunmatched
  • Protocol Analysisunmatched
  • RAID Storageunmatched
  • Root Cause Analysisunmatched
  • Serial ATA (SATA)unmatched
  • Software Engineeringunmatched
  • Source Code/Configuration Management (SCM)unmatched
  • Stress Testingunmatched
  • System Start-Upunmatched
  • Team Playerunmatched
  • Testingunmatched
  • Writing Skillsunmatched

Be found by employers

5,500+ employers search our resume database daily. Add yours to get found by recruiters looking for candidates like you.

Level up your application

Professional resume templates

Browse dozens of recruiter approved resume templates, layouts and formats. Choose your favorite and make it your own in minutes.

Free resume templates

Free resume builder

Improve your existing resume or start from scratch and create a standout, ATS-friendly resume. Add job-specific content, download and apply.

Free resume builder