The Synaptic Future of Software: AI, Integration, and the Rise of Digital Gardeners
The metaphor of synaptic connections and AI agents forming "living" systems that rewire themselves challenges conventional paradigms of software integration and the role of software engineering
Talk to a software engineer next to you, and you will find that they spend most amount of time connecting systems that don’t talk to each other. If systems do not exist, then they design those systems to piece together a real-life or imagined process. Every process has discrete steps, connected parts that need to come together to accomplish something meaningful. A Travel booking system that you use to book a flight journey at its heart is a connected system where parts include: a system that stores all flight connections, a system that records flight seating data, a system that captures passenger information and so forth. Engineers need to piece together these systems in a way that they operate reliably, continuously and adapt to change in all circumstances i.e new flight routes, flight delays, cancellations etc. The interconnection between myriad systems, tackling their behavior and building an abstraction over all this complexity so that the end customer can have a pleasant experience, is the reason why software engineering has been a highly sought after and paid profession.
The rise in autonomous AI agents that can work together tied together through a plan that was created by an AI system that accomplishes a goal for the end user is the new paradigm of software systems. Companies and teams around the world are racing to capture the mindshare of their users by building these autonomous systems quickly in the aim to be the first at solving the “hard” parts for customers. The aim is also to reduce the cognitive load for the end customers who may have a simple need, in the case of flight booking : “Get me two return tickets from Berlin to New York, the onward journey should begin in the late morning, and the return journey should avoid red eye flight between these two dates. The budget of the trip is between 2000 to 2500 Euros and the need for at the most 1 stop and no more. The flight seats should be at the front of the flight and preferably close to the window”. This request starts to take up in the form of a plan of action that the AI system cooks up, and spawns the relevant AI agents to tackle each step of the plan, and orchestrate the output in such a way that it respects the constraints defined in the request. A human travel agent in the world before self service websites were doing this role with the same request, just at a speed and cost which was not affordable for most commoners. This is unbelievable progress and presents a promising view of the future, where some humans would do anything to have this kind of capability available to them 24x7. While other humans would just be “raw-dogging” the travel booking by themselves as the joy of researching, curating and booking is something they want to preserve for themselves and doing that provides them a meaning and is a form of their expression. This future is coming and in some form or fashion has already arrived.
However the beautiful and joyful end state that we believe all of us are moving towards with autonomous AI systems solving things for us is being built on a foundation that is primed for disruption as well - the messy integration. Again, try talking to your next door neighbor software engineer, they will bury you with stories around complex data protocols, integration patterns, reliability practices and issues in production that led to a failure or downtime of a system that does something useful. The messy underbelly of the things that are sometimes tied together with duct tape to enable one system to talk to each other is getting ready for its own moment in the sun.
I foresee a world where systems are not programmed explicitly to work together, but are designed for purpose to do something useful in itself. Connecting systems together to form an useful outcome will be driven by AI systems that would discover and build connections as they desire. Imagine a system A that just does a job of managing the flight seating details and does that job really well. All it provides is an ability for anyone to reserve or free a seat. Now imagine you have another system B that captures customer intent to reserve a seat but needs the ability to check if any seat is available for a particular flight at a particular route and time. The system B relies on System A in some way, however work is required to let these systems talk to each other. Instead of spending expensive engineering time to connect these systems, the AI systems will have access the code powering these two systems, and figure out the most optimum way for the systems talk to each other. If the connection between the systems is sparsely used, the connection could be flaky or temporary - only needed when there is an actual need for connection. However, if the usage increases, the AI system would make this connection permanent. Mirror this with how human brains implement learning - brain builds synaptic connection stronger if that trait or behavior is frequently needed. The process of learning reinforces the need for the synaptic connection to be stronger.
The implications of this paradigm are unprecedented. Engineers will build a system that perform one job really well (The Unix style), and the connections between these discrete systems will be handled by the AI system as they discover the “appropriate” integration methods that comply with the overall operating requirements - latency, availability and other performance metrics. No need for hand coding the integrations or figuring out the best way to connect two different systems together.
Lets take this to one more level. Companies around the world build custom software because they believe the custom software will solve the unique problem they have. If the problem is not unique, and it is not differentiator for the company, they choose to adopt commodity software so that they can focus their niche skills and focus on other differentiating problems. However with the lowering of the marginal cost of producing code, the Commodity software vendors have a new challenge at their front door : Companies tending to move towards building more curated, lean and just enough software that solves their problem in the simplest way possible that can be operated with least number of human engineering needed. Large established software vendors are often seen with caution as they are plagued with features after features, and it is rare for customers of these software vendors to use all the features. A trend towards building minimally built, lean operated and evolutionary system that is not affected by feature creep is right at the heart of the goldilocks zone for curated custom software. This will not happen in a day, month, quarter or a year; but sparks of such disruption will start rising across companies. Custom software becomes hard to manage as it gathers complexity over time and it stops being the most effective way to solve the problems for a customer in their unique business setting. AI systems that can generate high quality code quickly can become the constant janitor overseeing the system’s evolution and make recommendations (and sometimes changes) on behalf of its human overlords to reduce the complexity and keep the system as simple as possible - optimizing for its loss function and incentives around code maintenance, quality, just enough features that justifies the companies to keep building the custom code in contrast to outsourcing it to a commodity vendor.
These paradigms are well within the achievable distance of general public and will require a disruption of the roles of software engineering in companies. You would still need human overlords of such system, aligning them to the company goals, becoming more of a curator and gardener of such systems than that of a traditional software engineering role. The human curators and gardeners would need a deep knowledge of the systems produced by the AI systems, hence the ask on the AI systems to be explainable. The paradigm will translate to roles like Software Curator / Gardener overseeing a set of AI systems that are used to build such custom software or for generating integration between systems autonomously. The curators and gardeners will focus on driving the AI system to the right KPI and metric to optimize, be the humans in the loop and evaluate for alignment to the overall ethos of the business.
We are truly living in a new world order. This is scary at times, but mostly scary good in how it will make us productive and net rich in the outcomes we deserve from software systems.