Brief Look Into CI/CD

CI/CD chart courtesy of XenonStack

I’m a new Software Engineer on the quest for a job. So far, I’ve come across several languages that are repeatedly listed: JavaScript, TypeScript, Python, Go, Ruby, Java, C++, C# etc.

And then there are frameworks: React.js, Angular, Bootstrap, jQuery, Apache Spark etc.

And more qualifications to be familiar with: Node.js, AWS and cloud computing, SCRUM, Kubernetes etc.

It makes job hunting equal parts daunting yet exciting as I figure out which direction I want to head in my career.

Then, there is CI/CD. I have no idea what this stands for; I can’t even guess. But, I’m about to find out!

Continuous Integration and Continuous Delivery

According to Isaac Sacolick at InfoWorld, it is “one of the best practices for DevOps teams to implement, for delivering code changes more frequently and reliably.”

“a culture, set of operating principles, and collection of practices”

Oh, really! Kind of reminds me of how we’re told to frequently commit our work to save ourselves the trouble later down the road. And, in a team environment this reduces redundancies and merge conflicts.

And that’s exactly what ‘continuous integration’ is. A coding philosophy to “implement small changes and check in code to version control repositories frequently.” So, it’s continuous building, testing and integrating for better software quality.

Since most teams work with several environments, ‘continuous delivery’ is frequently pushing code changes to all those environments.

Tools are used to ensure everything necessary for all those environments goes out with each delivery. Some processes are automated between servers and databases when applications are deployed.

This smooth streamlined process allows some teams to deploy to production daily (even hourly).

Conclusion

There’s definitely more to it but, basically it seems like an optimized workflow where the development and operations teams work with DevOps and/or Site Reliability Engineers to continuously integrate, test, deliver and deploy.

--

--

--

Certified Sommelier and Flatiron School Software Engineering Grad

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

Understanding HikariCP’s Connection Pooling behaviour

An Ode to Plants

The Oncall Dilemma !

Use Retool to Quickly Build Distributed SQL and React Apps — The Distributed SQL Blog

Rate limiting in Golang HTTP client

2020: The year in review

Developer Tools: A list of tools to maximize web developer’s Productivity

Getting Started With Object-Oriented Programming In Python 3

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Jonelle Noelani Yacapin

Jonelle Noelani Yacapin

Certified Sommelier and Flatiron School Software Engineering Grad

More from Medium

How to use (or better not to use) Environment Variables in Applications

Does coding is enough to become a good backend engineer?

Potential Use Cases For WebAssembly

5 ways in which you can get into your dream company as Software Engineer