I think when you start picking apart a lot of electronic designs you see that there are a lot of bad EEs out there too.
Software engineering and EE are different in a lot of ways though. It's a lot harder to modify a EE design after it's shipped. You're also often designing around a particular manufacturing process. I think that makes you focus on getting things working correctly before it gets out the door.
Software engineering has a long way to go, but I can also see the EE world does too. A lot of the EE design tools suck, lack standards, and often don't (or aren't) integrate well with revision control. The design process therefore, tends to be a bit messy during development.
The fundamentals of EE work do seem to been clearer than software engineering though. I think this is partly due to EE having developed a mature set of design patterns, but also because it relies on a standard set of components which are really based on physical properties and as such strict and concrete in their definition as opposed to most concepts in software engineering.