As a SSD Firmware Development Engineer at Micron Technology, Inc., you will develop high-performance controller firmware for innovative volatile and non-volatile memory systems. In this position, you will assist in evaluating, designing, building, bench testing, debugging and failure analyzing firmware for new high-performance memory controllers and Solid-State Drives that will increase performance, while reducing power, latency and SoC (System on Chip) complexity for the target markets. You can expect to work closely with firmware engineers, firmware test engineers, ASIC design engineers, system test engineers, system failure analysis engineers, product engineers, firmware tools developers to solve cross-functional product development issues.
Your responsibilities will include, but are not limited to, the following:
- Participate as a team member and work effectively to develop SSD BackEnd firmware.
- Demonstrate proficiency in coding skills, failure analysis, and the use of tools that support these activities.
- Validate customer requirements and perform failure analysis on FW related issues.
- Develop structured source code targeting the embedded environment associated with state of the art memory.
- Perform design verification using a variety of verification methods, including simulation and product testing.
- Focus on firmware quality in the system and the target application.
- Participate in SCRUM/Agile processes and distributed code reviews.
- Develop new test tools and methods.
- Follow specific processes/procedures/work flows.
- Demonstrate the effective analysis of functional or performance issues with the firmware and hardware in test environments or target host systems.
- Technical communications will be required between other teams and the firmware team (both verbal and written).
- You will review, contribute to, and create clear documentation for deliverables that must meet both internal specifications/standards and SSD industry standards and specifications.
Successful candidate for this position will have:
- 5+ Year of experience with storage Firmware development and debug using protocol analyzer.
- Knowledge or working experience with Nand flash.
- Strong working knowledge of firmware development, verification, system failure analysis, embedded systems design and real time embedded systems.
- Strong problem solving skills, including the ability to find creative solutions to difficult problems.
- Strong working knowledge of software engineering principles and designing and developing firmware using assembly and C/C++ programming.
- Strong debugging skills in an embedded firmware application including:
- Using development tools and IDE's such as Slick Edit, SourcePoint and Realview.
- Problem re-creation and trapping
- Logging and diagnostics
- Experience with digital hardware design and test equipment such as In-Circuit Emulators (ICE) and logic/bus analyzers
- Strong working knowledge analyzing complex firmware and hardware issues.
- Strong knowledge working identifying and optimizing performance of critical algorithms.
- Knowledge of the Agile software development process life cycle.
- Strong knowledge of structured firmware development process and life cycle.
- Strong skills in communicating complex technical ideas/concepts.
- Ability to work in a fast-paced environment and communicate effectively (written and verbal) across multiple locations and teams.
BS or MS in Computer Engineering, Computer Science, or Electrical Engineering.