Started doing a Masters in embedded software design a couple of years ago, and I could condense this guide into a more succinct explanation.
Getting started with embedded systems is being repeatedly told "you're wrong" or "that won't work" until you give up and do something else.