You cannot log in without being assigned a valid TSI role.
By Jack Wardon, TSI Software Engineer III
DevOps, simply put, is the union of development (writing code and quality assurance) and operations (building and deploying software)—which have historically been kept apart—resulting in teams that are responsible for the entire lifecycle of a product, from development to delivery. Bringing these sides together removes many inefficiencies that would result from miscommunications over system requirements, dependencies, etc.
In order for a development team to take ownership of their operations, new processes had to be developed. Otherwise, the time and effort required to consistently build and deploy a product would eat into a team’s development resources. Although there are many tools and processes that make small gains in efficiency, none is more synonymous with DevOps than the practice of automation.
By automating parts of a product's lifecycle, we can ensure that the steps between development and delivery are done as consistently as possible. In addition, many of these steps can occur much more quickly—like running a regression suite, integrating code branches, or compiling and publishing software packages.
When automation is continuously triggered by events that fit into the development lifecycle, it takes on the term “Continuous ___.” When code integration is done automatically, it is called “Continuous Integration.” When the integrated code is automatically delivered, it is called “Continuous Delivery."
The main goal of most DevOps teams is to achieve fast, consistent, and reliable delivery of their product, and Continuous Delivery is the practice that most achieves that.
Look for Part 2 of Jake's article, where he'll explore where the TSI software team is in our journey, as well as the specific tools and methods used in DevOps.