Last time, we introduced the concept Cloud Native, and talked about how adopting that kind of thinking leads to fundamentally different application designs. For this post, we dive a little deeper into a recent customer case, and illustrate just how cloud native design can impact a real-world application.
Kontain, the self-storage app
The self-storage industry is largely dominated by giants such as Shurgard or Pelican Storage. These companies offer customers the opportunity to store personal belongings in a space dedicated to that purpose. The idea is simple, but when we met Alexander Nathanaelson from Kontain, he described to us how the underlying ways of thinking are significantly lagging when it comes to utilizing IT:
“The need for storage is increasing everywhere. It doesn’t make sense for people to just keep their things in a basement in the middle of Stockholm, where every square meter is expensive. Traditional self-storage solutions are also really inefficient - why should the customer need to come in on a specific time and day, pay for people managing the facilities for inflexible amounts of time, when we can provide a better service, automated in minutes?”
Alexander, with his background in IT, realized that what people need isn’t necessarily the nicest looking, heated facilities with personnel at the customer’s disposal. Instead, he viewed storage for what it actually is: just a place where people want to store their stuff. Utilizing regular containers, giving customers direct access by car, and leveraging IT solutions such as access codes via a mobile app and extremely short times from ordering to actual storage access, Kontain aims at disrupting the self-storage industry.
Solidify and Kontain
Alexander knew he needed experts in software development to bring his vision to life, and he contacted Solidify. Our role in the project was partially to provide guidance and knowledge regarding IT prioritizations, but also to develop the solution from scratch. Understanding the importance of the end user perspective and the value that modularity and cloud technologies can bring, we quickly realized that this project was a perfect chance for us to design a cloud native application from the ground up.
As Microsoft partners and strong cloud advocates, the decision to run the application in Azure felt natural. With Azure, we can guarantee reliability, scalability and a 24/7 uptime - key characteristics of any successful application. Looking at the factors described in the Twelve Factor App, we can pinpoint several examples of how cloud native thinking permeates the Kontain application.
Firstly, factor 5 specifies a strict separation of build, release and run stages. This is done via Azure DevOps, through strictly separate pipelines and with several approval gates to pass.
Secondly, factor 10 regards the Dev/Prod parity and describes the value of having the dev and prod environments as similar as possible. For the development of the Kontain app, we have utilized identical setups for dev, test, and production environments.
Furthermore, the Kontain app is completely modular, enabling Alexander and Kontain to focus on the core business. For example, identification is handled via BankID, agreements and contracts through Assently, payments using Adyen, and email deliveries via SendGrid. It simply doesn’t make sense for Kontain to spend any time or energy creating solutions for these modules, when other companies have already developed great solutions. This type of modular thinking has stuck with us during the entire development phase.
Mathias Olausson, CTO at Solidify, summarizes the collaboration:
“With Kontain, we have tried to emphasize the value of a dynamic and scalable app design in order to build a platform for automated self-storage services. We have built the system with a modular approach, leveraging other SaaS solutions and components - all to reach a faster time to market and to focus on the core functionality. Alexander and Kontain have been great to work with throughout this project, they really understand the importance of lean development starting with an MVP and then scaling up and out in features and usage. It’s been an ideal project for practicing what we preach in regard to cloud native development.”
Kontain recently opened their facility in Åkersberga, which is now available for customer storage. However, realizing the advantage of creating the Kontain platform and how far behind the industry is in regard to IT solutions, Alexander is aiming bigger. He envisions a platform suitable for any type of self storage, not just containers. By using the Kontain platform, anyone with a storage for rent will be able to smoothly operate their own self storage business.
So how does Alexander feel about Solidify and the service we have created together? Well, here is what he says:
“Solidify has contributed with everything technical, from the general understanding to implementing the automated solutions throughout the system flow.”, Alexander says. “I’m really impressed; even the least technical person I know is able to manage the facilities that the system handles. It shows how much expertise and doing it the right way from the start matters.”