Back to blog

Meet Giovanni Vaccarino GSoC 2025 Contributor Working on AI-Powered Chatbot for Quick Access to Jenkins Resources

Giovanni Vaccarino
Giovanni Vaccarino
June 6, 2025

Hello everyone!

I’m Giovanni Vaccarino, and I’m excited to be part of Google Summer of Code 2025 as a contributor to the Jenkins project. This summer, I’ll be working on building an AI-Powered Chatbot for Quick Access to Jenkins Resources, a project aimed at creating a Jenkins plugin that integrates an AI chatbot that helps users to quickly find relevant Jenkins documentation, plugins, and other community resources.

Kicking Off the Journey

Just a day after the official GSoC announcements, we had a warm welcome session with all Jenkins mentors and mentees. We had the opportunity to introduce ourselves and break the ice. Seeing how dedicated the other mentees are to their projects and how supportive the community it has been fantastic.

A few days after, I had my first dedicated project meeting, where I got to connect with my mentors. That’s when things started moving fast as my mentors proposed to start coding immediately, with the idea of delivering an MVP by the start of the coding period.

Project Description

The project aims to support the Jenkins users by providing an intuitive, conversational assistant embedded directly into the Jenkins UI, via a plugin.

It will use a Retrieval-Augmented Generation (RAG) architecture to search through official documentation, Discourse threads, and StackOverflow posts. The backend will be powered by a locally hosted quantized LLM served via FastAPI, while the frontend, built with React and TypeScript, will provide a modern and quick-access to the assistant.

Community Bonding Period Works

  • Joined onboarding and introductory call with Jenkins GSoC mentors and org admins.

  • Attended a couple of meetings with mentors.

  • Maintained a daily diary document to track my tasks, considerations, and questions.

  • Set up the development environment, forking the plugin repository.

  • Worked on the RAG pipeline, initial user interface, and API integration.

  • Opened and merged: #1 (data collection), #3 (data preprocessing), #6 (chunking), #8 (standardized logging).

  • Opened (under review): #7 (user interface), #9 (embedding & storage), #10 (API integration).

  • Performed additional research to maximize RAG performance.

What I’ve Learned So Far

The first few weeks taught me a lot about working in a production-scale environment. In particular, my top three takeaways so far are:

  • Communicating clearly and consistently, in PRs, issues, and chat discussions.

  • Thinking like a maintainer, taking care of future supported versions, and writing clear documentation for future contributors.

  • The importance of attention to details, especially when handling edge cases, and producing significative, helpful logs.

Without any doubts there’s still a lot to learn, but I’m happy of the progress made so far.

My GSoC Coding Period Goals

Thanks to the starting point built during the bonding period, I’m going to focus on deeper development in key areas:

  • Maximize RAG performance, exploring searching techniques.

  • Work on prompt engineering and apply evaluation strategies such as LLM-as-a-Judge.

  • Enhance the user interface, improving both functionality and user experience.

  • Provide testing coverage across frontend and backend components.

  • Writing contributor documentation and usage guides to facilitate community involvement.

Future Plans

Post GSoC, I plan to continue contributing to Jenkins. In particular I would love to continue improving the plugin I’m building, proposing and implementing future improvements.

Acknowledgements

A huge thank you to my mentors — Vutukuri Sreenivas, Kris Stern, Bervianto Leo Pratama, and Bruno Verachten— for their support and guidance. I’m especially grateful for their quick and active involvement in reviewing my pull requests, which has allowed me to move forward quickly.

Also, a big thanks to the Jenkins org admins — Kris Stern, Bruno Verachten, and Alyssa Tong — for the opportunity and for having such a welcoming, vibrant community.

Follow Along

Take a look at the plugin’s repository: GitHub Repo

You can contact me:

I’m excited for the summer months ahead and to keep building with the Jenkins community!

About the author

Giovanni Vaccarino

Giovanni Vaccarino

Giovanni is a Computer Engineering graduate currently pursuing a double Master of Science in Computer Science and Engineering through a joint program between Politecnico di Milano and the University of Illinois Chicago. With a strong interest in machine learning, natural language processing, and software development, he deepens his expertise through academic research and hands-on experience. In 2025, he was selected as a Google Summer of Code (GSoC) contributor for the Jenkins project, where he is working on building an AI-Powered Chatbot for Quick Access to Jenkins Resources. Outside of tech, Giovanni enjoys spending time outdoors.