The precise meaning of the term and scope of DevOps remains a source of debate, but at a high level DevOps is the integration of the development process with operational activities, hence the name DevOps. Instead of IT operations and software development teams being siloed off from each other, DevOps breaks down the traditional boundaries that existed between them in order to achieve continuous integration and continuous delivery (CI/CD) of quality software features.
Just as with Agile, building the correct DevOps culture within your organization is absolutely critical, however Agile and DevOps are not mutually exclusive. While Agile and DevOps share common goals, they have not always agreed on how to achieve those goals. DevOps differs in many respects from Agile, but, at its best, DevOps applies Agile methodologies, along with lean manufacturing principles, to speed up software deployment.
One area of particular tension between Agile and DevOps is that the latter relies heavily on tools; in particular, when it comes to the automation of testing and deployment processes. But DevOps can overcome the resistance of Agile developers to tool usage simply by applying Agile principles themselves.
The challenge is to have the Agile development teams trust in the automation efforts of DevOps, while at the same time encouraging the DevOps team to consider the business goals of deployment rather than pursuing speed of deployment for its own sake. With constant communication between the Agile team and DevOps team (another Agile principle), development can achieve a degree of comfort with DevOps tasks and processes. This means that testing and deployment automation can proceed quickly often with little to no handover at the end of a project, resulting in a decreased time to market.