I have a few projects currently out and running in the wild:

  • Marie: A modular group management bot written in Python. Has now been replaced by Rose. Over 5 million users at time of sunsetting. Source
  • Rose: A scalable, golang based group management bot. Essentially a fully concurrent, re-engineered version of Marie, learning from all my previous mistakes. Used by over 780 million users in more than 17 million chats, and still growing! Docs website can be found here.
  • Believable Bots: A SaaS platform for running custom “white label” instances of Rose (mentioned above). This is my first attempt at a business, and learning lots of valuable things from it! The overall platform is built with react, typescript, golang, postgres, kubernetes, argocd, and the kubeprom monitoring stack, on top of DigitalOcean’s kubernetes offering.

Running these bots have taught me a large number of technical skills which I’ve been able to reuse in my professional life, such as:

  • Operating production virtual and baremetal machines.
  • Running baremetal kubernetes clusters. This is where all my non-critical infrastructure lives.
  • The value of monitoring, alerts, metrics, and dashboards. I host my own kubeprom stack, scraping both my SaaS and Rose, and building dashboards to ensure things are working as expected.
  • Using gitops workflows to ensure consistency of various clusters and simplify rollout pipelines.
  • The use of CI to test, enforce codestyles (through common linters), and find common errors (with various static checks).
  • Operating under cost constraints; up until recently, all my monthly costs were covered by donations.

Along with technical skills, these projects have also taught me how to interact with large communities, providing support and help to anyone who would like to make use of the bots.

Other projects that I am/have worked can be found here:

A few group projects I’ve worked on:

And finally, some hackathon projects: