Kafka App? There’s a Skill for That
Etsy, with its vast unique listings, relies on machine learning models to understand user searches and item descriptions. These models are powered by real-time data streamed through Kafka, enabling rapid updates to user recommendations. However, building these streaming applications was a complex and time-consuming manual process for engineers. To simplify this, Etsy developed "Kafka Skills," reusable playbooks that guide language models to automate tasks.These Kafka Skills enable collaborative workflows between developers and AI agents, using natural language commands to generate code, validate configurations, and run applications locally. The agent handles intricate steps like creating Java classes, filling in YAML configurations, and orchestrating local testing, freeing developers from tedious manual work. Observability tools were implemented to track the usage of these Skills and identify areas needing further support.Initial adoption of Kafka Skills was surprisingly low because developers were unaware of their existence and continued to rely on older, manual methods. To improve discoverability, Etsy added more entry points for the Skills, allowing them to be triggered by developers' natural language and coding team-specific jargon. Guardrails were put in place to prevent AI agents from creating insecure or unapproved Kafka applications, ensuring code security and adherence to access controls.The Kafka Skills currently support seven critical data workflows, with a focus on increasing adoption by making them more easily discoverable. Ultimately, these Skills aim to streamline the process of launching new machine learning features, leading to a better user experience for both buyers and sellers on Etsy. By accelerating data pipeline development, Etsy's models can more quickly understand user intent and listing content.