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.
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:
Hiring and retaining top tech talent is a very hard task today. All on top of running your business. No matter the technology, we have the perfect setup for attracting the best experts and help you grow.
Building an online presence with complex journeys than span across devices is a really hard task but a must have to win in today's digital world. Our experience in web app development, will help overcome that.
With users used to the have the best mobile apps running on their phones, building a delightful app that users love is not as simple as it might seem. There's where our mobile team shine!
While AI's presence in software has grown significantly, companies are still grappling with the initial steps and strategies to effectively use AI within their daily operations. Our offer is focused on assisting you in overcoming this challenge.