Skip to content
geeksforgeeks
  • Courses
    • DSA to Development
    • Get IBM Certification
    • Newly Launched!
      • Master Django Framework
      • Become AWS Certified
    • For Working Professionals
      • Interview 101: DSA & System Design
      • Data Science Training Program
      • JAVA Backend Development (Live)
      • DevOps Engineering (LIVE)
      • Data Structures & Algorithms in Python
    • For Students
      • Placement Preparation Course
      • Data Science (Live)
      • Data Structure & Algorithm-Self Paced (C++/JAVA)
      • Master Competitive Programming (Live)
      • Full Stack Development with React & Node JS (Live)
    • Full Stack Development
    • Data Science Program
    • All Courses
  • Tutorials
    • Data Structures & Algorithms
    • ML & Data Science
    • Interview Corner
    • Programming Languages
    • Web Development
    • CS Subjects
    • DevOps And Linux
    • School Learning
  • Practice
    • GfG 160: Daily DSA
    • Problem of the Day
    • Practice Coding Problems
    • GfG SDE Sheet
  • DevOps Lifecycle
  • DevOps Roadmap
  • Docker Tutorial
  • Kubernetes Tutorials
  • Amazon Web Services [AWS] Tutorial
  • AZURE Tutorials
  • GCP Tutorials
  • Docker Cheat sheet
  • Kubernetes cheat sheet
  • AWS interview questions
  • Docker Interview Questions
  • Ansible Interview Questions
  • Jenkins Interview Questions
Open In App
Next Article:
Complete DevOps Roadmap - Beginner to Advanced
Next article icon

Complete DevOps Roadmap - Beginner to Advanced

Suggest changes
Like Article
Like
Report

DevOps is considered a set of practices that combines the abilities of Software Development i.e Dev and IT Operations i.e Ops together, which results in delivering top-notch quality software fastly and more efficiently. Its focus is to encourage communication, collaboration, and integration between the software development team and IT operations to maintain the software development lifecycle. 

Complete DevOps Roadmap - Beginner to Advanced

Learn DevOps from industry experts to enhance your workflow efficiency and master the rapid release of high-quality software.

Checkout: DevOps Engineering – Planning to Production

Now, you understand DevOp's meaning but the question arises Is there any particular designation for this type of work?

Yes, there is a specific job designation i.e DevOps Engineer. A DevOps Engineer is a person who manages DevOps practices and ensures the streamlined flow of the deployment process. Its key responsibilities may vary from organization to organization but here are some key roles and responsibilities of a DevOps Engineer:

  • Implementing CI/CD operations.
  • Automating the Infrastructure.
  • Collaborating with different teams mainly SDE teams and IT operations teams.
  • Managing the availability and performance of the Software applications.
  • Troubleshooting and resolving the issues of the organization.

You would be wondering How much a DevOps Engineer could earn by doing this job. Let me tell you the stats, Average salary of a DevOps engineer is 9-10 LPA and it goes up to 20 LPA as well as the average salary of a senior DevOps Engineer ranges between 16- 18 LPA and can go up to more than 35 Lakhs per year.

In this article, we would be learning a full-proof roadmap of How to become a DevOps Engineer or DevOps Roadmap. So, let's begin the journey

Roadmap To DevOps

1. Select a Programming Language (Week - 1)

Selecting a language may be a difficult task for a developer but for starting a career in the IT industry it is recommended to select any programming language as your primary language so that you can pursue a further career in the software industry. In this journey of learning DevOps, we will be proceeding further by choosing any one of the two languages i.e Python OR Go lang programming language. As both Python and Go lang are easy-to-learn languages, they both have easy-to-understand syntax and have a large scope in the future.

So let's see what are the most important topic which you need to look around to have good knowledge of a programming language.

Python 

GoLang

  • Introduction to Python
  • Input/Output
  • Operators
  • Data Types
  • Control Flow
  • Conditionals
  • Loops
  • Functions
  • Modules
  • Python OOP
  • Exception Handling
  • File handling 
  • Python Regex
  • Python Collections 
  • Python Advance
  • Identifiers and Keywords
  • Data Types
  • Variables
  • Constants
  • Operators
  • if-else Statement
  • for loop
  • Loop Control Statements
  • Switch Statement
  • Arrays
  • Slices
  • Functions
  • Structures
  • Packages
  • Pointers
  • Methods
  • Methods vs Functions
  • Interfaces
  • Concurrency – Goroutines

