Back to Blog

Feast of Gods Hackathon: A Divine Journey Through Tech

October 3, 2024
Feast of Gods Hackathon: A Divine Journey Through Tech

Forget stale training sessions! At PETE.Tech, we spiced things up with our "Feast of Gods" hackathon, a day-long deep dive into new technologies and team collaboration planned by our Backend GUILD. Imagine a relay race where the baton is a message passed between teams using different APIs and programming languages. From REST to RabbitMQ, our developers wrestled with integration challenges, expanded their skillsets, and emerged with a renewed appetite for innovation. This article chronicles our divine journey through Golang, Ruby, C++, Python, REST, SOAP, GraphQL, and RabbitMQ, revealing the challenges, triumphs, and delicious insights we savored along the way.

The core of the hackathon was a message relay race designed to simulate a distributed system. Four teams of two developers each took on a leg of the race, receiving a message via a specific technology, adding their unique contribution, and then passing it on using a different, and likely unfamiliar, technology.

Team "Slendermen" started with the familiar territory of a REST/JSON endpoint. Their challenge? Transitioning to the more structured world of SOAP, requiring them to learn XML schema definitions and SOAP messaging on the fly using only Golang.

Next, "Pink & Cerebro" tackled Ruby, using it to consume the SOAP message and transform it into a GraphQL endpoint. This leg forced them to quickly grasp GraphQL's query language and schema design, a significant shift from SOAP's rigidity

The baton (or rather, the message) then passed to "Pi++," who faced the daunting task of querying the GraphQL endpoint and publishing the enriched message to a RabbitMQ queue using C++. This introduced the complexities of asynchronous messaging and message broker integration, a crucial skill for modern application development. The C++ implementation, however, faced ARM64 (MacOS Silicon) compilation challenges, due to existing libraries lacking native ARM64 support, causing compatibility issues.

Finally, "A & P" took the message from the RabbitMQ queue, added their final touch, and served the complete "feast" back through a REST/JSON endpoint, completing the cycle and solidifying their newly acquired Python and message queue handling skills.

Each team encountered unique challenges.  "Slendermen" navigated the intricacies of XML and SOAP. "Pink & Cerebro" mastered GraphQL and external API integration. "Pi++" tackled asynchronous messaging with RabbitMQ and data filtering. "A & P" handled message queues, data aggregation, and JSON manipulation. The day was a crucible of learning, forging stronger skills and deeper understanding.

The beauty of this setup was that no team was an "expert" in their assigned technologies. The focus was on learning through doing, embracing the struggle, and collaborating effectively to overcome challenges.

Practical Application/Example

Conclusion

The "Feast of Gods" hackathon transcended a mere day of coding; it was a testament to the power of collaborative learning, exploration, and adaptation.  We not only expanded our technical palettes but also forged stronger bonds as a team. By embracing new technologies and tackling challenges head-on, we emerged with a deeper understanding of distributed systems, API integrations, data transformations, and the importance of continuous learning in the ever-evolving world of software development.

Magdiel Campelo

Software Engineer

October 2, 2024

We can help!

What you get is faster time to market, improved security, unlimited scalability and better customer experience. We can help kickstart and support your cloud native adoption. Contact us through the options below: