Enable javascript in your browser for better experience. Need to know to enable it? Go here.

Workshop 1

Patterns Of Distributed Systems

Unmesh V Joshi, Tech Principal, Thoughtworks India

We use distributed systems every-day.  Cloud services like Amazon S3, Amazon EKS, CosmosDB, are all distributed systems. Products like Kafka, Kubernetes, Cassandra, Akka clustering are all distributed systems as well. Even if not everyone is involved in building these kinds of systems, and mostly uses it as a black-box, it is important to have some understanding of how these systems work. The deeper understanding helps us choose appropriate cloud services and products. It develops some ‘platform sympathy’ to use these products and services effectively. Distributed systems provide a particular challenge to programming. They often require us to have multiple copies of data, which need to be kept synchronized. Yet we cannot rely on processing nodes working reliably, and network delays can easily lead to inconsistencies. Despite this, many organizations rely on a range of core distributed software handling data storage, messaging, system management, and compute capability. These systems face common problems which they solve with similar solutions. This workshop introduces the concept of patterns applied to distributed systems to better understand and communicate distributed system design.


Key takeaways for participant

  • Common problems faced by distributed systems.
  • Common solutions used to solve the problems in the form of Patterns. 
  • Build an understanding of implementation aspects at code structure level.
  • Build a vocabulary to understand the implementation of a wide range of systems commonly used in today’s software landscape ranging from databases, in-memory data grids, message brokers and various cloud services.
  • Use the patterns to help with troubleshooting and integration when using platforms



  • Familiarity with Java
  • A working laptop with JDK installed
  • IDE preferably IntelliJ Idea (community version should be fine).


This workshop is ideal for:

Developers, Software Architects with 3+ years of experience in software development


XConf India 2022

Workshop 2

Divide and conquer with Micro-frontends

Jagat Jeevan Sahoo and Anshul Kabra


Modern web applications tend to have complex and feature-loaded frontends. A single team building and evolving the frontend not only add bottlenecks to the delivery process but significantly slows it down as well. Micro frontend is a design paradigm that helps scale teams up to deliver complex frontends. The approach allows teams to develop multiple micro frontends in parallel and keep the domain responsibility within a bounded context. It also empowers users to transform existing legacy applications in a gradual manner by rebuilding the app in parts. 


Key takeaways for participants

After the session you would be able to :

  • Explain today’s buzzword: Micro-frontend
  • How to slice frontend in line with the module boundaries of the business.
  • Different patterns of micro-frontend. (hands-on examples)
  • Technical consideration to consider before moving forward with Micro frontends.
  • Understand challenges and myths around Micro-frontend



  • Participants should have a basic understanding of Frontend architecture using Javascript
  • We would be using React as a framework for examples, but React in-depth knowledge is not required. Basics should suffice
  • Bundle serving strategies
  • Node installed in laptop
  • Nginx installed on laptop
  • Github account


This workshop is ideal for:

Frontend developers and Architects