Free Resources To Become SRE/DevOps Engineer
The aim of this post is to centralize a set of free resources in order to present a way to understand and develop Site Reliability Engineering (SRE) and DevOps skills.
Join the DZone community and get the full member experience.Join For Free
The purpose of this post is to centralize a set of free resources in order to present a way to understand and develop Site Reliability Engineering (SRE) and DevOps skills. The content of this post is based on a return of several years of experience in the industry and a willingness to share content that may still be unknown to some people who would like to evolve in their career or open themselves to new opportunities.
The purpose is not to explain what an SRE is or what the DevOps methodology is, but to describe probably the major aspect of these roles: Continuous Learning.
Continuous Learning is an opportunity anyone should have to learn and develop professional skills simultaneously while working. The main idea behind that concept is to develop habits of acquiring skills, knowledge, and abilities to help anyone become better at their jobs. Obviously, to ensure effectiveness, people are required to have a desire to learn and grow, resources (free or paid), discipline, and time.
Many of these factors are personal, curiosity, and open-mindedness (are you ready to question your knowledge? To find new ideas? Etc), time allotted (professional or personal) to research, reading, watching video content. Obviously, this work should be done during work hours, like during training sessions, R and D sessions with coworkers, lunch and learn, etc. But, again, it is related to the time each person wants to allocate to his or her own learning path.
This post will not find the right formula for you, but we hope it will give you a great overview of all the existing resources that you can use to get your own continuous learning path off to a good start.
Join Slack and Discord Communities
The main purpose of DevOps is to increase the communication and collaboration between Development and Operations teams. In contrast to emails, which tend to be more formal, Slack and Discord are two collaboration hubs that bring the right people, information, and tools together. They provide a more personal and lighthearted platform, similar to Facebook Messenger or WhatsApp. They offer communication updates in real-time, so urgent conversations or important notices can take place immediately.
These are the right tools to increase productivity, as everyone will receive updates automatically, increasing the rate at which actions occur. Today, various Slack and Discord channels exist to exchange ideas, concepts, issues, questions, and tips on many topics with a growing community.
This is probably the main resource anyone can use to get information on any topic for free. Here is a curated list of Slack channels anyone interested in the SRE and DevOps should be part of:
- The official Kubernetes Slack workspace with a great community and learning content around Kubernetes topics (deployment, management operationalization, etc).
- The official Cloud Native Computing Foundation Slack workspace with channels for almost all the tools managed by the CNCF and main events.
- The official Cloud Slack workspaces like GCP, AWS, and Azure. It is definitely good to be close to the community of your Cloud provider.
- DevOps Engineers and DevOps Chat are two growing public Slack workspaces where engineers all around the world share their knowledge on DevOps topics.
- DevOps, SRE, and Infrastructure and LetUsDevOps are two Discord workspaces with also a growing community and great content.
No, a book is not free, but they have always been a great support to break down concepts and ideas, and IT principles are not an exception. Today, there are several well-known publishers who try to provide updated content on new trends every year. It is probably not easy for them to find new topics, the experts ready to write something on it and publish it, so that is why the «old» books are still references in multiple areas.
However, the list of books made available to SRE each year is growing. This post cannot list all the books that anyone can read to get a quick introduction on every aspect of the DevOps methodology or the SRE principle. But, we tried to make a short list of books that deserve attention:
- Site Reliability Engineering (free books on Google)
- The Phoenix Project and the Unicorn Project
- Lean Enterprise
- Building Microservices
- Designing Data-Intensive Applications
- Design Patterns for Cloud-Native Application
- Cloud-Native patterns
- Leading the transformation
- Fundamental of Software Architecture
- Effective DevOps
- DevOps Handbook
- Infrastructure as Code
- Ansible Up and Running
- Terraform in Action
- Mastering Jenkins
- Continuous delivery
- GitOps and Kubernetes
- GitOps Cloud-Native Deployment
- Database Reliability Engineering
- Kubernetes in Action
- Kubernetes Up and Running
- Cloud-Native DevOps with Kubernetes
- Securing DevOps
- Learning DevSecOps
- Distributed Systems Observability
The list of books to read continues to grow every year, in order to give you the chance to get started correctly, here is a sub-list of recommended books to understand what DevOps methodology has solved, how to drive change, how big companies did it, and how to implement it with native cloud tools:
Watch Online Training
We cannot deal with Continuous Learning without talking about online training based on videos and practice content. This format is probably the most used by IT engineers to train themselves on many aspects of our daily work.
Every day, new content is created to describe in detail the implementation of a new approach or a new tool in different environments, giving us a big overview of how everybody uses them and what they solve.
Every day YouTubers offer more and more content with short videos to introduce concepts, but other training platforms also propose great content for free, here is a curated list:
- Udemy is probably one of the most famous online learning platforms. All the courses are obviously not free, but some free content can be a good entry point to introduce you to new notions.
- Linux Foundation Training is the official online training platform developed by the Linux Foundation. This platform offers multiple free courses with self-paced certifications to properly start learning a new tool like Kubernetes.
- FreeCodeCamp is the biggest free online platform with great content to learn a new language, machine learning processes, and security concepts. The huge community behind this project makes it really interesting to start your journey.
- edX is another big free online platform with more than 2000 courses on multiple domains for any aspects of the SRE and DevOps, definitely a platform where to get certification on new trends.
This is a shortlist of free online training platforms, for more information, please refer to this GitHub project that centralizes a ton of resources.
Practice Online for Free
Making a commitment to practice is essential to maximize the impact of training. Practice is the only way to become proficient in a new skill. In IT, it is important to embrace failure to succeed. Failure makes people learn and grow. But, nobody wants to spend too much money on tests and failures. So, engineers need free platforms to test and train themselves on new skills.
Fortunately, multiple platforms exist today to fulfill these requirements. Here is a curated list of platforms that can be used “freely” to deploy almost everything:
- Play With Kubernetes, the most interesting platform to quickly set up a Kubernetes cluster to test almost everything for free for 4 hours.
- Play With-Docker, the equivalent, but on a Docker platform.
- Katacoda is an online platform with free training developed by the community to quickly test some applications on free Kubernetes clusters. This platform is also used by companies to train people online.
- FreeCodeCamp is another online platform to practice for free. The community behind this project is huge and is composed of multiple experts in different domains (on both the development and operation sides). The result is awesome and the philosophy behind the project should just be a model for other platforms.
This is a short list of online platforms that can be used to test a concept or a tool for free, other than the classic Cloud free tier that every Cloud provider provides (GCP, AWS, Azure, DigitalOcean, etc).
Continue With Self-Paced Certifications
Challenging and validating your knowledge on things that you have read, watched, and tested is a good thing to do to improve your skills. Certifications are probably an easy way to do it, even if certification will never replace experience and practice.
Self-paced certifications are different from other certifications. First, they don’t have the same level of consideration from companies, even if some of them require deep knowledge to succeed in the final quiz. But, it doesn’t mean that they don’t deserve attention. Succeeding on self-paced certification should be a personal challenge first.
Here is a curated list of self-paced certifications that you can start whenever you want:
- Istio Essential by Solo.io to get an overview of Istio and its implementation.
- Certified Calico Operator: Level 1 by Tigera to go deep in Kubernetes networking challenge.
- Gremlin Chaos Engineering Practitioner Certificate Program by Gremlin to introduce you to the Chaos Engineering concepts.
- Gitlab 101 certification to get a better idea of Gitlab implementation on the DevOps ecosystem.
- Qualys Security certifications to improve your security skills or update your knowledge.
This is just a short list of resources, for more information, take some time to read our previous post on the subject.
A blog post is a good format to share a simple idea, explain it and describe how to implement it, like this post, right?
Since the emergence of DevOps, a lot of documentation, posts, tutorials, etc have been developed by different people, experts in their domains. Fortunately for us, some platforms aggregate these documents into topics to let us easily find the information that we want/need.
Here is a curated list of platforms where to find great content on DevOps, SRE, and other related topics:
- Medium is a platform to read, write and connect for free. This platform is not dedicated to one topic, but many people use it today to share their information in the form of blogs and publications. Some of them deserve to be followed: KumoMind (Us!), Faun, The Startup, BetterPrograming, etc...
- Dzone.com is probably one of the best blogs for any IT engineer. The information is separated in big topics, making it easier to find.
- DevOps.com is another great blog focused on DevOps topics.
- FreeCodeCamp is probably the blog with the bigger community, as it relies on the training platform described in a previous section.
- Companies blogs like Netflix or InfraCloud deserve a mention for the great content they share.
- Other support like Reddit are heavily used by the DevOps community to find and share content.
Continue Your Reads on GitHub
Publications and posts are not the only free support that you can find to start your journey. People from the community started to aggregate useful information (posts, videos, training, certifications, etc) in “awesome” GitHub projects.
These awesome projects are managed by a group of people (experts for some of them) on multiple domains to ensure the quality of the content. GitHub is probably not the first place where to search and find this kind of information, but some projects definitely deserve to be “starred” and followed.
Here is a curated list of projects:
This is a short list, for more, please refer to this page.
Listen to Podcasts
Podcasts are another great format to share knowledge or debate on concepts with other engineers. This format is a current trend, every day, new podcasters offer new content, from company podcasts that want to present how their tool fits with the new trends, to individual engineers that want to share their knowledge and experience on tools.
Here is a curated list of podcast to listen:
- Kubernetes Podcast is a weekly news and interview show with insight from the Kubernetes community.
- The Cloudcast is an old podcast that aims to interview technology and business leaders that are shaping the future of computing.
- DevOps Radio and Adventures in DevOps are podcasts about everything DevOps.
- Cyber Security Sauna is a podcast bringing expert guests with sizzling insight into the latest information security trends and topics.
This is a short list, for more information, refer to this GitHub project that lists multiple podcasts on different domains.
Meet(up) The Community
Meetups have always been a great place to start when getting interested in a new topic. It combines a concentrated shot of information with social interaction and makes the discovery of this new field more enjoyable.
Even during the pandemic, meetups were still organized on a virtual basis. Two great communities that we would recommend are Data On Kubernetes and CNCF meetups over the world. Even though these two groups focus on Kubernetes itself, since this technology is trending so much, multiple topics are discussed in diverse areas.
There is obviously more than that, chaos engineering, machine learning, cloud-native application, programmatic language, security, etc... There is a meetup for almost everything. The only thing you have to do is find the ones potentially close to you to meet engineers and talk about amazing subjects.
To find more meetups, please refer to the official website.
Conferences You Should Attend at Least Once
As explained before, the main purpose of DevOps is to increase the communication and collaboration between Development and Operations teams. What is better to break this wall down than having conferences sharing content for both teams?
Since the emergence of DevOps, many conferences have been created to create a space (virtual or physic) to meet people and share new technologies or concepts, as well as sharing feedback on real implementations of tools.
There are multiple conferences that every SRE and DevOps should attend at least once. Unfortunately, some of them are expensive, but, fortunately, most of those conferences are recorded and then available for free on platforms like YouTube. Some of them are even exclusively online.
The content produced by these conferences is a good entry point for anyone interested to know more about different aspects of DevOps.
Here is a curated list of conferences where you will find great content:
- The CNCF + KubeCon is one of the most exciting conferences where engineers all around the world come to share their usage of different tools managed by the CNCF like Kubernetes. Each talk is recorded and can be found on their YouTube channel.
- The All-Day DevOps is the world's largest online conference. It gains in popularity every year and proposes a lot of content around DevOps and SRE domains.
- Each Cloud provider (GCP, AWS, and Azure) has its own yearly event. Depending on your provider, it is highly recommended to check the schedule and potentially attend or watch later videos to get an idea of the new features or the improvement to an existing one.
- The Open Source Summit, organized by the Linux Foundation, is another great one to get a quick update on open-source tools.
- The SRECon, organized by Usenix, gathers engineers who care about site reliability, systems engineering, and complex distributed systems at scale. Each talk is recorded and can be found on their YouTube channel.
This is obviously not the end, this post is an opinionated list of resources that could be used to introduce anyone to the DevOps/SRE world. If you think that something is missing and deserve a mention, feel free to share it in the comments!
For more information on some mention of this post:
Published at DZone with permission of Nicolas Giron. See the original article here.
Opinions expressed by DZone contributors are their own.