Note: We suggest you to chose any one programming language of the two. 

2. OS Concepts (Week 2)

Moving ahead in the journey, it becomes necessary to have your fundamentals strong, as you are going to work directly with the software systems you need to have a solid understanding of Operating Systems and their basic concepts. There are several reasons why you need to learn OS concepts:

  • To understand the system architecture.
  • To automate and configure management.
  • To troubleshoot and debug.
  • To apply the best security measures.

Below we have divided this section into three different domains- Operating Systems, Virtualisation, and Networking Protocols. So, without wasting much time let's take a look. 

2.A - Operating Systems

  • OS Basics
  • Process & Threads
  • CPU Scheduling
  • Process Synchronization
  • Deadlock
  • Memory Management
  • Disk Management
  • Disk Scheduling

2.B - Virtualization

  • Application Virtualization
  • Network Virtualization
  • Desktop Virtualization
  • Storage Virtualization
  • Server Virtualization
  • Data virtualization

2.C - Networking Protocols

  • HTTP
  • HTTPS
  • TCP/IP
  • FTP / SFTP
  • DNS
  • SMTP
  • SSL / TLS
  • SSHPort Forwarding

3. Linux (Week 2 - 3)

If you are going into DevOps, you need to live in the terminal, for the same, it becomes necessary to have a keen knowledge of command-line-based Operating Systems, and when it comes to the command line the only thing that comes to mind is Linux.

Linux is an open-source operating system that would be needed for collaboration, automation, and continuous improvement of Software Development and IT Operations. The key reasons why you need to learn Linux are- 

  • It is widely used in DevOps environments.
  • Mainly used for Scripting and Automation .

Below are listed some of the key concepts regarding Linux.

  • Command Line
  • Bash and Shell Scripting
  • Package Management
  • Networking Tools
  • Security Concepts

4. SCM (Week - 4)

It's time to learn more about the functioning of DevOps in detail, this learning can't be completed without the inclusion of SCM which stands for Source Code Management in DevOps. In DevOps workflow, SCM plays a critical role as it gives the ability to control and track changes through VCS i.e Version Control Systems. In this journey, we would suggest you get hands-on with  Git and Github as VCS.

Git & GitHub

  • Introduction to Git
  • Installation of Git
  • Git Features
  • Git – Life Cycle
  • Git Staging Environment
  • Git vs GitHub
  • Git Command Line and Basic Command
  • Creating a Repository on GitHub
  • Git Init
  • Git Add
  • Git Commit
  • Git Push
  • Git Clone
  • Git Branch
  • Git Branching Merge and Merge Conflict
  • Git Log
  • Git Diff
  • Git Status
  • Git .gitignore
  • Git Fork and Git Clone
  • Git Pull Requests
  • Git Rebase
  • Git Cherry Pick
  • Git Stash
  • Git Ignore
  • Git Fork
  • Git Repository
  • Git Index
  • Git Head
  • Git Cheatsheet

5. Cloud Computing (Week 5 - 7)

Now, when you are well versed with your basics and have covered most of the topics it's time to get familiar with your working environment or you can say the workspace for DevOps Engineers. Cloud Computing has an inevitable role in the journey of learning DevOps and DevOps often relies on Cloud Computing Platforms such as AWS(Amazon Web Services), Microsoft Azure with DevOps, GCP(Google Cloud Platform), etc. Further, we would be learning the most popular Cloud Computing Platforms in detail.

AWS

  • Introduction to AWS
  • IAM in AWS
  • EC2
  • EBS(Elastic Bean Stalk)
  • EBS(Elastic Block Store)
  • EFS(Elastic File Storage)
  • S3
  • AMI E.Load Balancer
  • Cloud Watch
  • Auto Scaling
  • SQS
  • SNS
  • Other Elastic Computes(ECS,EKS,ECR)
  • Storage Application Services
  • Database Services

Azure

  • Introduction to Azure
  • Compute Virtual Machines
  • Storage
  • Azure Network
  • Azure Compute Functions
  • Compute Monitoring
  • Azure Services
  • Resources
  • Cognitive Services
  • Dashboards
  • Databases
  • DevOps with Azure

