The cognitive bias known as the streetlight effect describes our desire as humans to look for clues where it’s easiest to search, regardless of whether that’s where the answers are.

For decades in the software industry, we’ve focused on testing our applications under the reassuring streetlight of GitOps. It made sense in theory: wait for changes to the codebase made by engineers, then trigger a re-test of your code. If your tests pass, you’re good to go.

But we’ve known for years that the vast (and growing) majority of changes to an application come from outside the codebase – think third-party libraries, open source tools, and microservices galore. Your application is no longer made only of code you or your team write and control.

GitOps was already broken. With AI in the mix, finding what changed becomes an infinite game.

Why, then, when your application breaks, are you searching for the issue in your lines of code, knowing full well that most of your changes are coming from beyond the repository? This is our modern-day streetlight effect in action, and it’s a recurring reality for all software teams.

However, AI is here to solve everything, right? Maybe, but the path to AI nirvana is littered with complexity. If we thought GitOps was the answer to all of life’s breaking changes, what do we do when models, training datasets, and evaluations don’t fit into the repo? Whereas a few years ago, managing reliability and availability purely through a VCS was an adorable but conceivable dream, now it’s pure fantasy.

GitOps was already broken

The time has come, and we can’t pretend anymore: we must expand the way we’re thinking about change in the world of software.

With AI in the mix, finding what changed becomes an infinite game.

“The rise of GenAI is putting pressure on developers to test more frequently because every single application needs to be up and running at 100%, making effective CI/CD essential,” said Xavier Portilla Edo, Infrastructure Team Lead at Voiceflow. “Many DevOps tools on the market can be very complicated to use and don’t include as many developer-friendly features. The maturity and robustness of CircleCI makes it super easy to adopt across our entire team from DevOps engineers to data scientists, giving us a centralized view into all of our applications and workflows.”

The future is here; the risk is real

Let me walk you through an example of how the complexity of developing even a basic app in a post-GitOps world can quickly balloon:

Imagine you’ve built a cool new feature using an LLM. You pick a model, call an API on Hugging Face or OpenAI, and then you build a nice user interface on top of it. Voilà! You just created a chatbot that answers questions and enables a delightful experience for your customers! However, you’ll inevitably hit a wall as you quickly realize your new app is super expensive, un-testable, and all but guarantees on-call wakeups.

Why? Because the way we build, test, and release AI-enabled software is different. It’s one thing to experiment with how to bring AI into your product, it’s another thing to implement it in production, at scale, and with confidence. What was a fun experiment is now just another thing that can bring down your product.

How can you know that the model is changing?

How can you ensure that the right answer is provided to your customers?

Thinking about CI/CD as a commodity stops now

The stakes are too high.

CI/CD that “checks the box” is not enough.

Sure, many all-in-one DevOps solutions can meet the basic requirements for CI/CD. They may even disguise themselves as more cost-effective. Ask: is “good enough” worth the risk when it comes to building and shipping software? Many, if not all of us, have experienced the gut-wrenching feeling of pushing to prod and having to (if you can) quickly roll back because something just didn’t go as you intended it to. The risk of bad software is a business-level issue making the investment to do it right, mission-critical.

The urge to cut costs and corners will only get you so far, especially as more and more change happens outside the codebase. Relying on the legacy approach of managing changes to software in the VCS becomes obsolete the minute you introduce complexity at scale. We’ve seen these systems break time and time again. So while teams are under pressure to move fast and ship greater value, they’re often stripped of the tools that help them do exactly this – a robust and powerful CI/CD platform.

CI/CD that goes beyond GitOps

At CircleCI, we’ve purposely made our core platform agnostic from the VCS so we can support change from anywhere.

Our core belief is that an all-in-one platform with bolted-on features is not a suitable approach for managing software complexity at scale. Developers need the flexibility of best-in-class tools to effectively manage all sources of change in modern applications – and the tools that do this most effectively are the ones that just get out of their way.

The teams that are succeeding at software are using best-in-class CI/CD to solve this problem. And at CircleCI, we see it every day; we’re privileged to work alongside some of the finest engineering teams in the world as they raise the bar for software delivery and developer confidence.

Is your team equipped to deliver in this rapidly evolving world of change? Give CircleCI a try now, and set your team up to deliver more confidently, whatever the future may bring.