A Day In The Life Of A Firmware Engineer

11am: Arrive at work, check out crack pipe from inventory
11:05am – noon: Read online forums, cackle at victims; crack pipe
Noon – 1pm: Read latest standards documents; write code that is in technical compliance but to any sane observer appears screamingly inept, baroque, buggy, unusable and downright dangerous
1pm – 2pm: Lunch with friend from International Tax Code Writers’ Union; compare notes
2pm – 3pm: Review usability testing results; remove all discovered usability
3pm – 3:30pm: Bonghits
3:30pm – 4:00pm: Reading – “Transparency, The Apple Way (S. Jobs)”
4:00pm – 4:30pm: Notice latest production firmware code does not include enough potential bricking bugs; run random bug generator
4:30pm – 5:00pm: Notice company has minor hardware revision upcoming; write entirely new firmware implementation for it for no apparent reason
5:00pm: Home, with a warm fuzzy feeling of achievement
5:30pm – 11:30pm: Tease dog by pretending to throw ball
11:35pm: Watch Leno

17 Responses

  1. emmet.curran
    emmet.curran May 4, 2013 at 3:08 am | | Reply

    See that crazy man across the street watching you right now? He’s a firmware engineer.

    Run, Adam. Run

  2. Leslie Satenstein
    Leslie Satenstein May 4, 2013 at 4:55 pm | | Reply

    You forgot the time delayed and time dependent bug that randomly fails on even numbered days.

  3. Wes
    Wes May 4, 2013 at 4:56 pm | | Reply

    I was believing it until the “Leno” part..

  4. seem
    seem May 7, 2013 at 10:10 am | | Reply

    He forgot to pack it into random cab file to prevent accidental extracking by someone who only needs *usb and *inf without Yahoo toolbar and product registration.

  5. JP
    JP October 25, 2015 at 12:34 pm | | Reply

    I read this a while ago and laughed. So funny. But I’m not laughing this weekend after I did an Ubuntu update which, while attempting to be helpful, updated my NVRAM to set the UEFI boot options. Now my Dell Latitude firmware can’t boot anything, and better yet, it doesn’t even let me enter setup (F2) or the once off boot menu (F12). No sir, I assume that’s because it doesn’t understand an NVRAM entry Ubuntu kindly inserted. It’s stuck trying to enumerate boot options and it does this before attempting to display the settings sigh… To fix the boot options, I’d have to get into setup, so that special chicken stepped on the damn egg.

  6. JP
    JP October 26, 2015 at 2:17 am | | Reply

    Thanks. Sadly, it wouldn’t boot into anything at all post the update process. I got Ubuntu to boot when I took the drive out and installed it into another laptop. UEFI secure boot with both Ubuntu and Windows 10 works just fine, but the original laptop’s firmware now has it’s knickers in a serious knott.

  7. RandomLurker
    RandomLurker October 29, 2016 at 11:37 am | | Reply

    “write code that is in technical compliance”

    Bahahahahahaha. Find me one UEFI implementation that doesn’t have dozens of critical bugs.

  8. RandomLurker
    RandomLurker October 29, 2016 at 11:47 am | | Reply


    I think your problem is you believe there is such a thing as a firmware “engineer”. Engineering implies thinking ahead, designing the general structure of the software, doing some testing, etc. I’m pretty sure hardware companies simply find the cheapest code monkeys they can, give them some specs, and take whatever they produce as long as it seems to work.

  9. bestpicked
    bestpicked July 1, 2019 at 12:13 pm | | Reply

    I assume that’s because it doesn’t understand an NVRAM entry Ubuntu kindly inserted

  10. Change Roadrunner Password
    Change Roadrunner Password August 7, 2019 at 5:50 am | | Reply

    I really like and appreciate your work. The points you have mentioned in this article are useful. I must try to follow these points and also share others.

  11. coinmasterspin
    coinmasterspin August 17, 2019 at 10:50 am | | Reply

    I would presume that Sendmail has analogs to the various sanity checks described for Postfix.

  12. freefirehack
    freefirehack August 17, 2019 at 10:52 am | | Reply

    Very eye catching blog

  13. Geek Squad 24/7 Support
    Geek Squad 24/7 Support September 12, 2019 at 2:15 am | | Reply

    Prospective students searching for Firmware Engineer: Job Description, Duties and Requirements found the following related articles, links, and information

  14. idk_anything
    idk_anything September 16, 2019 at 5:31 am | | Reply

    Saw this after I switched to a firmware engineer job. I am doomed for eternity 🙁

Leave a Reply

Your email address will not be published. Required fields are marked *