But I see the error in my ways and humbly realize that I'm just "skilled labor".
Really, if you compare the level of thinking of an average developer to an average academic, the academic often has nothing but his degree.
The level of parroting and complete lack of critical thinking is widespread among academics.
You may be one of the 20% in your particular area of interest. If you're doing the kind of work that most engineers tend to avoid, you will never be unemployed. ;-)
The only thing I have used since graduation, for work, that I actually studied for a class was big-O notation and reasoning.
But! Every week, in every engineering class, they assigned problem sets. Every week I read them through and knew, with certainty, there was no way I could do them. Then, every week I turned them in, completed correctly.
So that was what I really learned in school: that I have no real sense of what I can learn to do, and do. Since then, I have just done things, without worrying about whether I was really capable.
Developers would do well to realize that they're skilled labor, not academics or superstar artists, and start behaving accordingly.