It’s not every day that you get to crash-test motorbikes in working hours. But then again, it’s not every day that you get to work with a guy who has participated in a Dakar Rally, crossing the African desert with some of the best bikers on the planet.
But that is the story of our collaboration with Stephan Kaufmann and his incredible startup, RideLink. It’s a unique project that channels the special bonds of a motorcycle club and allows riders to track their journeys together.
We’ve actually been working with Stephan for the past six years, collaborating on a number of other projects. He’s a serial entrepreneur who has successfully developed startups in an array of fields, from email marketing to smartcars.
But his real passion is bikes. It’s driven him to compete in multiple editions of the Africa Eco Race, hurtling across hundreds of kilometers with nothing but his machine and a compass to guide him.
With RideLink, Stephan wants to help other riders share the unfiltered joy he gets from riding. His technology applies the principles of apps such as Strava to the biker community, and takes them a step further.
Stephan’s original brief envisioned a riding platform, with custom hardware mounted on a user’s bike tracking multiple analytics of their riding performance, and a companion app to help them monitor their rides.
You might be thinking there are plenty of other apps out there capable of exactly this. However, none contains the killer feature that Stephan wanted to include: group riding. Bikers love to ride in packs, and being able to enjoy a shared experience is a huge differentiating factor.
With RideLink, individual riders can track their journeys and share them live with the community, navigate in tandem and, crucially, know where the other riders are. If anything goes wrong, the rest of the group will be notified immediately, and can provide support. Stephan’s motto is ‘you’ll never ride alone’ and this philosophy is embedded in his technology.
After a detailed planning phase, featuring multiple workshops in Barcelona, we settled on a two-pronged project structure. The first phase would include multiple servers, an iOS app, custom hardware and multiple crash-testing sessions (yes, we set ourselves the task of crashing bikes to monitor the performance of our custom hardware in the most hazardous conditions).
The second phase would follow with an Android App, a public website, and new monitoring features for the hardware. Mobile Jazz would be the chief technology officer for the entire project. Throughout, one of our main concerns has been to keep development efficient, avoid duplication of code, unnecessary bug-fixing, and QA and simplify maintainability. And this is where Kotlin Multiplatform came in: we decided to build the iOS app with this technology, which allows us to write code that natively runs in both iOS and Android apps. This would save time later down the road, once we decided to build the Android app while starting the development of an iOS app without compromising the initial budget.
Software engineers tend to do most of their work indoors, surrounded by banks of computers; this project allowed us to test our tech in the open air, on two wheels, surrounded by nature. Several members of our team are keen bikers, and they’ve loved the opportunity to get out onto the road for the testing rounds. It’s like being paid to enjoy your hobby!
Ready To Go Public
After almost a year of hard work, RideLink is now published in the AppStore. The product has been validated by its stakeholders and we have recently started the second development phase, which includes an Android app.
The initial iOS app was estimated at 450 hours of development, and it should, in theory, take a similar amount of time to build the Android app. However, thanks to Kotlin Multiplatform, now we only need to build a native Android user interface, as everything else can be taken from a module shared with the iOS app. In total, we estimate that the Android app will take only 200 hours — less than half the time it took to build the iOS version.
With Kotlin Multiplatform, we won’t just gain speed. We’ll also gain reliability; the companion Android app, even without being completed, is already tested and verified. We’re not going to need a QA phase, or any last-minute bug-fixing. We’re not going to have any delays, or unpleasant surprises.
In fact, we know for certain that it will just work. The app is using the same core business logic as the iOS app and it’s already production-ready.
This is something that would have been inconceivable without Kotlin Multiplatform. No other technology can offer this level of performance, flexibility, and reusability.