In my experience many software developers are pretty ignorant about hardware issues since they rarely have to deal with hardware beyond their desktops or laptops. If you live in the IT world for a while and work with enterprise-grade equipment these kinds of problems actually crop up a lot.
For any given piece of gear in your server room there is likely a massive list of firmware bugs for it and its subcomponents. Sometimes they are fixed, sometimes not. When you run in to one that affects and need to deploy a firmware fix to dozens or hundreds of servers, it's not a whole lot of fun.