GCP

  • Introduction
  • Compute Services
  • Storage and Database Services
  • Security Services
  • Networking Services
  • Data Integration and Analytics
  • Services Management Tools and Monitoring Services
  • DevOps with GCP

6. Docker (Week 8 - 9)

From scratch, you have learned many things so far, Now, it's time to learn the most famous tool for DevOps developers i.e. Docker. It is an open-source containerization platform that helps developers in packaging software applications and their dependencies into small-size containers. It has become an integral tool for the DevOps ecosystem due to its various benefits such as :

  • It is portable and more flexible.
  • It is highly scalable and has efficient resources.
  • It allows collaborative development.
  • It maintains consistency.

Below mentioned are A-Z topics that you can visit and learn about Docker in detail.

  • Docker Introduction
  • Docker Installation
  • Docker Commands
  • Dockerfile
  • Docker Images
  • Docker Engine, Storage
  • Docker Compose
  • Docker Containers and Managing Containers
  • Docker Registry
  • Docker Swarm

7. Kubernetes (Week 10 - 12)

Kubernetes, popularly known as "K8s", is another open-source platform that automates the whole deployment and management of large applications. It plays an important role in the journey of becoming a DevOps engineer. It makes the application more scalable as well as helps to automate the whole process from start to end. It basically follows the IaC -"Infrastructure as a Code" principle to define and manage the infrastructure resources.

We have listed all the important topics related to Kubernetes below:

  • Introduction to Kubernetes
  • Kubernetes – Installation Methods
  • Installation of Kubernetes on Ubuntu
  • Kubernetes – Architecture
  • Kubernetes – Monolithic Architecture of Kubernetes
  • Kubernetes vs Docker
  • Kubernetes – Concept of Containers
  • Kubernetes – Introduction to Container Orchestration
  • Kubernetes – Namespace
  • Kubernetes – Images
  • Kubernetes – Jobs
  • Kubernetes – Labels & Selectors
  • Kubernetes – Node
  • Kubernetes – Node Port Service
  • Kubernetes – Cluster IP vs Node-Port
  • Kubernetes – Service
  • Kubernetes – Service DNS
  • Kubernetes – Pod
  • Kubernetes – Run a Command in Pod’s Containers
  • Kubernetes – Create Multiple Containers in a Pod
  • Kubernetes – Replication Controller
  • Kubernetes – Difference Between Replicaset and Replication Controller
  • Kubernetes – Deployments
  • Kubernetes – Volumes
  • Kubernetes – Secrets
  • Kubernetes – Working with Secrets

8. Miscellaneous (Week - 13)

If you reached this part of the article then you definitely have achieved something. Congrats on completing this roadmap this far. But there is always something left to learn we can't deny that. So, here are some miscellaneous topics that you should keep an eye on.

  • Terraform
  • Prometheus and Grafana
  • Chef & Puppet

You can also learn about different tools used for DevOps and for this, you can refer to the article - Top 10 DevOps Tools That You Can Try. 

Conclusion

Learning new things may be challenging for an individual but once a wise man said - "Develop a passion for learning. If you do you will never cease to grow", we also believe the same, and for that cause only we have incubated all the necessary resources related to DevOps for you in this article. We believe that you would be learning all the topics properly and will try your best to become a successful DevOps engineer.

