As the team formed during the #HackTrain2015, our combination of skills and interests led us to tackle the problem of real-time crowd counting and seat availability during train journeys in the UK. Vadim had prior experience working with beacons technology, Nick is already a hackathon war-hero and veteran, Marius is the laser-focused web-dev guy and myself, well, I'm soaking all that we're doing. Be it through business modelling, joining dev talks, searching for resources or APIs or writing our story. As it unravels.
waveRoll is a solution to one big pain point from UK's rails industry: counting in real-time the people from each carriage during a journey. Based on this, it can provide business insights for the train operators and it can also tell passengers where there is a high probability that they can get a seat. Before they board.
How we built it
We actually started having in mind the two elements, the silverrail API capabilities and the iBeacons techology. After quickly sketching up the requirements for a webAPI, talking about microservices, scalability, we thought more in depth about how we might get this in front of company executives and travellers alike.
Getting into the core of waveRoll, there are a few considerations to be made. First, the analytics system is built around the Apache Kafka high-throughput messaging system, which is designed to efficiently aggregate massive amounts of data; its distributed nature allows capacity to be added simply by allocating nodes. For data at rest, we are using ElasticSearch as our storage engine, which is similarly distributed and resilient. In a massive real-world deployment, we would likely abandon this prototype in favour of a higher performance database such as PostGreSQL
Who doesn't love random technical incongruences on a Saturday evening during a 60h+ hackathon? The actual JSON that we were receiving from the silverrail API, our beloved sponsor, was in the wrong format. The coordinates were almost unusable, save for a brilliant algorithm furiously typed by Nick, chief-in-hackathon.
Now, I'm not saying that this was our best accomplishment. The actual greatness was for all 120 of us to be here, building and iterating over ideas. Beginners and artisans alike, contributing towards a palpable progress within an entire industry. In less than 3 days.
What awaits team waveRoll
As of now, we're still inching away in developing our beloved creation, making waveRoll robust and focused on solving a single paint point. It's tomorrow when we'll demo it and all the cards will fall into place. For me, it already is a crazy learning experience which I will never forget. My only hope is that someday, I will be able to pass over what I've learned now to someone who, like me today, was given a chance to see product development at its best.