Hi guys, In this post, I’m going to introduce the books that help me a lot on the path to becoming a Cloud DevOps Engineer from a Full-stack Developer. Hope it is useful for everyone, the books that I recommend go from basic to advance.
First, the most basic thing that you must know is Linux. Don’t try to become a Linux master (because no one can claim to be a Linux master), we just need to understand the basics about Linux like What is Linux? What’s the difference between Linux and Ubuntu or Centos? Basic Linux commands and Linux host filesystem.
For beginners, I recommend this book for you: Linux for Beginners.
This book will teach you the basics of Linux, the difference between Linux and Ubuntu, the basic Linux command line (CLI), and what CLI is needed? And how to create and manage users on Linux.
If you want to learn deep about Linux, I recommend this book: Ubuntu Linux Unleashed 2021 Edition.
After you learn the basics about Linux, the next step you need to learn is how to run the programs on different Operating Systems (especially Linux).
It would be best if you learned the basics of NodeJS, JAVA, or .NET. But note we don’t need to learn how to program the language, we just need to learn how to run it, how to install language packages and libraries, and how to build or compile code in runtime.
For example with NodeJS, you just need to learn how to install NodeJS, how to run NodeJS use pm2, how to install NodeJS package using NPM.
For example with JAVA, you need to learn how to install and run JAVA, and how to compile JAVA into a jar file.
Next, to run different programs as easily as possible then we have to learn about Container and Docker. For basic about Docker, I recommend this book: Docker in Action, Second Edition.
In this book, you will learn the most basic about Container and Docker, how to run the container, how to build source code into the container image, and how to use docker-compose and self-host container registry. When you have done, you will have a better overview of how to use Docker to run our programs on different operating systems.
After doing the basics of Linux and Docker, now you can confidently step on the path to becoming a DevOps Engineer.
The next thing you need to learn is how you can automatically deliver our products or programs to clients as easily as possible. The way to do that is called CI/CD, for the basics of CI/CD then I recommend this book: Continuous Delivery with Docker and Jenkins.
This book will show you what you need to set up the CI/CD flow of your program. You will learn the basics of Jenkins and Jenkins Architecture, how to install and set up Jenkins, and how to use Jenkins with Docker.
And along with learning about CI/CD, we also need to learn about Container Orchestration. Container Orchestration is the way to operate and manage thousands of containers in the actual production environment that our customers are using. For beginners to learn the basics of Kubernetes then the book Kubernetes in Action, Second Edition is a great choice.
I love this book, Marko Lukša is a great author that writes about Kubernetes. In this book, Marko Lukša will teach you what’s Kubernetes and how to use it from basic to advanced, and best practices on how to use Kubernetes to deploy applications.
And try to practice more and more about CI/CD and Kubernetes.
If you finish reading the above books and practice a lot then welcome, you can confidently say you are a Fresher DevOps. The next thing you should learn is how to apply the theory in real work?
Although this is a very difficult job, I also have the following two books to recommend to everyone.
The first book is Managing Kubernetes.
This is a book that will show you how to run Kubernetes in production, how to install Kubernetes in production, how to manage your Kubernetes cluster, and how to backup and restore it.
This is a book that will give you a lot of practical examples, on how to install many applications on the Kubernetes environment, and how to monitor applications.
Is there any way to make your value better than other DevOps candidates? In my opinion, for our value to be better than the rest of the DevOps candidates, we need to know about Cloud. The future will be Cloud’s playground.
To learn Cloud, we should choose the largest and most used providers, at the moment when I write this article, the most popular Cloud is AWS, and I also like AWS very much.
To start with Cloud, I recommend you two books and a course on Udemy. The first is the book Amazon Web Services in Action, Second Edition.
Throughout this book, you will learn about what AWS is, the basic services of AWS, how to use it, how to design a highly loaded system, and how to design a system that is easy to scale on AWS.
Next is a course that teaches us how to get an AWS certification: Ultimate AWS Certified Solutions Architect Associate.
This course is by a very famous instructor, Stephane Maarek. He will teach you everything you need to know about AWS to take the certification exam. Although it is a certification exam course, after completing the course, we will have the best overview of AWS.
Next is the book about Infrastructure as Code: Terraform in Action.
Usually, when working with AWS, we will use another tool provisioning infrastructure on AWS, and the most popular tool at the time I write is Terraform. The above book will show us all the things we need about Terraform and how to use Terraform with AWS.
If you can complete all of the above, congratulations, you have become a DevOps Engineer 😁. But the path of learning never ends, to have more knowledge, we must study and learn. These are the books I am reading to improve my knowledge.
The first is a book about monitoring, of course, in our operation then monitoring is indispensable: Monitoring with Prometheus.
This book will teach us how to use Prometheus to monitor the system and Grafana to query, visualize, and alert your metrics system.
Next is Search Engines: Elasticsearch in Action.
This is a book that will teach us about Elasticsearch, although this book teaches Elasticsearch 5.x, from there we can google more to learn about how Elasticsearch 7.x works, which will give us something to look at it in more detail.
Finally is about Event Streaming: Kafka: The Definitive Guide.
When we work with large systems, Event Streaming is indispensable, and Kafka is one of the most powerful tools to do this.
These books help me a lot and hope they will be useful to everyone. DevOps and Cloud are very interesting, although we can never learn all about them, keep learning guys 😁.
If you like my article you can support me by buying me a coffee ☕️, thank you.