University or college does an excellent job of teaching you how to write code. What it doesn’t do is teach you all the other skills you need to be a great developer.
First, I’ll discuss my university and graduate job experience, and its subsequent failure. I’ll then move on to some of the observations I’ve made in the last 20 years while working with numerous development teams. These are observations of skills that great developers have.
I’ll talk about my experience of learning some of those skills, usually the hard way, as part of my recent journey back to development and why having those skills helps to make you a great developer. They include pair programming, estimating, debugging, keeping up with technology, and many more.