At the end of May, our long-time client Boosted asked us to help create a marketing event that was to take place over the summer. The deadline was tough. However, after almost two years of cooperating with the Original Electric Skateboard, we couldn’t say no. We had basically one month to build an update for the mobile apps as well as add frontend admin features and backend architecture to support the campaign's needs.
The idea was simple — a Summer Showdown. Basically, Boosted had devised a competition where riders from 10 of the biggest cities in the US would compete against each other by riding their Boosted boards and participating in events. To be fair, cities were split into pairs based on the estimated size of their Boosted community. Each pair would battle for one week for the most points. Riders would accumulate points by logging miles on their boards and joining group rides and demo events. Riders from the winning city would then be eligible to win the newest Boosted board.
We had to plan carefully in order to meet Boosted’s tight deadline. We decided to let our backend team complete as much work as possible to be more flexible with updates during the competition and to reduce the amount of work that needed to be done for both the iOS and Android apps.
The mobile apps basically only had two features. They prompted users in specific cities to join the competition. Participating users were then able to review the rules and the current scores. For mileage tracking, we used the ride-recording feature that was already built into the mobile apps.
Frontend admin also had just two main features. It allowed admins to upload a CSV list of all events in their location and time window. The second feature allowed users to download a CSV file that showed the score tallies for all the participating cities. The score tables were then manually updated on Boosted’s website.
All the calculations were made on the backend. Tallying the points for joining the competition and riding was easy. The challenging part was how to properly calculate points for joining the group or demo rides. We had to match the coordinates recorded in the app from all user rides with events from the CSV list to get a match and prove that a user was at a specific place at a specific time.
It worked really well. The Summer Showdown was five weeks long, and each week there was one battle between two cities. Fortunately, the first battle was between Austin and Boston, cities with smaller user bases, giving us time to improve the algorithm as the competitor count increased. After the first two weeks, we had to drop the ability to generate full score tables on the spot, as the calculation time was taking too long. Instead, we set a timer to generate the score tables just a few times a day.
We had everything running smoothly for the big final battle in Week 5 between New York City and San Francisco. Hundreds were participating in each city. There were group rides along the Golden Gate and Brooklyn bridges. How could we miss that?! We hopped on a plane and went to New York City to hang out with the loyal Boosted community there as well as Boosted core company team. We also got to see our apps in action and get real-time feedback! We gathered some edge case bugs and a lot of ideas for the future. And on a personal note, riding through Times Square on a Boosted board was a definite highlight.
The Boosted guys gave the Summer Showdown two thumbs up. They called the campaign a huge success and said they want to roll out more in the future. We just need to make a few minor updates to the apps so they’ll be even more flexible. We loved the collaboration and the experience of building these types of marketing events into the apps we are working on.
You might also like...
How We Hire Engineers
The recruitment process at STRV is designed to identify the best, and to create value for every candidate. How? Our senior developers offer detailed feedback that has helped many candidates improve their skills. If you are considering apply...
STRV Academy – An Inside Look
Looking to master the latest frameworks, like React, Node.js or Swift? In just a few weeks, STRV Academy’s practical courses teach what would otherwise take months of self-study to learn.You will receive tailor-made lessons, code reviews, h...
MVI — another member of the MV* band
Every Android developer has heard about MVP and MVVM presentation patterns. Therefore, without even trying, we can easily explain the meaning of the “V,” “P” and “VM” in these acronyms. “V,” as in View, represents everything visible on the ...