Question

Hearing a lot about DevOps (agile technique in operations) these days. Can someone shed some light on the level of involvement by the actual developers in this process ??

Was it helpful?

Solution

One aspect of DevOps that is most relevant to developers is about automation, specifically infrastructure as code. The DevOps utopia is having push-button deployments that will automatically create new boxes, install all dependencies, upload the app, and set all the appropriate configuration values. As with Test Driven Development in application development, there is a push with DevOps to provide testable deployments and write tests to actually test that the software has been deployed and is working correctly.

DevOps is also tending to a production application after it's deployed. This is done by making sure that an app is tooled for monitoring and error notification. More than just that service is up an running, but is the service running well.

The other side of DevOps is around business processes and being more involved with infrastructure and operations and removing those silos between operations, infrastructure, and development. This affects developers because it eliminates the "Works on my Machine" or in a dev environment as a definition of done. Done becomes that the app is in production and working as described in a user story or specification. Developers become more aware of the app in a production environment and more aware of the infrastructure.

It is still unclear where the boundaries of DevOps exist, but the goal of DevOps from a developer perspective is automation of the infrastructure from deployments to configuration and as such to treat the infrastructure as code in regards to checking into source control, testability, and automation as wells as tooling apps for monitoring and notification.

Resources

Software

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top