- Essential books and papers are good as a reference to learn and improve but focus first on hands-on stuff.
- Get involved in an open source project that fits the 'system level' category, learn how it works and try to contribute to it (again, put your hands-on)
- Start with development in C language, a good tool to build would be a TCP client and server (kind of 'echo' program). The goal of this will be to learn: how to compile a C program, basics of memory management (malloc, free, realloc), networking (create a socket, bind, listen, connect), transfer data (write, read) and so on.
- If possible, learn using a native Linux environment.
All of the suggestions above will pay off if you are persistent and keep trying learning by building; of course, getting involved in an open source project is a must if you want to have a successful career.