This talk will use CircleCI’s adoption of AI agents as a lens for both individual and organizational changes that AI brings. We will first discuss the realities of using AI as an individual engineer, where things work well today, and where tools are lacking. Next, we’ll take a systems thinking approach to explain how the increase in code output creates challenges for today’s “best practices”.
Finally, we’ll take a meta view and explore how changes to organizational practices are changing the discipline of software engineering itself. AI is just the latest iteration of a new capability obviating old approaches. We’ll look at how the tried and true principles of abstraction, encapsulation, and simplicity can be applied to navigate this latest cycle.
In this talk we will cover:
- How AI is changing the individual developer’s workflow:
- The changes in how CircleCI uses AI, from autocomplete, to standard prompts, to fully autonomous agents: where AI works well and where it doesn’t
- The realities of using non-deterministic tools as an engineer
- How individual changes are straining the SDLC process for larger organizations:
- How development practices like test driven development, testing in production, and trunk based development are key to getting the most out of AI today.
- Where we think the industry needs to go:
- Today we’re building layers of indirection to manage the complexity of AI. Instead, we need abstractions to obviate the complexity entirely.
- Software Engineering is about creating a hypothesis in code and measuring the results. AI lets us test infinite hypotheses, so we need to adapt our measurement techniques and feedback loops accordingly. This should drive us towards simpler techniques.
- We already know how to do this well, and the tools and techniques can be surprisingly simple.