Wednesday, July 8, 2020

DevOps as a Cultural Revolution

DevOps as a Cultural Revolution DevOps is Neither a Method nor a Tool, its a Culture Back Home Categories Online Courses Mock Interviews Webinars NEW Community Write for Us Categories Artificial Intelligence AI vs Machine Learning vs Deep LearningMachine Learning AlgorithmsArtificial Intelligence TutorialWhat is Deep LearningDeep Learning TutorialInstall TensorFlowDeep Learning with PythonBackpropagationTensorFlow TutorialConvolutional Neural Network TutorialVIEW ALL BI and Visualization What is TableauTableau TutorialTableau Interview QuestionsWhat is InformaticaInformatica Interview QuestionsPower BI TutorialPower BI Interview QuestionsOLTP vs OLAPQlikView TutorialAdvanced Excel Formulas TutorialVIEW ALL Big Data What is HadoopHadoop ArchitectureHadoop TutorialHadoop Interview QuestionsHadoop EcosystemData Science vs Big Data vs Data AnalyticsWhat is Big DataMapReduce TutorialPig TutorialSpark TutorialSpark Interview QuestionsBig Data TutorialHive TutorialVIEW ALL Blockchain Blockchain TutorialWhat is BlockchainHyperledger FabricWhat Is EthereumEthereum TutorialB lockchain ApplicationsSolidity TutorialBlockchain ProgrammingHow Blockchain WorksVIEW ALL Cloud Computing What is AWSAWS TutorialAWS CertificationAzure Interview QuestionsAzure TutorialWhat Is Cloud ComputingWhat Is SalesforceIoT TutorialSalesforce TutorialSalesforce Interview QuestionsVIEW ALL Cyber Security Cloud SecurityWhat is CryptographyNmap TutorialSQL Injection AttacksHow To Install Kali LinuxHow to become an Ethical Hacker?Footprinting in Ethical HackingNetwork Scanning for Ethical HackingARP SpoofingApplication SecurityVIEW ALL Data Science Python Pandas TutorialWhat is Machine LearningMachine Learning TutorialMachine Learning ProjectsMachine Learning Interview QuestionsWhat Is Data ScienceSAS TutorialR TutorialData Science ProjectsHow to become a data scientistData Science Interview QuestionsData Scientist SalaryVIEW ALL Data Warehousing and ETL What is Data WarehouseDimension Table in Data WarehousingData Warehousing Interview QuestionsData warehouse architectureTalend T utorialTalend ETL ToolTalend Interview QuestionsFact Table and its TypesInformatica TransformationsInformatica TutorialVIEW ALL Databases What is MySQLMySQL Data TypesSQL JoinsSQL Data TypesWhat is MongoDBMongoDB Interview QuestionsMySQL TutorialSQL Interview QuestionsSQL CommandsMySQL Interview QuestionsVIEW ALL DevOps What is DevOpsDevOps vs AgileDevOps ToolsDevOps TutorialHow To Become A DevOps EngineerDevOps Interview QuestionsWhat Is DockerDocker TutorialDocker Interview QuestionsWhat Is ChefWhat Is KubernetesKubernetes TutorialVIEW ALL Front End Web Development What is JavaScript â€" All You Need To Know About JavaScriptJavaScript TutorialJavaScript Interview QuestionsJavaScript FrameworksAngular TutorialAngular Interview QuestionsWhat is REST API?React TutorialReact vs AngularjQuery TutorialNode TutorialReact Interview QuestionsVIEW ALL Mobile Development Android TutorialAndroid Interview QuestionsAndroid ArchitectureAndroid SQLite DatabaseProgramming s a Culture Last updat ed on Apr 22,2020 6K Views prachi agarwal Bookmark Become a Certified Professional Culture is often ignored and misunderstood, yet it is a key factor responsible for a companys performance. If we dont manage our culture, we will end up doing wrong practices which will ultimately affect our business goals.Understanding the current culture of an organizationCulture tells us about the values and norms within a group or company. It identifies what is important as well as how people approach and work with each other.CULTURE = How things can be done smartly for successLets take the example of a customer support team. The culture of that team should be such that they end up achieving 97-98 % of customer satisfaction.Keeping in view the customer delight, first of all they need to be polite, even in difficult situations; they need to be good listeners to avoid confusion; they need to prioritize the work according to requirement.Lets pause for a moment and ask a few questions to ourselves :What is the culture of my company now?How well is this culture aligned with my business goals or KRAs?What problems can I expect due to misalignment?For every organization, the 4Cs plays a vital roleNow, lets look into the culture of a software developing organization. There are many teams involved for building and maintaining a single software unit. All these teams have separate goals and separate culture.This process starts after the requirements have been confirmed by the client.Developers follow the coding guidelines defined by their organization and programming tools like compilers, interpreters, debuggers etc are used to generate the code. Different high-level programming languages such as C, C++, Pascal, Java, and PHP are used for coding.They divide the complete package into small folders and then develop small codes accordingly.Stage 1: These small units of codes are then clubbed to form a large unit. While integrating the smaller chips, a project-level testing has to be pe rformed known as integration testing.Stage 2: After the successful integration, it is deployed into a dummy system. This dummy system has similar configuration as that of the client machine or the machine where this project has to be finally deployed.Stage 3: Finally, after testing all the features in a dummy system, the project is deployed into the production server or the client machine.Though this process seems to be very smooth and easy in words, in technical terms it is very tough to achieve.Lets see what problems we might face:Stage 1:The client is always in search of changes to improve the quality of the product. Most of the time when the first iteration was done, client will suggest a few changes. When the developers receive the changes, they start incorporating them which impacts the integration leading to broken builds.Stage 2:Most of the time, the testers or other operation guys will not be aware of the new changes to be made. As soon as they get the code from developers, they start testing them. While on the back-end the developers are still making the changes.As they do not get enough time to implement new changes, they end up developing inefficient codes; they face other network and database issues which again delays their time of delivery.When they finally deliver the codes to operations team, they are left with very minimal time to create and implement new test cases. So they skip many of the test cases which they realize later that those were of high priority.Stage 3:Though virtually the build seems to be ready to go production, but the results are completely unexpected. The build fails and a number of bugs occur.Then for every bug occurred, they have to track why that occurred, where it occurred, what changes needs to be done to overcome it, will there be change in others codes to make it compatible with the previous ones. Finally, for all these bugs, a bug report has to be generated.The failure is because of system errors due to the database ; developers ignorance in efficiency of code, testers ignorance in number of test cases, etc.As the client always keeps deadline tight, the employees involved in achieving them only concentrate in the final release even if they have to compromise the overall quality.Though this seems to be a problem in coordination of work, this actually is the failure of the culture adopted.This happens because of large dependency on manual processes. Running to and fro in the same team because of lack of knowledge of different field; lack of access or may be lack of interest increases our own burden and pain.Its high time that we need to be versatile. It might be difficult to be master of all processes involved in a system, but we can be the jack of all, mastering one among them. Then only we can automate our system or make it intelligent enough to recover rather than rollbacks.Now, you might be thinking why?Its because, the one you are mastering is highly dependent on others. So to know about the dependency point, we need to understand the whole system.So lets think of a process to change the culture. Before that do you have the answer to the below questions?Where does your current culture fail?Why do you wish to change the process?Have you clearly identified all the required changes?Have you obtained feedback and buy-in from all affected stake-holders?Have you revalidated the process discipline, data and measuring system for the change?So, now when we have the answer to all, we think of a revolution into our system. How will this revolution take place? It can only be achieved when we kill what we are now. A lot of time is wasted in the migration of code among the teams. We have to bring the process where we can do continuous integration and continuous deployment.This process of continuous integration and deployment makes it more agile. Bringing this agility is considered to be DevOps culture.DevOps is the practice of operations and development engineers participating toget her in the entire service lifecycle, from design through the development process to production support.It is not easy to change the working system over the time. Making a successful transition is to renovate the system, rather than rebuild.Now lets see how we can achieve this. There can be two ways to approach.1) Top to down2) Bottom upDiving deeper into these techniques, we will realize which is best suited for our organization.In the top down approach, we can go to the higher management and ask them for making changes across all the teams. If the management is convinced then, we can start working on it.But the probability of getting the answer as NO is quite high. Its because changing the system can lead the organization to instability.They have to look into the structure of organization, revenue, clients interest level, etc. But the most important factor that pulls them back from steeping out of the old system is they cant see the big picture of what can be achieved and how smoot hly it can be achieved with the newer one.In this case, we can look for the second approach to get this big picture.The bottom up approach calls for volunteer. Here we have to take a small team and a small task and execute it in DevOps Model.Looking into the technical side of this model, we have various set of sophisticated tools that makes the work more efficient and fast. But, tools alone are not capable enough to create a collaborative environment referred to as DevOps.Creating such an environment requires you to think out of the box e.g. assessing and realigning how people think about their teams, the business and the customers.Putting together a new set of tools is simpler than changing organizational culture. By promoting the anti-social master developers, allowing inefficient code to be integrated, deploying codes that was not properly tested, putting blames on each others head, considering operations team to be stupid are not the best practices that we are following to enabl e the business and create value for our customers.It is not the tools, it the people using them that make the process complex. To say at an abstract level rather than collecting ideas and behaviors, being open to them takes us to a bright path.Lets start with a team of 6 member and a 3-point story. First, we have to break the team we call as developers, operations, testers, etc. We consider all of them as one, say DevOps. When we receive the requirements we need to analyze the zones of risk. Keeping in mind the deeper sections of the sea.. We start sailing.Now, you must be thinking what is the x-factor of these continuous integration and continuous deployment that decreases the probability of failure.With the improved vision and process, we can approach the management putting the clear picture of the results like how smooth the process was, how the risk of failure was reduced, how the task was completed before the timeline, etc.Now, we can clearly visualize how the whole process was optimized on technical and cultural ground by having retrospection after each iteration.Edureka has specially curatedDevops Online Trainingthat helps you master concepts around Puppet, Jenkins, Ansible, SaltStack, Chef among others.Got a question for us? Mention them in the comments section and we will get back to you.Related Posts:Mystery of DevOpsRecommended videos for you Continuous Integration With Jenkins Watch Now What is Git A Complete Git Tutorial For Beginners Watch Now Top DevOps Interview Questions And Answers Watch Now What is DevOps A Beginners Guide To DevOps Watch Now DevOps Tutorial For Beginners Watch Now 5 Best Practices In DevOps Culture Watch Now DevOps is Going to Replace SDLC! Learn Why Watch Now Ansible Tutorial For Beginners Ansible Playbook Watch Now DevOps-Redefining your IT Strategy Watch Now Puppet Tutorial DevOps Tool For Configuration Management Watch Now Devops : Automate Your Infrastructure With Puppet Watch Now What is Jenkins? Continuous Integr ation With Jenkins Watch Now What is Docker DevOps Tool For Containerization Watch NowRecommended blogs for you Docker Networking Explore How Containers Communicate With Each Other Read Article Jenkins Cheat Sheet A Beginners Guide to Jenkins Read Article What Is Docker Docker Container ? A Deep Dive Into Docker ! Read Article Docker Swarm For Achieving High Availability Read Article Jenkins vs Jenkins X Know how Jenkins X differs from Jenkins Read Article Top 50 Docker Interview Questions You Must Prepare In 2020 Read Article Docker Architecture: Why is it important? Read Article What is DevOps? DevOps Methodology, Principles Stages Explained Read Article CI CD Pipeline Learn how to Setup a CI CD Pipeline from Scratch Read Article All You Need To Know About DevOps Read Article What is Jenkins? | Jenkins For Continuous Integration | Edureka Read Article DevOps vs Agile! Everything You Need To Know Read Article AWS Certified DevOps Engineer : A Perfect Amalgamation Read Articl e Chef Tutorial Transform Infrastructure Into Code Read Article Install Git Git Installation On Windows And CentOS Read Article Git Reflog â€" How to recover a deleted branch that was not merged Read Article Top 20 Git Commands with Example Read Article How to use Puppet Modules for IT Infrastructure Automation? Read Article Kubernetes vs Docker: Comparing The Two Container Orchestration Giants! Read Article Exploring Ansible Tower With A Hands-On Read Article Comments 0 Comments Trending Courses in DevOps DevOps Certification Training72k Enrolled LearnersWeekend/WeekdayLive Class Reviews 5 (28700)

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.