As software engineers, we are always on the lookout for new challenges and ways to push our limits. Recently, the Software Engineering unit at Devoteam organized a hackathon to build a plugin for Backstage, a popular open-source platform for building developer portals. Our goal was to create a plugin that could retrieve metadata from an existing GitLab repository, calculate DORA metrics, and display them visually on the dashboard. In this article, we will take you through our experience, challenges and successes during the hackathon.
One of the biggest challenges our team faced was that we were mostly Java programmers, but the plugin had to be built in TypeScript. Additionally, we had never undertaken a project similar to this before. However, we were determined to succeed and we used new AI technologies to help us overcome these roadblocks.
We started the day with an initial session, where we discussed the goal and how to start. The day was divided into two ‘sprints, with a small retro session halfway through to check if we were still working towards the right goals.
The initial setup was quicker than expected, but we soon found out that the GitLab API we wanted was not freely available. To continue, we improvised and built a mock service, which allowed us to move forward. We also had a few trainees from our Futures track working with us, and it was nice to see how they were able to think outside the box and help out some of the more senior members.
In the end we succeeded, managing to build a proof of concept plugin that worked with Backstage, retrieved the pipeline metadata that the mock service provided, and displayed it visually on the dashboard. This project mimicked a use case at a client, and we can now use this project as a base to continue iterating onto.
The hackathon was a great opportunity for us to work together as a team, learn new technologies, and build something that could benefit our clients. We faced challenges, but we overcame them with determination and creativity. We are excited to continue building innovative solutions and pushing the boundaries of what we can achieve.