2. As an experienced embedded developer, what design patterns have you, as an individual, come across? There is no need to describe the details. Only the pattern names would suffice. Please share your own experience.
I believe the answers to the above questions would work as a good starting point for any novice programmers in the embedded world.
Of the embeded systems I've worked on, all were done in C and/or assembler.
This was a number of years ago and preceeded the widespread adoption of C++ in embded systems.
Your question is really very broad since there are so many different kinds of embeded systems. The applicable design patterns really depend on problem domain and what is being controlled. Is it real time data acqisition? SCADA? a celll phone? A peripherial controller? An appliance? The list is endless.