# If I would start DevOps from 0 - How would I start and what would I learn

## Метаданные

- **Канал:** TechWorld with Nana
- **YouTube:** https://www.youtube.com/watch?v=Cpy20DnIDTI

## Содержание

### [0:00](https://www.youtube.com/watch?v=Cpy20DnIDTI) Segment 1 (00:00 - 05:00)

Stop following random road maps that make you even more confused than before you started using them. To make this easy for you, let me tell you the exact sequence that actually works because it has worked for thousands of engineers in our programs. So phase one, cover the foundations. The more stable the foundation, the easier it will be for you to stack the new skills on top of that. If you try to shortcut your way and outsmart your way to the phase two by trying to learn DevOps skills on a shaky foundation, you're going to need longer to learn those skills and it's going to be much more painful. So do not skip phase one. The foundation is Linux fundamentals, which is literally the foundation of anything that you do in DevOps because you're literally going to be managing systems that are powered by Linux. So, Linux fundamentals, bash scripting, and git. Those three are absolutely essential. If you're a complete beginner in those, if you've never seen Linux terminal before, you never seen git before, then calculate two month for really nailing all the concepts for those technologies. If you're already familiar, then one month should be enough. And as I said, without this, everything else is shaky. So, start with those. Be patient because the phase two is going to be much faster and easier if you got the fundamentals right. Which leads me to phase two which is very simply cloud basics. Either AWS or Azure. I always recommend AWS because it has the largest market share in the entire world in terms of projects powered by AWS. So, always choose the technologies that has the highest probability of being listed in the job descriptions or whatever you're looking for because otherwise they're very similar. You're not going to learn new concepts on Azure or AWS. It's cloud. So, learn the basics of cloud, not AWS or Azure specific concepts. Okay? Which means compute, storage, networking, it works the same on any cloud. So learn the concepts first and then learn how AWS implements those concepts. And this is very important. Do not focus and chase certifications. Build actual hands-on projects on cloud infrastructure and then to prove your knowledge then you can go do certifications not the other way around. And again do this deeply properly really understand the foundational concepts. If you log into AWS console, you're going to see thousand services. You only need five of them to really master the basics, the fundamentals of cloud. Okay? So, do not be overwhelmed by all the noise and all these other services. And as I said, those are compute, storage, networking. And to master those at a really solid level, you're probably going to need one to two month again, depending on your previous experience. And as I said, no skipping those phases. Those are absolutely essential. And then we go to phase three which is the actual start of the DevOps specific concepts and technologies. One of the most important ones are infrastructure as code like Terraform or Palumi. Again focus on the concepts rather than the tools because Terraform may change but the concepts will remain. So learn what the infrastructures code concept is, why it exists, and what problems it solves, and then how to actually use it for real life use cases. Learn how to provision infrastructure through Terraform code on AWS. Learn how to automate things, different parts of the system, different tasks, repetitive things using infrastructure as code. Again to really master this calculate around one month for acquiring the skills. Then we go to phase four and five which are the juiciest parts of DevOps and this is where everything comes together. Phase four focus on containerization concepts of containers how they work the implementation with Docker and then the container orchestration with Kubernetes. You don't need to become an expert here. Again, 20% of Docker and Kubernetes make up 80% of the use cases where you're going to use them. So, master the basics and fundamentals, which should take you about one to two months, and then move to phase five, which is CICD, automated release or deployment. Basically, understand the concepts first and then pick one of the tools. Any one of them will be absolutely fine. I recommend either Jenkins, GitHub actions or GitLab CI. And in order to learn these tools, please build actual pipelines, not just read documentation, not read theory or follow some shallow YouTube tutorials. Actually build a pipeline end to end

### [5:00](https://www.youtube.com/watch?v=Cpy20DnIDTI&t=300s) Segment 2 (05:00 - 09:00)

that deploys a code that you just committed all the way to a containerized environment like Kubernetes or AWS infrastructure. And CI/CD is the backbone or core of DevOps. So I would focus probably most attention here. So take one to two months to really nail this and master this and cover most of the production use cases and then as a final step move on to a little bit more advanced level which is observability which is Prometheus Graphana monitoring stack. Invest one month to really understand again the fundamentals here. You don't need to become an expert in observability. You need to understand how the basic concepts, how they work and how you can actually implement observability in your systems. So if you count this all together, these are literally just a few months to have a really well-rounded solid knowledge without any knowledge gaps. It's absolutely doable. We're not talking about years here. We're literally talking about just a few months of intense focus and commitment to learn these things. But here is the mistake that I literally see majority of the people actually make which is learning linearly and in an isolated way. What do I mean by that is that people learn these tools separately individually. They do an AWS course here. They do a docker Terraform course here. But they never combine these tools to actually build those processes. They consume some shallow Udemy courses or YouTube tutorials, including mine, but they don't go deep enough for you to be able to build actual real life processes. So, you have so many missing pieces that you just don't know. And those pieces are actually what makes you valuable for any company because anyone can do a Udemy course or do a one-hour crash course on YouTube, right? That doesn't make you valuable enough as an engineer. So when you're learning, the most important thing is you take whatever you're learning and you combine it with everything else that you already know by applying every technology to real projects and use cases that you can think of and building on it continuously. You don't start every project from scratch. You start building and you expand and expand gradually because theory or some syntax basics of each technology without application is completely useless. And the interesting thing is that most people know and feel when they have knowledge gaps when they don't have deep enough knowledge because you feel that sense of insecurity. When you read a job description, you feel like you're not good enough to apply for the job. when you are doing an interview, you feel that you are not able to answer those questions because you never learn those things. And that was literally my major focus when I created DevOps boot camp to bridge that gap that I was seeing of people just not learning the connections or the combination of tools and just learn these things in isolation or didn't understand the concepts and just learn the syntax and specific details of a technology instead of understanding the underlying concepts. And one more interesting thing is that this road map can actually be personalized based on what you already know because you may be an engineer with software development background or QA and past automation background, CIS admin, network engineer, database administrator, whatever your previous skills are, you can use some of that to build a DevOps skills on top of that. So if you really want to get started with a proper structure then the first step is to define a clear road map and we actually created a detailed road map for our community to help you with that because I know how overwhelming this journey can be. So grab it from below and use it as your next action step. Now I really hope this video helped you get some clarity about what you need to do next. And if you know a colleague or friend who also needs this clarity then share this video with them as well. And also let me know in the comments if you have been learning for some time already. What is the most difficult thing that you struggle with or you have struggled with the most? And I will try to answer all of your questions in the following videos or directly in the comments. And with that, thanks as always for watching and see you in the next

---
*Источник: https://ekstraktznaniy.ru/video/20712*