OSS projects


My day-to-day work involves open-source projects (databases, messaging systems etc.). In addition to teaching and advocating for these technologies, I contribute back in the form of features, documentation etc.

Some of these include:

LangChain

Testcontainers module for DynamoDB Local

Having a piece of infrastructure supported as a Testcontainers module provides a seamless, plug-and-play experience. The same applies to DynamoDB Local, and that’s where Testcontainers module for DynamoDB Local comes in! It allows you to easily run/test your Go based DynamoDB applications locally using Docker.

Secure your Redis Go apps using AWS IAM authentication

You can use this package to authenticate your Go apps to Amazon MemoryDB (and Amazon ElastiCache) for Redis using AWS IAM.

Here is the blog post that demonstrates this in action

Dapr (CNCF)

Dapr is a portable, event-driven runtime that makes it easy for any developer to build resilient, stateless and stateful applications that run on the cloud and edge and embraces the diversity of languages and developer frameworks.

Contributed a bunch of stuff to the Dapr project:

Debezium

Debezium is a set of distributed services to capture changes in your databases so that your applications can see those changes and respond to them. In addition to this, Debezium also provides a ready-to-use application (Debezium Server) that streams change events from a source database to different messaging infrastructures.

Implemented Azure Event Hubs plugin for Debezium Sever that allows you to push stream database change events to Azure Event Hubs.

Kubernetes Event-driven Autoscaling (KEDA) - a CNCF project

KEDA is a Kubernetes-based Event Driven Autoscaler. With KEDA, you can drive the scaling of any container in Kubernetes based on the number of events needing to be processed.

Made several additions and improvements to KEDA scalers e.g. Kafka, Redis, Event Hubs etc.

Some other things I enjoyed working on

… that a lot of folks found useful!

  • kubexpose - A Kubernetes Operator to access your Deployment over the Internet.
  • Redis Streams in Action - Go, Rust, Java services to showcase Redis Streams and RediSearch.
  • Kafka on Kubernetes - Series of blog posts that cover Apache Kafka on Kubernetes using the open-source Strimzi Operator.
  • funcy - Slack app as a Serverless backend using Go and Azure Functions.