Agile Infrastructure
Deploying to servers has replaced shrinkwrapping CDs for delivering software. In the internet enabled era, the application is the infrastructure.
The basis of all Agile engineering practices is reproducibly building from source code. If software is delivered on servers, and those servers can’t be reproducibly deployed from bare metal to working services, how Agile can you be?
Continuous Integration is great, but what about Continuous Delivery! What are you waiting for?
This talk will outline innovations in tools, process, planning and culture emerging at the front lines.
This is not just a talk about managing sysadmins with ‘Agile’ as much as recognizing the vital role that infrastructure plays in modern web applications. Particularly at scale, the application and the infrastructure exist together and to treat them as separate will often discount information. To take fullest advantage, the developers must consider the infrastructure and operations must understand the application.
Agile can be viewed as a group of engineering practices reinforcing and being reinforced by planning and process practices.
This talk will start by outlining engineering practices to move to fully automated server provisioning and deployment. The byproduct of this automation is consistency across environments, more confidently flexible changes to the systems, more easily scaled applications, lessened impact from hardware failure, and shortened feedback loops.
One measure of operational ‘Agility’ might be to consider any server and how long it might take to recover your value chain if someone threw that machine out a window. Can the organization survive if the answer is days? We will give you ways to get that number down to minutes.
Heavy emphasis is put on communication and planning for the customer features, but sometimes the hand off from dev to ops becomes an exercise in tossing something over a wall. Marginalized ‘Non-functional’ infrastructure requirements suddenly become important when the whole application is non-functional. As an application scales with users, adds features or usage patterns evolve, the impact of on the infrastructure can go through phases that are best addressed collaboratively with Dev and Ops working together. We will provide ideas and techniques to smooth the hand offs and encourage collaboration with boundary objects and information radiators.
Agile Infrastructure provides for more traditional planning, lessens the impact and frequency of fire drills, provides a more consistent and flexible development environment, and a point of collaboration and communication between operations and development. When accompanied with the full complement of mature Agile practices, Continuous Deployment not only becomes easy, it becomes highly desirable.
The presentation will be made jointly by Paul Nasrat and Andrew Shafer using slides and anecdotes. The first half will be spent introducing emergent automation and engineering techniques and the second half outlining ways to leverage the results in cross team planning and collaborative value delivery.
Update I changed the primary persona. While I feel this is someone arbitrary, the truth is this presentation is for anyone in an organization who has experience with brittle infrastructure slowing delivery, been burned by differences in the test and production environments, or who’s value chain depends on keeping services up and running.
- Automation is an enabler
- Infrastructure is code, Semantics matter
- The ‘Throw It Out A Window’ Test
- Dev/Ops Pairing and Boundary Objects
- Operational Information Radiators
- Harmony and Holistic Value Delivery
- Project Planning Vs Fire Fighting

Add to calendar