Job Description
Role: Firmware Engineer
Duration:6-12 months
Location : Hybrid -Bangalore
Job Responsibilities:
- Participate as a member of the NAND characterization team to architect, prototype and implement firmware for Flash Tech NVMe Controllers for newest generations of NAND from various NAND vendors.
- Work on Machine Learning based NAND management algorithms.
- Generate comprehensive firmware and engineering documentation.
- Troubleshoot and resolve complex software problems in embedded real-time systems.
- Mentor and train other team members.
Requirements/Qualifications:
Minimum Qualifications:
- A good team player.
- A methodical and processes driven work ethic.
- Excellent written and verbal communication skills.
- Prior experience in SSD firmware development: NAND management algorithm development including but not limited to read error handling.
- Bachelor’s degree in computer science, computer engineering or equivalent field.
- 12+ years of related experience
- Strong C/C++/Python programming and debugging skills.
- ARM system programming experience.
- Working knowledge of Machine Learning algorithms.
- Knowledge of SSD firmware architecture and algorithms, including:
•&νβσπ; Flash translation layer
•&νβσπ; Caching
•&νβσπ; NAND management
- In-depth knowledge of NVMe and PCIe protocols
Preferred Qualifications:
- Experience in the use of bus analyzers, JTAG, emulators and other firmware debugging tools.
- Agile development methodology experience.
- Lab time with PCIe and logic analyzers.
- Experience with Linux as a development environment.
- Board and first-silicon bring-up.
Please share resume to
Duration:6-12 months
Location : Hybrid -Bangalore
Job Responsibilities:
- Participate as a member of the NAND characterization team to architect, prototype and implement firmware for Flash Tech NVMe Controllers for newest generations of NAND from various NAND vendors.
- Work on Machine Learning based NAND management algorithms.
- Generate comprehensive firmware and engineering documentation.
- Troubleshoot and resolve complex software problems in embedded real-time systems.
- Mentor and train other team members.
Requirements/Qualifications:
Minimum Qualifications:
- A good team player.
- A methodical and processes driven work ethic.
- Excellent written and verbal communication skills.
- Prior experience in SSD firmware development: NAND management algorithm development including but not limited to read error handling.
- Bachelor’s degree in computer science, computer engineering or equivalent field.
- 12+ years of related experience
- Strong C/C++/Python programming and debugging skills.
- ARM system programming experience.
- Working knowledge of Machine Learning algorithms.
- Knowledge of SSD firmware architecture and algorithms, including:
•&νβσπ; Flash translation layer
•&νβσπ; Caching
•&νβσπ; NAND management
- In-depth knowledge of NVMe and PCIe protocols
Preferred Qualifications:
- Experience in the use of bus analyzers, JTAG, emulators and other firmware debugging tools.
- Agile development methodology experience.
- Lab time with PCIe and logic analyzers.
- Experience with Linux as a development environment.
- Board and first-silicon bring-up.
Please share resume to
Apply for this Position
Ready to join ? Click the button below to submit your application.
Submit Application