How to DevOps: Part 0

Pronomita Dey
The Tech Matter
Published in
3 min readDec 17, 2023

Knowing what roads to walk

I am thrilled to start with this short series on something that’s been my workday for over 5 years now. While I am no expert, I feel my know-how in the arena gives me some credibility to guide beginners to understand a little something and get started.

I plan to cover one core topic in each of the parts and not limit it to theory. There will also be some ad-hoc writeups on challenges I have come across and more.
Since this is an introduction, I will run through the building blocks of the DevOps philosophy and the principles that help build the ecosystem.

DevOps, short for Development and Operations, is a set of practices, principles, and cultural philosophies aimed at improving collaboration and communication between software development and IT operations teams. The goal of DevOps is to enhance the efficiency, speed, and quality of software development and delivery.

Walking through the Key Concepts:

1. Collaboration

People who design and develop the functionality need to work very closely and effectively with those who will ship the code and maintain it at a production-grade.

2. Automation

To create world-class reliable, scalable and available systems; you should be able to think beyond the daily operational nuances. Automation is a very powerful tool that will enable you to free up bandwidth otherwise lost in mundane/repetitive work. Not only does it ensure that a lot of your busy work is taken care of in a timely fashion, it also incorporates the mindset to look out for innovation.

3. Continuous Integration (CI)

CI is a practice where developers integrate their code changes into a shared repository multiple times a day. Each integration triggers an automated build and test process to detect and address issues early in the development cycle. Systems without CI are no short of paralysed today.

4. Continuous Delivery (CD)

Every new change needs to be shipped to market ASAP.
CD extends CI by automatically deploying code changes to production or staging environments after successful testing. This allows for a rapid and reliable delivery of software to end-users.

5. Infrastructure as Code (IaC)

IaC involves managing and provisioning infrastructure through code and automation. This enables consistent and repeatable infrastructure deployments, reducing the chances of configuration drift and improving scalability. Bringing up complete stacks with one click is the need of the hour in almost all organisations.

6. Monitoring and Logging

The eyes and ears keep the system running. Almost near real-time logging and monitoring helps identify and address issues promptly. This includes monitoring all infrastructure, network and application components.

7. Agile Methodology

DevOps often complements Agile development methodologies by aligning development and operations with the iterative and collaborative principles of Agile.

8. Feedback Loops

DevOps encourages the establishment of feedback loops throughout the development process. This involves obtaining feedback from various stages, including development, testing, and production, to continuously improve processes.

9. Culture

DevOps is not just about tools and processes; it’s also a cultural shift. It promotes a culture of shared responsibility, collaboration, and continuous improvement among development, operations, and other stakeholders.

10. Security (DevSecOps)

Integrating security practices into the DevOps process is essential. DevSecOps ensures that security is considered from the beginning and throughout the development lifecycle, rather than being a separate and late-stage concern.

DevOps encourages a culture of continuous improvement and adaptability. Be better equipped to handle changes in technology, processes, and business requirements.

--

--