Synerise People: Hackathon Case - Having fun While Creating an Application on a Deadline
As part of our new edition of the #SynerisePeople project, we would like to present the details of one of the projects that we managed to complete during the crazy 24 hours when the first Synerise Hackathon was underway.
Have you ever heard of the 20 percent rule?
It's a strategy created by Google creators, Larry Page and Sergey Brin, in 2004. It was designed to provide employees with one full day per week (20% of their time) to work on a project that they choose or create.
The most unbelievable part of this is that concepts such as Gmail, Google Maps, Twitter, or Slack, began just as side projects!
In fact, the initiative they chose had to meet Google's business needs, but at the same time team members were able to demonstrate their own ideas and channel their passion into a worthwhile project. After some time, other technological giants began to join this new trend, by supporting bottom-up initiatives and the ideas of their employees.
So, we thought, why not?
Our company is relatively young, and our time and personal resources are not unlimited. Although we are not yet able to give our team members full consent to use 20% of the time to implement supporting initiatives, we have tried alternatives such as hackathons.
At first, we focused on the most basic problem of our employees, which is...the need to get food. One of the teams participating in the challenge decided to find a clever solution.
Intro, or how the story begins
Synerise Team members who work at the company's headquarters in Krakow began using the services of a catering company a few months ago. Every day, employees have the opportunity to buy dinner, sandwiches, and other types of snacks from a person who visits our office.
We started to call her as Mrs. Sandwich (Pani Kanapka).
The solution turned out to be convenient, but not without flaws. People interested in purchasing were not sure at what time they could expect the arrival of Mrs. Sandwich and sometimes employees working in a distant part of the office did not even have a clue about her appearance in the building.
During the first Synerise Hackathon, one of the teams accepted the challenge and decided to develop an application that would make communication with Mrs. Sandwich much easier and the process of buying food more effective.
For a long time, the arrival of Mrs. Sandwich was announced by word of mouth and caused a huge stir because everyone wanted to reach her as soon as possible to get the best stuff.
The main challenge facing the team was to overcome the following problems:
- A lack of certainty about when Mrs. Sandwich would appear in the office
- A lack of proper communication that Mrs. Sandwich had already arrived
- "First come, first served" - some employees had no chance to buy the tastiest dishes
Kanappka is a system for communication and order processing with Mrs. Sandwich. Its basis is a mobile application that allows the catering company to contact Synerise people through Slack.
To create this type of app, the team used the following components:
- Android SDK - used as an application framework and a tool to handle event shipments
- Events processing - this is a basic functionality of Synerise, allowing you to respond to certain events
- Automation 2.0 - allows defining response to input events and sending exit events
- BOB - a custom processor that translates Synerise events into Slack forms
- Documents - flexible JSON API that allows you to define larger data structures, such as orders or menu items
- Campaign Backend – allows for the sending of notifications to the mobile application.
App users can use two ready-made scenarios:
Scenario 1 – status support
The application is equipped with a defined flow in which the user (Mrs. Sandwich) can switch between the following statuses:
- I'm coming
- I am here
- I am leaving soon
- Goodbye, see you next time
How it looks from the user’s perspective:
Scenario 2 – conducting two-way communication
In response to the "I am leaving soon" status, participants of the Slack channel can click the "Please wait" buton”, which generates communication towards the application operated by Mrs. Sandwich:
- Bot Slack sends information to BOB
- The processor generates the appropriate event
- Automation 2.0 processes the event and creates a notification dispatch to the Mrs. Sandwich application
- Mrs. Sandwich receives a push notification on her mobile app, in which the screen goes into the "Please wait" status.
Thanks to this solution, Mrs. Sandwich knows that she should wait for a few more minutes.
Also, Kanappka includes the ability for Slack channel participants and Mrs. Sandwiches to communicate through text messages:
- After entering and sending the text, the Slack bot sends information to BOB, which generates the appropriate event
- Automation 2.0 processes the event and creates a notification dispatch to the Mrs. Sandwich application, so she can read the content on the mobile screen
- She can answer the message in the same way by typing and sending messages, which again generates Event and Automation 2.0 and BOB provide a response to the Slack channel.
Reception and effects of introduction
The Kanappka app is very popular among employees of the Krakow headquarters.
Finally, everyone knows when Mrs Sandwich is heading towards our office. You can easily ask her to wait a few minutes to make a purchase. Sometimes she can also inform us by text message that for some reason on a given day she will not appear at all.
As you can see, the best initiatives arise when we focus on cooperation and let employees choose which idea they would like to work on. People are most involved when they work on things that interest them.
In addition, such loose initiatives sometimes result in the creation of a project that is actually useful inside or outside the company and solves specific problems.
The Kanappka project additionally proved to us how amazing the openness of the Synerise platform is and how flexibly you can carry out various implementations, based fully on the elements available in our company system. It really impressed us!
Last but not least, who is behind all this?
Still, nothing in Synerise would not be possible without #SynerisePeople!
Meet the members of the team responsible for implementing the Kanappka project.
- Dawid Cebula – Graphic Designer, responsible in Kanappka project for UI design
- Jacek Chmiel – Software Engineer, responsible in Kanappka project for BOB processor programming
- Adrian Gonciarz - Quality Assurance Leader, responsible in Kanappka project for planning and mastermind
- Konrad Nędzyński – Android Developer, responsible in Kanappka project for Android app programming
- Rafał Sarzyński – Software Engineer, responsible in Kanappka project for programming of integration with Slack
- Dawid Siedlarz – Software Engineer, responsible in Kanappka project for Android programming and backend