Nikhil Barthwal is passionate about building distributed systems. He has several years of work experience in both big companies & smaller startups and also acts as a mentor to several startups. Outside of work, he speaks at international conferences on several topics related to Distributed systems & Programming Languages. You can learn more about him via his homepage: www.nikhilbarthwal.com.
A common practice among software engineers is to define the architecture of a complex system in the beginning and use it as a blueprint for future implementation. This approach works poorly in practice because requirements keep evolving, and the architecture defined initially is hard to change later on. This leads to expensive re-architecting and re-implementation work.
Evolutionary Architecture is an approach that treats architecture as an evolvable entity that has no end state but is designed to adapt to ever-changing requirements. An evolutionary architecture is defined as one that supports guided, incremental change across multiple dimensions.
This approach involves defining a set of architectural characteristics and an objective function called a fitness function, which evaluates how close a prospective design solution is to achieving its objectives. The fitness function is used to make guided incremental changes to the system.
Architectural characteristics are defined across multiple dimensions like scalability, security, agility, and ability to test & deploy, and the impact of each incremental change is considered across all dimensions.
The objective of this talk is to demonstrate how principles of evolutionary architecture can be used to design systems whose architecture does not degrade over time and develop an understanding of how system changes would impact the system's architectural characteristics across multiple dimensions.
Multi-Agent Systems are poised to transform industries by enabling end-to-end automation of complex business processes. They are composed of autonomous AI Agents that cooperate in a distributed & decentralized manner.
Unfortunately implementing these systems in practice is hard due to factors like decentralized architecture with the need for coordination, cooperation & conflict resolution.
This talk is about building such systems and covers architectural patterns, the challenges associated with implementation, and strategies to mitigate them. We start with the anatomy of AI agents and Model Context Protocol for inter-agent communications.
We then introduce Agentic Workflows and their characteristics like adaptability, distributed decision-making, goal-oriented nature, robustness with fault tolerance, continuous feedback loop, and tool integration. Various architecture patterns like Orchestrator-Work pattern, Hierarchical Agents pattern, Blackbox pattern, and Event-driven pattern are also discussed.
Towards the end, we can package these workflows together as a system that can be deployed in an enterprise and cover aspects like context construction using RAG, input/output guardrails for safety & security, cache for optimization, etc.
The objective of the talk is to show how to implement Multi-Agents Systems and that use sophisticated reasoning & planning to solve complex, multi-step problems. Practical Applications of Multi-Agent systems are also included.
Rounded table discussions with Eoin Woods, Loic Magnette, and Nikhil Barthwal about Public speaking and Personal branding
Searching for speaker images...
