I feel fortunate to have chosen embedded software as the career path. 10 years in industry now and never had a dull moment (though I've had some bad colleagues/clients). I work inside a terminal all day, no GUI (even use GDB TUI), and somehow never get bored of it. I think having a physical entity responding to your code immediately (blinking LED for example) keeps the programmer interested.