remote
Software Engineer - Applications & Firmware - Western Digital
Software Engineer
Develop and maintain low‑level firmware and application software for storage solutions, collaborating with hardware teams to deliver reliable, high‑performance products for AI‑driven data infrastructures.
About the role
Key Responsibilities
- Design, implement, and test embedded firmware for storage controllers and related hardware platforms.
- Develop application‑level software that interfaces with firmware, providing diagnostics, configuration, and performance monitoring tools.
- Collaborate with hardware engineers to define specifications, perform bring‑up, and troubleshoot integration issues.
- Maintain code quality and version control using Git, and follow Agile processes for iterative delivery.
- Optimize software for power, performance, and reliability in hyperscale data‑center environments.
Requirements
- Strong proficiency in C and C++ for embedded systems development.
- Experience with Linux kernel or user‑space development on embedded platforms.
- Hands‑on knowledge of firmware development cycles, hardware bring‑up, and debugging tools (e.g., JTAG, oscilloscopes).
- Familiarity with Python scripting for test automation and tooling.
- Proven ability to work in cross‑functional teams using Agile methodologies and Git version control.