hello everyone my name is Abhishek and welcome back to my channel as you all know we are going to start the devops Zero to Hero codes and today is the D1 I know you're all very excited and I'm equally excited as well so today I'm here with the first day of the course and as is the first day we'll start with the basics what we are going to learn today is we'll try to understand what is devops we'll try to see Buy devops which are you know fundamentally these are the important questions for any of the devops job interviews so let's say you are attending a devops job interview if you don't understand the concept of devops why you are using devops what actually is devops then you know the interviewer will lose you there uh during the first five minutes you know it is very essential for you to project yourself in a better way so that's why you need to understand what is devops and why you have to implement devops and after that we'll see how to introduce yourself for a devops engineering position whether it's a fresher position whether it's experience we'll talk about uh all of these things uh how do we introduce ourselves uh during an devops interview and then we'll also try to see the most asked question again during an interview is people will ask this question in different way people might ask you what are your day-to-day activities as a devops engineer or people might ask you um you know can you walk us through your day as a devops engineer what do you usually do on everyday basis so these are the four important questions uh that you have to know uh before you start with learning any devops tools or before you learn how devops will fit into your software development life cycle these are some of the questions that you have to know and you have to have the answers for and this not that uh because these are the questions that usually people start with the interview right whenever you give interview in a man company or any uh startup as well people would start with these basic questions so always be confident and be prepared with what you are going to answer for these questions so we'll start with one by one so we'll see what firstly we'll see what is devops then we'll move to uh see why devops has come into picture and uh we'll see how to introduce yourselves and finally the day-to-day activities okay so without wasting any time so firstly what is devops right so if you look at the textbook definitions for what is devops there are hundreds of definitions okay so if you go to amazon. com they have a definition for devops if you go to uh Red Hat they have a different definition for their devops but in general like you know what is devops we will try to understand that one okay so if you ask me devops is basically a cultural I mean it's a culture right devops is basically a practice or a culture that you are adopting in your organization like you you cannot uh call it on a specific term but in general you can say devops is a culture that you are going to follow that would increase your organization ability to deliver applications right so that is the end goal of devops so if you have to put that in one single line you can say it has a culture that improves the organizational's ability to deliver the applications okay so end of the day what any organization will do any organization would deliver their applications right so the delivery is the key factor okay so whether it's example. com whether it's amazon.
com flipquart. com what is the end goal of any organization the end goal of any organization is the delivery right so let's say uh there is an organization called example. com okay so if example.
com is taking 10 days okay this is just an example let's say example. com is taking 10 days to deliver their version of an application from V1 to V2 let's say they are taking 10 days okay or let's consider pubg okay so pubg is one of the widely played games let's say there is an issue in the pub J or they want to introduce a new feature of the pubg version so if they are taking 10 days to introduce this version everything is done let's say the development is done and everything uh else apart from the delivery is delivery uh point of view everything is done and if they have to hold their application for 10 days just to deliver right to deliver to the unit staging then the staging environment then finally to the production then that's not a good practice right so what should happen ideally is whenever there is a security issue or whenever there is a bug in your software like you are using your Android mobile and all of a sudden your Android mobile has some bug which has the ability for the hacker to get into your mobile phone and hack your mobile phone so what would Android do they would quickly launch a new version and they'll say everybody has to upgrade to this version or if you have enabled the auto upgrade your application would be I mean your Android would be Auto upgraded so all this process should take within like you know if it happens within hours then it is best if it happens in one or two days then it is also a good one right instead of taking 10 days if you can have the ability to deliver your new version in one or two days or couple of hours or in minutes of time that is called devops okay so devops is a process of increasing the ability to deliver your applications but is it only about delivery no okay so that would be the next thing that we have to look at so most of the times what happens is people would compare devops okay whenever even you try to learn devops mostly people talk about cicd okay if you if you're new to devops and if you don't know what is cicd that's totally fine don't have to worry about it but in general people always look at devops as cicd that is continuous integration and continuous delivery but even in my previous uh slide when I was explaining you I said devops is about improving your delivery but is it only about delivery no so devops is about improving delivery okay that is something that we talked about improving delivery but how can you improve the delivery if you have to improve the delivery let's say if you forget devops aside let's say there is a company that is manufacturing chips or let's say there is a company that is manufacturing uh some kind of biscuits so if they have to improve their delivery what is something that you have to do they have to include the automation okay so devops is always about I mean devops is also about automation okay now let's say they have automated so the chips are being manufactured in one single day okay so they reduce the manual labor and they increa they brought in new Machinery that can produce the chips in one day but is it okay is it uh perfect for the customers no what the customer would require is apart from the automation they would also look at the Quality right so if you are manufacturing the chips in one single day that's fine for me but as an end user what I'd be looking at is the quality as a manufacturer you would be looking at automation okay and devops is also about monitoring okay what is monitoring so monitoring is nothing but let's say let's take the same example so you are providing the chips you have automated the process you have also maintained the quality but how would you ensure that your quality is maintained you have to build in monitoring right so always make sure that whenever there is an issue in the quality or if there is an issue in the automation somebody has to report back to you right that is monitoring and finally there is one more important aspect that is any guesses here you have quality you have automation you have monitoring the other important aspect is testing Okay so testing is also one of the important aspect so without testing you cannot ensure quality or you cannot ensure that your automation is correct so now if we take it the new definition okay in the previous slide we call it devops as devops is the process of continuously delivering in a quick manner right that is what we talked in the previous slide but now if we talk about the new definition after learning all of these things now I can say devops is a process of improving your delivery I mean making your delivery quicker by ensuring that there is a proper automation you have ensured that the quality is in place you have ensured that you have set up proper monitoring and you have ensured that you have a continuous testing so this is the definition of devops okay so let's try to put that in uh okay let me go back let me try to put that on a paper okay for you for anybody who is just starting to understand the definition of devops what I would say is devops is a process of improving the application delivery so it uh I mean you don't have to always consider it as an application it can be anything right you can deliver an application you can deliver a script you can deliver anything okay just for your basis I just called improving the application delivery but you can also consider it as improving your script delivery or any binary or anything okay by ensuring okay devops is a process of improving the application delivery by ensuring that there is a proper Automation in place okay by ensuring that there is a quality that you have maintained continuous monitoring monitoring is a very key aspect okay people also call it as observability so monitoring and observability are hand in hand things whenever we uh deal with or talk about uh monitoring we'll also talk about observability but for now you can think monitoring or observability and finally there is a continuous testing this is devops okay so this is a perfect Ideal World definition of devops you can modify it on your own basis but if you ask me uh during an interview what I would say is if somebody is asking me let's say Abhishek is giving an interview an interview asked me that what is divorce I would say devops is a process of improving the application delivery by ensuring there is a proper automation with a code quality that is maintained or with the application quality that is maintained and ensuring there is a continuous monitoring and continuous testing in place okay now what will you achieve with all of these things end of the day your end goal as a devops engineer should be that there should not be any manual process or during your application delivery you have to fasten up your process let's say your application is delivering in you are hired as a devops engineer okay so example. com is hiring a devops engineer what would be the goal of the CEO or the team manager of the example.
com would be once it devops engine is in place what he'll expect from you is if their application is delivered in two weeks okay so what what would be the expectation from a devops engineer is he has to reduce this two weeks to one week but again by ensuring that you have all of these things in place and so this is a basic definition okay because today we are dealing with day one so I don't want to complicate the uh definition by including all of the things like you know I don't want to include the complicated terms like being Cloud native or all other things which will come in place okay while we progress to the new or the next episodes of our devops learnings we would include the concepts of being Cloud native we will include the concepts of being you know serverless but not today today you just understand these things that is more than enough okay but as we advance what I want to tell you is I'll talk about being Club native I'll talk about being a serverless or shift left so all those things will come in the next phases or in the next episodes of devops but for today I hope everybody is clear with this definition okay so for a beginner this is more and well and good to talk about devops okay so now this is about what is devops now if you understood what is devops and how to answer this in your interview the most important thing is to understand why devops because that would be the next question so if your interviewer is really looking for hiring a good candidate your interviewer would be asking why devops okay okay now I I'll hire you but why should I hire you or why should I hire a devops internet so for that the thing would be to understand why devops okay now let's try to understand a very simple thing okay so forget about the definition and everything so what I will try to explain you is firstly let's say uh let's assume that there is a developer okay so let's call him developer I'm not sure if the color contrast is fine okay so what this developer is doing is he is trying to write the code for his application okay so let's say the developer has developed this application now end goal is whether it can be a Android application whether it can be a static website or whether it can be a web application what would be the end goal for this developer or what would be the end goal for this uh company called example. com okay so once this developer writes the code the end goal would be the receiving end that would be the customer right so there has to be a customer who uses this application so that would be my end goal okay so developer is writing the code and customer is receiving the code so what happens in between let's say devops is not in place so let's go back to 10 years okay so before 10 years so what we are discussing now is before 10 years so what happened was before 10 years when these people were not there like the devops engineers were not there what used to happen or the process of devops was not there what used to happen is once the developer writes the code so he used to check in this uh application code because you know there will not be one single developer right there will be multiple Developers so they have to share their code somewhere so they used to put that in a central location and after that what you what used to happen was from this central location this devops engineer or uh sorry there was no devops engineer so this guy who used to be called as a system administrator or a build and release engineer what they used to do is they used to create a server okay and what they used to do is they used to deploy this application the developer has wrote the application they used to deploy this application on the server okay so let's call this as app so the app is deployed on the server and the next process would be somebody called a tester okay so who is this guy there is a guy called as a tester so tester would test this application on the server that is created by a system administrator okay then there is one more position called as a build and release engineer okay now we are talking about different different terms don't worry I'll explain each enter each and every term in a very simplified manner so that you will not be out of sync so the system administrator has created a server now the build and release engineer what we would do is that once the tester this tests this application on the server he would promote this application onto the next level so either that level can be a production level or that level can be a pre-production or somebody also called as staging environment so again once this application is well tested on the pre-prod this build and release engineer would take forward uh to the customer that would be on the production server okay so these are the different processes that used to be involved so let me try to simplify this in an easy manner okay because we are talking uh quickly you might lose me somewhere so that I would try to explain in a simplified manner what are the different terms that we called one is system administrator okay now the other thing that we also talked about is build and release engineer also there are some kind of people called server administrators okay so for one simple process all that we are talking is before 10 years okay so all that I am explaining is before 10 years so for one simple process what was the process the end idea was to deliver this application from developer laptop to customer there were these three different roles that were involved okay so why there were what were we developing application to production so what I told for this process there were these three people that were actively working one is the system administrator what was system administrator doing he was creating a server why server is required because you cannot test the application on your personal laptop right in an organization you might say that okay my application is working perfectly on my laptop nobody is going to listen or nobody is going to trust so end of the day you have to test it on a server so the system administrator used to create a server it can be any platform right so before 10 years there were no uh typically the cloud platforms like AWS people were not using so people were using platforms like VMware okay or openstack so these were the things that people were using or any other uh you know they used to have their own hypervisors to create like Zen for creating the servers on their bare metals because before 10 years everything was a bare metal so the system administrator created a server and then what happened is on the server somebody has to install the application right because developer has created the application on his local and he has checked in his code onto SVN or CBS or any version control system that is a centralized code Repository because everybody has to access it so the code repository developer has pushed and then the build and release engineer so now this guy has came into picture what he has done he deploys this application onto the server now to deploy this application onto the server there has to be a application server on This Server right so application server is the one that holds the application onto the server so the server administrator used to create this app server okay what is this called app server so because multiple parties were involved now further understanding purpose I just uh explained all of these rules so in a real world scenario before 10 years there were other roles as well so even if you take these three roles first simply delivering the application from your personal laptop or from the developer laptop onto the production server what was happening it was involving system administrators it was involving build and release engineers and it was also involving server administrator so the entire process was taking for example 10 days okay so the devops or the word of devops has emerged or evolved because of this very own reason that is because multiple people were involved because all of these is a manual effort okay so whenever there is a manual effort your process will be slow so to automate this entire process the word or the world of devops has emerged okay is it clear so what was happening the system administrators build and release engineers and the server administrators were working closely or working together to deliver your application from your personal laptop onto your production that is for your customer so because everything was manual and different teams were collaborating the process was taking more time for example I said 10 days but it could be one month two months or it could be also five days but the entire communication and the entire system was not effective this was 10 years old so now to improve this process what has happened everybody has moved to a New Concept called devops no I underst no I hope things are clear okay so why devops has evolved devops has evolved for this very own reason that is to improve the process of delivery so that is something that I am explaining I mean that I explained you in the second slide okay so devops is a culture why is it a culture because unlike the previous uh times unlike 10 years old there were no Mal there there are no multiple teams now so previously there are multiple teams but now there is only one single team so that's why it has to be a culture or it has to be a you know a way of working because as a devops internet tomorrow there might be a new tool that improves your efficiency so you have to adapt to it or you know you might have to uh pivot or take a change in the process of your working and if it improves your efficiency somebody comes like your CTO game and said that okay we are using this Tool uh if you introduce the other tool that we are not using our improv the our efficiency will be improved as a devops engineer you have to have that mindset to adopt to the new tool or as a devops engineer it's a culture that you are building in your organization so that's why we say devops is a culture that improves the delivery process by following all of these things that I have explained by adopting to the automation by ensuring that there is a quality in your application by ensuring that you are continuously monitoring in such cases like you know there can be a failure or there can be something that is not working as expected so that's why you also have to have monitoring and finally you have to continuously test your application by involving all of these things you improve the efficiency of your organization and that is the role of devops engineer I hope the things are clear so now you understood what is devops why devops right now the next thing that we would learn here is how to introduce yourself as a devops engineer so I've seen many people fail here okay because even when I'm taking some interviews uh when I ask people like how like you know tell me about your uh day to day activities or you know uh introduce about yourself what happens is people uh tend to not explain everything or you know uh sometimes people have an opinion that uh I should only be explaining about myself in one or two minutes no there is nothing like that okay whenever let's say you have something unique or you know you feel that you need more time like not in one to one to two minutes you can explain about yourself take your own time that's fine if you want to explain about yourself or if you want to explain what you are doing in a day-to-day uh basis that's totally fine if you take more time while explaining yourself but to explain or to introduce about yourself what you can simply say is that you know I am working as a devops engineer that is for sure from past any number of years that you want to put like you know let's say you want to you are working as a devops engineer from past four to five years because you know you cannot say that I am working as a devops engineer from last 10 years because devops itself was around like you know uh from last 10 years and it has been very popular from last seven to eight years so like if you say our organization has adopted devops 10 years back then interviewer will lose you at that point itself because that's not the truth so what you have to say is I I am a devops engineer I have overall five to six years of experience four to five years of experience in devops and before to that I was working as a system admin or people say that I was working as a build and release engineer or people also say that I was working as a server administrator it is up to you okay and even if you are coming from other backgrounds like you might be a Java developer or you might be a python developer or you might be a simply automation engineer you can also say all of those things okay but always try to put your previous experience also in place if you are a fresher you don't have to worry about all of these things you can simply say you know I just started working as a devops engineer I was passionate about learning devops or all of those things but if you are a seasoned uh software engineer or if you have experience in devops oh sorry if you have previous experience always mention your current experience in devops and also try to put whatever you're doing previously because that is really important for somebody to understand from which background are you coming into devops okay like if you are a system administrator and if you are just switching your career to devops as an interviewer I can correlate and understand okay he has some experience in servers and uh sorry servers and administrating servers so okay he can be of this use in my current organization like if you are if I am interviewing a person and if he has past experience in system administrator I can I can think of it like okay because we are using AWS his experience might be useful for me in administrating this AWS servers or he can help me in automation or migrating my existing uh physical infrastructure to uh on-prem sorry Cloud infrastructure so I can think of all these things as an interviewer so that's why whenever you are explaining someone if you have experience in something before devops always try to put that and don't try don't try to try to lie saying that I have 10 years of experience and devops that is not truth nobody is going to buy that argument from you okay so once you explain this what you are currently also I mean I have four to five years of experience in devops I'm previously coming from experience of system administrator or build and release engineer or if you just have experience in devops uh for past two to three years you can also say that after that explain about your roles and responsibilities so in the current organization I take care of automation okay you can say of these things I take care of automation I ensure that there is a quality uh that I'm maintaining for the applications I ensure that I have set up continuous monitoring and I have automated the testing process into the devops lifecycle so this is how you introduce yourself and if people are looking at uh the tools and Technologies like let's say you want to include the tools and Technologies uh before even before your introduction I mean even before you uh Deep dive into your interview like during the introduction phase people also uh talk about the tools and Technologies I don't uh really suggest that but if you want to talk about the tools and Technologies or the interviewer is asking you about the tools and Technologies you can say that you are working on the uh platforms like you know for the CI CD I'm using GitHub actions or for the deployment of application onto uh container orchestration I'm using kubernetes or you are using configuration management using ansible infrastructure automation using terraform you can explain about all of those things but for this class because I have many audience who are just learning devops today and today is the day one right so I don't want wanted to complicate and you know explain the devops definition or the introduction of devops using all of those aspects so for today you can just say these things like explain what is your current experience in devops explain where what is the background that you are coming from and then include these key factors that is the four pillars of devops that we just talked about automation quality monitoring and testing so this is how you introduce yourself in a devops job role okay so for today's class I think this is more than enough now what you will do is because you understood what is devops y develops just Google around try to understand what is devops like you know you get hundreds of blogs uh most of the times you know uh these are the things that would be repeated like the poor four pillars or options the five pillars of devops so because you completed watching this video now if you Google around you might find some new things like you know you can explore those new things uh but if you have any questions you can also post them in the comment section so that you know uh let's say you found something new in devops in the definition of devops you can put that in the comment section saying that okay Abhishek I Googled around I found this thing how do you think about this should also include this in my uh introduction we can discuss that and I can also if I find that interesting I can also talk about that in my uh next video okay so I hope you found this video uh useful so one thing that I would request everybody is we are going to do this like 40 days of devops classes from day one to day 40.