When I was a young nerd just starting my engineering education in undergrad I had already had a handle on Linux but I wasn’t well versed in the use of an editor like Vim or Emacs nor was I fluent in the command line environment. I would have benefited greatly from the following lecture series that goes over topics such as shell scripting and Vim (even though I am an Emacs user).
Also, I find that the breakdown of Git version control to be excellent for both beginners and industry vets that are transitioning over from another version control system.