# Starting my journey towards DevOps

As an IT student, From the very beginning of my college, I attended one seminar regarding cloud computing and DevOps I was very interested in it. I'm passionate about technology and I am always looking for ways to improve the performance of applications. I'm very excited to start with.

### **What is DevOps?**

DevOps is a software development practice that promotes collaboration between development and operations, resulting in faster and more reliable software delivery.

As a technical student, I believe in **real-time scenarios**.

So, if you’re a software developer who has been tasked with implementing security features into your application, which will be released in two months. You’re working on the UI side of things, but you don't know anything about how to implement these features from scratch. You want to do it as quickly as possible and get back to work on other parts of your app. You need help from someone who knows about security, but doesn't have time in their schedule for long meetings or demos before getting started (they're already behind).

Here, by the above scenario, we can see how DevOps play role in the real world.

### **DevOps Vs Agile**

Agile is a philosophy about how to develop and deliver software, while DevOps describes how to continuously deploy code through the use of modern tools and automated processes.

![DevOps Lifecycle vs Agile Methodology: Learning the Difference](https://blog.hubspot.com/hubfs/DevOps%20vs%20Agile%20(1)-png.png align="left")

### **Infrastructure Automation**

It is the process of automating the infrastructure that is performed by multiple teams using code.

![What is Infrastructure as Code for NetOps?](https://www.f5.com/content/dam/f5-com/page-assets-en/home-en/company/blog/2018/infrastructure_as_code.jpg align="left")

Some tools that can be used for this purpose are:-

**A. Infrastructure Provisioning:-** Terraform, Pulumi.

**B. Configuration Management:-** Ansible, Chef, Puppet, Saltstack, Helm.

**C. Continuous Integration/Deployment Tools:-** Jenkins, GitHub actions, Kubernetes operators,

D. **Image Management Tools:-** Packer, Docker, Podman

E. **Infrastructure Development Tools:-** Vagrant, Minikube

F. **Config/Secret Management:-** Hashicorp Consul, etcd, Hashicorp Vault

G. **Infrastructure Monitoring & Logging:-** Prometheus & Alert Manager, Sensu

### **Why DevOps is Important?**

***Primitive method:-***

The Developer writes the code and it then goes to the testing team who tests the different possible scenarios. Then it goes to the support team who deploys the code in the server. This is a long and robust process for any infrastructure.

***Advanced method:-***

DevOps plays an important pathway to solve any issue that the teams encounter within seconds which then feedback to the respective teams. This not only saves time but also reduces the immediate dependency between teams which can lead to the timely delivery of products.

**Thanks for reading! Hope you find this article helpful.**

Suggestions are always welcome.

**~Krupa Patel**

#DevOps, #becomingDevOpsEngineer, #FirstBlog
