Theodore Gautama Chandra
Theodore Gautama Chandra or Theo works as a system engineer on Goto Financial, more specifically on the Stateful Components Team that manages Stateful Components such as Postgres, Redis and Kafka. Theo specifically works on Kafka and currently setting up a new Kafka environment for the whole GoTo Financial engineering ecosystem. Previously Theo worked as a devops engineer in the midtrans team where he handles the whole midtrans systems infrastructure. Theo has a degree in engineering physics and has been using Python for data analysis and machine learning for his university projects and currently using Python to automate sysadmins tasks in his current work.
Session
Kafka is a widely used open-source event streaming platform that aggregates data events and works as a pub-sub. To make sure each application can only have access to messages they are allowed to consume and produce Kafka Admins can implement Kafka ACL rules to determine which principals are allowed to produce and consume messages to certain topics. Unfortunately reading and changing ACLs through Kafka CLI can be unintuitive and prone to mistakes for users who are not familiar with how Kafka ACLs work. A simple error in changing Kafka ACLs can cause system failures on multiple services that rely on Kafka, especially any changes that include wildcard. To prevent this, a quick Python script leveraging the confluent_kafka library can safeguard these changes by reviewing their changes before applying them, preventing catastrophic incidents from happening.