Being beginner to advanced beginner is a hard path to travel. As such, these links will be useful in guiding any self-learners and early to mid-level CS students.
http://sijinjoseph.com/programmer-competency-matrix/
The above shows the skills to learn, as well as giving you a good idea of competency in each area looks like.
https://www.google.com/about/careers...velopment.html
This one is from Google itself, and details what kinds of broad themes they look for in their hires
as well as numerous online resources for doing some of that learning.
Both are incredibly valuable finds, and special thanks go to toddw8 & just_grindin for doing the footwork.