I've been advocating Upcase to Junior Rails devs for a couple years now. Has a lot of great content around improving your testing skills, refactoring, and best practices for object oriented design.
although most of the content is ruby/rails based, the concepts are widely applicable to improving your skills as a software engineer.
although most of the content is ruby/rails based, the concepts are widely applicable to improving your skills as a software engineer.