About This Course
DevOps (Development and Operations) is the term used to describe the collaboration of software engineers with the quality assurance and operations teams who test, deploy, and operate new systems. Its goal is to generate better and more continuous feedback regarding what is being developed, consumed, and operated, in order to increase delivery and deployment speed while maintaining system stability.
Topics include configuration management, application deployment, monitoring of application and infrastructure performance, version control, and testing and building systems. Professional software engineering tools for the continuous integration tool chain are surveyed, and the Python language—combined with operating system and web functions—is used to develop tools for automating DevOps practices. (Though assignments are in Python, students with only Java or C++ should be able to learn Python quickly.)
Sample textbook: Jez Humble, David Farley. Continuous Delivery: Reliable Software Releases Through Build, Test, and Deployment Automation.
MS, computer science, Union College; B., computer science, Union College
Jon Silverman’s main areas of interest are software engineering, scalable distributed systems, and analytics. After leaving college, he moved from Springfield, MA, to Minneapolis to join Honeywell’s Research Center. In 1989 he left Honeywell to join a venture capital-funded startup in the area of metropolitan area networks. Since then he has been working on communications systems for contact centers and massively scaled unified communications. Jon is currently Senior Director of Engineering at Avaya.
- INET 4121 – DevOps II: Development Strategies