All of the high-end coders I know, have the following traits:
1. They learned how to teach themselves
2. They learned when it's time to find someone to teach them things
3. They play with the code, they build things, experiment, etc.
4. They aren't afraid to try a new tool, and be a noob
5. They understand that the quality of their work is important... and seek out the processes and skills it takes to increase quality
Over my 20 year history, the folks with these traits have always managed to build things that last, and work well, and were easy to maintain.
Very few of them went to school for "Computer Science" degrees, everything from Poly Sci to Construction.
1. find (or start) an interesting open source project
2. learn how to use git
3. start building tests