If you are not a developer already, I highly recommend learning how to code in a mature scripting language like Ruby or Python. Most sysadmins who have Linux heritage can code mean awk/bash/shell scripts but are scared of objects and stuff like hashes.<p>Start learning about real-time data and stream-based logging. LinkedIn and Netflix are pushing the bar higher with their Apache incubated to independent project open source contributions. As businesses try to gain more competitive/operational advantages/efficiencies, real-time data is becoming more important. Why ask what the customer did last week if they can see what the customers are doing <i>right now</i>.<p>The "grand-daddy" article: "The Log: Real-time data's unifying abstraction"<p><a href="https://engineering.linkedin.com/distributed-systems/log-what-every-software-engineer-should-know-about-real-time-datas-unifying" rel="nofollow">https://engineering.linkedin.com/distributed-systems/log-wha...</a> (discussed <a href="https://news.ycombinator.com/item?id=6916557" rel="nofollow">https://news.ycombinator.com/item?id=6916557</a>)<p><a href="http://techblog.netflix.com/2014/01/improving-netflixs-operational.html" rel="nofollow">http://techblog.netflix.com/2014/01/improving-netflixs-opera...</a><p><a href="https://engineering.linkedin.com/stream-processing/moving-faster-data-streams-rise-samza-linkedin" rel="nofollow">https://engineering.linkedin.com/stream-processing/moving-fa...</a><p><a href="https://engineering.linkedin.com/data-streams/apache-samza-linkedins-real-time-stream-processing-framework" rel="nofollow">https://engineering.linkedin.com/data-streams/apache-samza-l...</a>
1. Learn how AWS or GCE works, not just with the command line tool but the APIs too. Fundamentally understand how all the offered technologies can be used together to host a platform for a business. While we still have bare metal and managed hosting, the world is moving to the cloud and your first priority should be to move with it.<p>2. Extend your skills into managing distributed software such as zookeeper, cassandra, etcd. In a cloud based world, machines can disappear at any time, hell entire Availability Zones can vanish because of an issue with the hosting provider. Fault tolerance is of the utmost importance. Distributed software such as zookeeper and cassandra are normally run in multiple AZs to tolerate such failure.<p>3. Learn about Docker and container orchestration. Like it or not, containers are the new level of abstraction and you should understand how they work. Knowing how to run a container isn't enough though, you need to understand how to run hundreds of them in an environment, which means some sort of system that handles orchestration. Look into Kubernetes, Mesos and Docker Swarm. All of these are in fairly early stages of public use - Mesos has been battle tested at Twitter for 4-5 years though).<p>I think these 3 things are really key for any person managing systems now and in the foreseeable future.
In addition to learning new/hot technology, I'd recommend making sure you've got your basics in (and I'm not suggesting you don't).<p>See the "Fundamentals" section in System Administration Body of Knowledge (<a href="http://sabok.org/sabok.html#_fundamentals" rel="nofollow">http://sabok.org/sabok.html#_fundamentals</a>)
Maybe not exactly new, but hot and for sure something you don't want to miss and probably don't know yet:<p>Learn how your operating system's network stack works, how you can manipulate behavior with sysctls or kernel arguments, maybe dive into stuff like the BSDs.<p>Also you may want to extend your horizon and get into nginx, smtp, shell scripting, etc., if you don't know them well. All of those offer way more than the basics and things can come in handy.<p>You might want to go into the field of virtualization, but please don't start out with Docker. Docker is nice, but you really want to understand the basics first (LXC, virtualization in general). There are awfully lot of bad Docker setups, just because it is hot.<p>Another thing that one can spend quite a while getting into is uwsgi. One can use it for way more than managing Django or Flask applications.<p>Securing services with SSL is also something a lot of people seem to do wrong, so actually understanding the details of what you do might be something you might want to dig into.<p>When it comes to DevOp tools you might want to take a look at agent-less alternatives to Puppet (Ansible, Rex, cdist).<p>Another interesting thing is logging. The Elastic Search/Kibana stack is hot and relatively new (at least the latest/upcoming release of Kibana).