Then too If you are confused and want to learn DevOps solemnly you can visit our course - DevOps Engineering - Planning to Production

    2. What is the DevOps lifecycle?

    The DevOps lifecycle is known as a continuous software development process that includes DevOps best practices to plan, build, integrate, deploy, monitor, operate, and offer continuous feedback throughout the software's lifecycle.

    3. What is the Future Scope of DevOps?

    The future scope of DevOps contains many areas in which it can be collaborated and used in an efficient manner:

    • It can be used incloud-native and containerization
    • It can be used inAutomation using AI/ML.
    • It can be used inSite Reliability Engineering.
    • It can be used asDataOps.

    In conclusion, the future growth of DevOps is bright and consistently evolving.


      Next Article
      Complete DevOps Roadmap - Beginner to Advanced
      author
      achal11sp
      Improve
      Article Tags :
      • GBlog
      • DevOps
      • Roadmap

      Similar Reads

      • Complete C# Developer - Beginner to Advanced
        In this diverse race of technology, many new methods and technologies have come so far. C# is the mother of all languages, and any other language that has been considered close to C is C#. It’s popular among all developers (from beginners to experts) and also can be used with a wide and diverse scop
        9 min read
      • Python For DevOps:  A Complete Guide For Beginners
        Today, Python is one of the fastest-growing programming language and Python justify this as well with its wide use in all aspect of the programming domain whether it is software development, data handling, data analysis, or AI. Python is also used by all kinds of departments whether it is operations
        10 min read
      • 100 Days Of DevOps – A Complete Guide For Beginners
        In the fast-paced digital world, enterprises survive on agility and innovation. Here is where DevOps comes in; it is a new approach that bridges development and operations. It makes software delivery seamless and enables rapid application deployment. Nevertheless, how do you navigate as an aspiring
        10 min read
      • Complete Roadmap to Learn System Design for Beginners
        This article is an important resource if you're new to system design and aiming for interviews at top tech companies. It breaks down system design concepts into easy-to-understand steps, starting from the basics and gradually advancing to more complex topics. By the end, you'll be equipped with the
        6 min read
      • 60 Days of Backend Development: A Complete Guide For Beginners
        "How do I start learning backend development effectively?""Which back-end technology should I focus on for career growth?""Do I need a solid learning plan in place to be good in backend programming?"These are common questions that most beginners ask for their answers when starting their journey for
        11 min read
      • 30 Days of Azure: A Complete Guide For Beginners
        Imagine how companies can run their applications across the globe in a few minutes or analyze terabytes of data in real time to make critical decisions. The answer, again, is cloud computing. What if I told you there is a platform that offers these and much more in addition: seamless integration wit
        6 min read
      • 100 Days Of Java: A Complete Guide For Beginners
        "How can I learn Java effectively in a structured way?""What are the key topics and skills I should focus on while learning Java?""Is it possible to become proficient in Java within 100 days?"This well-structured 100-day of learning plan on Java is your one-stop guide from the beginner to the expert
        15 min read
      • 30 Days of Docker: A Complete Guide For Beginners
        Docker is one of the most powerful tools that has enhanced the way we develop, ship, and run applications. In 30 days, learn Docker from being a novice to a pro-level Docker professional, whether you've just started your first steps with Docker or want to extend your Docker knowledge. By the end of
        15+ min read
      • Engineering Manager Roadmap-A complete Beginners Guide
        Why engineering managers are needed is quite important to understand before diving into the engineering manager roadmap. In order to handle planning, coordination, and execution of engineering projects with ease, any company requires engineering managers. Engineering managers look out for the engine
        8 min read
      • 30 Days of Jenkins: A Complete Guide for Beginners
        Ever wondered how these smoothly running applications and systems are deployed and managed effectively? In most cases, continuous integrations and continuous delivery likes of Jenkins have been on the front line of this revolution. Jenkins is an open-source, server-based automation system that devel
        6 min read
      geeksforgeeks-footer-logo
      Corporate & Communications Address:
      A-143, 7th Floor, Sovereign Corporate Tower, Sector- 136, Noida, Uttar Pradesh (201305)
      Registered Address:
      K 061, Tower K, Gulshan Vivante Apartment, Sector 137, Noida, Gautam Buddh Nagar, Uttar Pradesh, 201305
      GFG App on Play Store GFG App on App Store
      Advertise with us
      • Company
      • About Us
      • Legal
      • Privacy Policy
      • In Media
      • Contact Us
      • Advertise with us
      • GFG Corporate Solution
      • Placement Training Program
      • Languages
      • Python
      • Java
      • C++
      • PHP
      • GoLang
      • SQL
      • R Language
      • Android Tutorial
      • Tutorials Archive
      • DSA
      • Data Structures
      • Algorithms
      • DSA for Beginners
      • Basic DSA Problems
      • DSA Roadmap
      • Top 100 DSA Interview Problems
      • DSA Roadmap by Sandeep Jain
      • All Cheat Sheets
      • Data Science & ML
      • Data Science With Python
      • Data Science For Beginner
      • Machine Learning
      • ML Maths
      • Data Visualisation
      • Pandas
      • NumPy
      • NLP
      • Deep Learning
      • Web Technologies
      • HTML
      • CSS
      • JavaScript
      • TypeScript
      • ReactJS
      • NextJS
      • Bootstrap
      • Web Design
      • Python Tutorial
      • Python Programming Examples
      • Python Projects
      • Python Tkinter
      • Python Web Scraping
      • OpenCV Tutorial
      • Python Interview Question
      • Django
      • Computer Science
      • Operating Systems
      • Computer Network
      • Database Management System
      • Software Engineering
      • Digital Logic Design
      • Engineering Maths
      • Software Development
      • Software Testing
      • DevOps
      • Git
      • Linux
      • AWS
      • Docker
      • Kubernetes
      • Azure
      • GCP
      • DevOps Roadmap
      • System Design
      • High Level Design
      • Low Level Design
      • UML Diagrams
      • Interview Guide
      • Design Patterns
      • OOAD
      • System Design Bootcamp
      • Interview Questions
      • Inteview Preparation
      • Competitive Programming
      • Top DS or Algo for CP
      • Company-Wise Recruitment Process
      • Company-Wise Preparation
      • Aptitude Preparation
      • Puzzles
      • School Subjects
      • Mathematics
      • Physics
      • Chemistry
      • Biology
      • Social Science
      • English Grammar
      • Commerce
      • World GK
      • GeeksforGeeks Videos
      • DSA
      • Python
      • Java
      • C++
      • Web Development
      • Data Science
      • CS Subjects
      @GeeksforGeeks, Sanchhaya Education Private Limited, All rights reserved
      We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy
      Lightbox
      Improvement
      Suggest Changes
      Help us improve. Share your suggestions to enhance the article. Contribute your expertise and make a difference in the GeeksforGeeks portal.
      geeksforgeeks-suggest-icon
      Create Improvement
      Enhance the article with your expertise. Contribute to the GeeksforGeeks community and help create better learning resources for all.
      geeksforgeeks-improvement-icon
      Suggest Changes
      min 4 words, max Words Limit:1000

      Thank You!

      Your suggestions are valuable to us.

      '); // $('.spinner-loading-overlay').show(); let script = document.createElement('script'); script.src = 'https://assets.geeksforgeeks.org/v2/editor-prod/static/js/bundle.min.js'; script.defer = true document.head.appendChild(script); script.onload = function() { suggestionModalEditor() //to add editor in suggestion modal if(loginData && loginData.premiumConsent){ personalNoteEditor() //to load editor in personal note } } script.onerror = function() { if($('.editorError').length){ $('.editorError').remove(); } var messageDiv = $('
      ').text('Editor not loaded due to some issues'); $('#suggestion-section-textarea').append(messageDiv); $('.suggest-bottom-btn').hide(); $('.suggestion-section').hide(); editorLoaded = false; } }); //suggestion modal editor function suggestionModalEditor(){ // editor params const params = { data: undefined, plugins: ["BOLD", "ITALIC", "UNDERLINE", "PREBLOCK"], } // loading editor try { suggestEditorInstance = new GFGEditorWrapper("suggestion-section-textarea", params, { appNode: true }) suggestEditorInstance._createEditor("") $('.spinner-loading-overlay:eq(0)').remove(); editorLoaded = true; } catch (error) { $('.spinner-loading-overlay:eq(0)').remove(); editorLoaded = false; } } //personal note editor function personalNoteEditor(){ // editor params const params = { data: undefined, plugins: ["UNDO", "REDO", "BOLD", "ITALIC", "NUMBERED_LIST", "BULLET_LIST", "TEXTALIGNMENTDROPDOWN"], placeholderText: "Description to be......", } // loading editor try { let notesEditorInstance = new GFGEditorWrapper("pn-editor", params, { appNode: true }) notesEditorInstance._createEditor(loginData&&loginData.user_personal_note?loginData.user_personal_note:"") $('.spinner-loading-overlay:eq(0)').remove(); editorLoaded = true; } catch (error) { $('.spinner-loading-overlay:eq(0)').remove(); editorLoaded = false; } } var lockedCasesHtml = `You can suggest the changes for now and it will be under 'My Suggestions' Tab on Write.

      You will be notified via email once the article is available for improvement. Thank you for your valuable feedback!`; var badgesRequiredHtml = `It seems that you do not meet the eligibility criteria to create improvements for this article, as only users who have earned specific badges are permitted to do so.

      However, you can still create improvements through the Pick for Improvement section.`; jQuery('.improve-header-sec-child').on('click', function(){ jQuery('.improve-modal--overlay').hide(); $('.improve-modal--suggestion').hide(); jQuery('#suggestion-modal-alert').hide(); }); $('.suggest-change_wrapper, .locked-status--impove-modal .improve-bottom-btn').on('click',function(){ // when suggest changes option is clicked $('.ContentEditable__root').text(""); $('.suggest-bottom-btn').html("Suggest changes"); $('.thank-you-message').css("display","none"); $('.improve-modal--improvement').hide(); $('.improve-modal--suggestion').show(); $('#suggestion-section-textarea').show(); jQuery('#suggestion-modal-alert').hide(); if(suggestEditorInstance !== null){ suggestEditorInstance.setEditorValue(""); } $('.suggestion-section').css('display', 'block'); jQuery('.suggest-bottom-btn').css("display","block"); }); $('.create-improvement_wrapper').on('click',function(){ // when create improvement option clicked then improvement reason will be shown if(loginData && loginData.isLoggedIn) { $('body').append('
      '); $('.spinner-loading-overlay').show(); jQuery.ajax({ url: writeApiUrl + 'create-improvement-post/?v=1', type: "POST", contentType: 'application/json; charset=utf-8', dataType: 'json', xhrFields: { withCredentials: true }, data: JSON.stringify({ gfg_id: post_id }), success:function(result) { $('.spinner-loading-overlay:eq(0)').remove(); $('.improve-modal--overlay').hide(); $('.unlocked-status--improve-modal-content').css("display","none"); $('.create-improvement-redirection-to-write').attr('href',writeUrl + 'improve-post/' + `${result.id}` + '/', '_blank'); $('.create-improvement-redirection-to-write')[0].click(); }, error:function(e) { showErrorMessage(e.responseJSON,e.status) }, }); } else { if(loginData && !loginData.isLoggedIn) { $('.improve-modal--overlay').hide(); if ($('.header-main__wrapper').find('.header-main__signup.login-modal-btn').length) { $('.header-main__wrapper').find('.header-main__signup.login-modal-btn').click(); } return; } } }); $('.left-arrow-icon_wrapper').on('click',function(){ if($('.improve-modal--suggestion').is(":visible")) $('.improve-modal--suggestion').hide(); else{ } $('.improve-modal--improvement').show(); }); const showErrorMessage = (result,statusCode) => { if(!result) return; $('.spinner-loading-overlay:eq(0)').remove(); if(statusCode == 403) { $('.improve-modal--improve-content.error-message').html(result.message); jQuery('.improve-modal--overlay').show(); jQuery('.improve-modal--improvement').show(); $('.locked-status--impove-modal').css("display","block"); $('.unlocked-status--improve-modal-content').css("display","none"); $('.improve-modal--improvement').attr("status","locked"); return; } } function suggestionCall() { var editorValue = suggestEditorInstance.getValue(); var suggest_val = $(".ContentEditable__root").find("[data-lexical-text='true']").map(function() { return $(this).text().trim(); }).get().join(' '); suggest_val = suggest_val.replace(/\s+/g, ' ').trim(); var array_String= suggest_val.split(" ") //array of words var gCaptchaToken = $("#g-recaptcha-response-suggestion-form").val(); var error_msg = false; if(suggest_val != "" && array_String.length >=4){ if(editorValue.length <= 2000){ var payload = { "gfg_post_id" : `${post_id}`, "suggestion" : `${editorValue}`, } if(!loginData || !loginData.isLoggedIn) // User is not logged in payload["g-recaptcha-token"] = gCaptchaToken jQuery.ajax({ type:'post', url: "https://apiwrite.geeksforgeeks.org/suggestions/auth/create/", xhrFields: { withCredentials: true }, crossDomain: true, contentType:'application/json', data: JSON.stringify(payload), success:function(data) { if(!loginData || !loginData.isLoggedIn) { grecaptcha.reset(); } jQuery('.spinner-loading-overlay:eq(0)').remove(); jQuery('.suggest-bottom-btn').css("display","none"); $('#suggestion-section-textarea').hide() $('.thank-you-message').css('display', 'flex'); $('.suggestion-section').css('display', 'none'); jQuery('#suggestion-modal-alert').hide(); }, error:function(data) { if(!loginData || !loginData.isLoggedIn) { grecaptcha.reset(); } jQuery('.spinner-loading-overlay:eq(0)').remove(); jQuery('#suggestion-modal-alert').html("Something went wrong."); jQuery('#suggestion-modal-alert').show(); error_msg = true; } }); } else{ jQuery('.spinner-loading-overlay:eq(0)').remove(); jQuery('#suggestion-modal-alert').html("Minimum 4 Words and Maximum Words limit is 1000."); jQuery('#suggestion-modal-alert').show(); jQuery('.ContentEditable__root').focus(); error_msg = true; } } else{ jQuery('.spinner-loading-overlay:eq(0)').remove(); jQuery('#suggestion-modal-alert').html("Enter atleast four words !"); jQuery('#suggestion-modal-alert').show(); jQuery('.ContentEditable__root').focus(); error_msg = true; } if(error_msg){ setTimeout(() => { jQuery('.ContentEditable__root').focus(); jQuery('#suggestion-modal-alert').hide(); }, 3000); } } document.querySelector('.suggest-bottom-btn').addEventListener('click', function(){ jQuery('body').append('
      '); jQuery('.spinner-loading-overlay').show(); if(loginData && loginData.isLoggedIn) { suggestionCall(); return; } // script for grecaptcha loaded in loginmodal.html and call function to set the token setGoogleRecaptcha(); }); $('.improvement-bottom-btn.create-improvement-btn').click(function() { //create improvement button is clicked $('body').append('
      '); $('.spinner-loading-overlay').show(); // send this option via create-improvement-post api jQuery.ajax({ url: writeApiUrl + 'create-improvement-post/?v=1', type: "POST", contentType: 'application/json; charset=utf-8', dataType: 'json', xhrFields: { withCredentials: true }, data: JSON.stringify({ gfg_id: post_id }), success:function(result) { $('.spinner-loading-overlay:eq(0)').remove(); $('.improve-modal--overlay').hide(); $('.create-improvement-redirection-to-write').attr('href',writeUrl + 'improve-post/' + `${result.id}` + '/', '_blank'); $('.create-improvement-redirection-to-write')[0].click(); }, error:function(e) { showErrorMessage(e.responseJSON,e.status); }, }); });
      "For an ad-free experience and exclusive features, subscribe to our Premium Plan!"
      Continue without supporting
      `; $('body').append(adBlockerModal); $('body').addClass('body-for-ad-blocker'); const modal = document.getElementById("adBlockerModal"); modal.style.display = "block"; } function handleAdBlockerClick(type){ if(type == 'disabled'){ window.location.reload(); } else if(type == 'info'){ document.getElementById("ad-blocker-div").style.display = "none"; document.getElementById("ad-blocker-info-div").style.display = "flex"; handleAdBlockerIconClick(0); } } var lastSelected= null; //Mapping of name and video URL with the index. const adBlockerVideoMap = [ ['Ad Block Plus','https://media.geeksforgeeks.org/auth-dashboard-uploads/abp-blocker-min.mp4'], ['Ad Block','https://media.geeksforgeeks.org/auth-dashboard-uploads/Ad-block-min.mp4'], ['uBlock Origin','https://media.geeksforgeeks.org/auth-dashboard-uploads/ub-blocke-min.mp4'], ['uBlock','https://media.geeksforgeeks.org/auth-dashboard-uploads/U-blocker-min.mp4'], ] function handleAdBlockerIconClick(currSelected){ const videocontainer = document.getElementById('ad-blocker-info-div-gif'); const videosource = document.getElementById('ad-blocker-info-div-gif-src'); if(lastSelected != null){ document.getElementById("ad-blocker-info-div-icons-"+lastSelected).style.backgroundColor = "white"; document.getElementById("ad-blocker-info-div-icons-"+lastSelected).style.borderColor = "#D6D6D6"; } document.getElementById("ad-blocker-info-div-icons-"+currSelected).style.backgroundColor = "#D9D9D9"; document.getElementById("ad-blocker-info-div-icons-"+currSelected).style.borderColor = "#848484"; document.getElementById('ad-blocker-info-div-name-span').innerHTML = adBlockerVideoMap[currSelected][0] videocontainer.pause(); videosource.setAttribute('src', adBlockerVideoMap[currSelected][1]); videocontainer.load(); videocontainer.play(); lastSelected = currSelected; }

      What kind of Experience do you want to share?

      Interview Experiences
      Admission Experiences
      Career Journeys
      Work Experiences
      Campus Experiences
      Competitive Exam Experiences